|
@@ -170,6 +170,8 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
|
|
|
private TWarehousebillsfeesLoggerMapper tWarehousebillsfeesLoggerMapper;
|
|
|
@Autowired
|
|
|
private TVesselMapper tVesselMapper;
|
|
|
+ @Autowired
|
|
|
+ private TCntrnoMapper tCntrnoMapper;
|
|
|
private static final Logger log = LoggerFactory.getLogger(AddressUtils.class);
|
|
|
|
|
|
|
|
@@ -1836,14 +1838,23 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
|
|
|
|
|
|
@Override
|
|
|
@Transactional
|
|
|
- public AjaxResult importCreateCompanyMsgNew(MultipartFile file,LoginUser loginUser) throws Exception {
|
|
|
+ public AjaxResult importCreateCompanyMsgNew(MultipartFile file,LoginUser loginUser,Long fId) throws Exception {
|
|
|
+ //查询货物信息
|
|
|
+ TWarehousebillsCntr tWarehousebillsCntr = tWarehousebillsCntrMapper.selectTWarehousebillsCntrById(fId);
|
|
|
+ if (tWarehousebillsCntr == null){
|
|
|
+ return AjaxResult.success("error","未找到货物信息");
|
|
|
+ }
|
|
|
+ //查询集装箱信息
|
|
|
+ TCntr tCntr = tCntrMapper.selectTCntrById(tWarehousebillsCntr.getfCntrid());
|
|
|
List<TTemporaryFile> fleetCompanyMsgs = new ArrayList<>();
|
|
|
-
|
|
|
+ List<String> tCnTrNoList = new ArrayList<>();
|
|
|
+ List<String> List = new ArrayList<>();
|
|
|
InputStream inputStream = null;
|
|
|
Map<String,Object> map = new HashMap<>();
|
|
|
+ String originalFilename;//文件名
|
|
|
try {
|
|
|
inputStream = file.getInputStream();
|
|
|
- String originalFilename = file.getOriginalFilename();
|
|
|
+ originalFilename = file.getOriginalFilename();
|
|
|
Workbook workbook = null;
|
|
|
if (originalFilename.endsWith("xls")){
|
|
|
workbook = WorkbookFactory.create(inputStream);
|
|
@@ -1878,6 +1889,13 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
|
|
|
return AjaxResult.success("Excel箱信息数据第" + line + "行数据缺少箱号",500);*/
|
|
|
break;
|
|
|
}
|
|
|
+ //判断箱号是否存在
|
|
|
+ TCntrno tCntrno = new TCntrno();
|
|
|
+ tCntrno.setfNo(cell.getStringCellValue());
|
|
|
+ List<TCntrno> cnTrNoList= tCntrnoMapper.selectTCntrnoList(tCntrno);
|
|
|
+ if (CollectionUtils.isEmpty(cnTrNoList)){
|
|
|
+ tCnTrNoList.add(cell.getStringCellValue());
|
|
|
+ }
|
|
|
companyMsg.setfCntrno(cell.getStringCellValue());
|
|
|
break;
|
|
|
case "铅封号":
|
|
@@ -1936,7 +1954,12 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
|
|
|
return AjaxResult.success("Excel箱信息数据第" + line + "行数据缺少箱型",500);*/
|
|
|
break;
|
|
|
}
|
|
|
- companyMsg.setCntrName(cell.getStringCellValue());
|
|
|
+ if (tCntr.getfNo().equals(cell.getStringCellValue())){
|
|
|
+ companyMsg.setCntrName(cell.getStringCellValue());
|
|
|
+ }else {
|
|
|
+ List.add(cell.getStringCellValue());
|
|
|
+ break;
|
|
|
+ }
|
|
|
/*Long fId = tCntrMapper.selectRcntrFId(companyMsg.getCntrName());
|
|
|
if (fId != null) {
|
|
|
companyMsg.setfCntrid(fId);
|
|
@@ -1949,13 +1972,29 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
|
|
|
}
|
|
|
fleetCompanyMsgs.add(companyMsg);
|
|
|
}
|
|
|
- map.put("total",fleetCompanyMsgs.size());
|
|
|
- map.put("fileName",originalFilename);
|
|
|
} catch (IOException e) {
|
|
|
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
|
|
|
return AjaxResult.error("上传文件失败,请检查文件是否损坏");
|
|
|
}
|
|
|
- return AjaxResult.success("success", map);
|
|
|
+ if (CollectionUtils.isNotEmpty(tCnTrNoList) || CollectionUtils.isNotEmpty(List)){
|
|
|
+ tTemporaryFileMapper.deleteTTemporaryFilefileName(originalFilename,loginUser.getUser().getUserName());
|
|
|
+ String message = "";
|
|
|
+ if (CollectionUtils.isNotEmpty(tCnTrNoList)){
|
|
|
+ StringBuffer stringBuffer = new StringBuffer("箱号不存在的有:");
|
|
|
+ stringBuffer.append(org.apache.commons.lang.StringUtils.join(tCnTrNoList.toArray(), ","));
|
|
|
+ message = message + stringBuffer.toString();
|
|
|
+ }
|
|
|
+ if (CollectionUtils.isNotEmpty(List)){
|
|
|
+ StringBuffer stringBuffer = new StringBuffer("箱型应为:"+tCntr.getfNo()+",不一致的有");
|
|
|
+ stringBuffer.append(org.apache.commons.lang.StringUtils.join(List.toArray(), ","));
|
|
|
+ message = message +","+ stringBuffer.toString();
|
|
|
+ }
|
|
|
+ return AjaxResult.success("error",message);
|
|
|
+ }else {
|
|
|
+ map.put("total",fleetCompanyMsgs.size());
|
|
|
+ map.put("fileName",originalFilename);
|
|
|
+ return AjaxResult.success("success", map);
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
/**
|