Browse Source

1.超期箱使费标准增加复制接口
2.pod场站修改,空箱返场接口增加查询条件
3.销项发票确认开票同步申请发票数据
4.海运进出口列表查询条件修改

纪新园 5 months ago
parent
commit
3736bb8933

+ 10 - 1
blade-service/blade-los/src/main/java/org/springblade/los/basic/storage/controller/StorageFeesController.java

@@ -135,5 +135,14 @@ public class StorageFeesController extends BladeController {
 		return R.status(storageFeesService.removeByIds(Func.toLongList(ids)));
 	}
 
-
+	/**
+	 * 复制
+	 */
+	@GetMapping("/copy")
+	@ApiOperationSupport(order = 1)
+	@ApiOperation(value = "详情", notes = "传入storageFees")
+	public R<StorageFees> copy(StorageFees storageFees) {
+		StorageFees detail = storageFeesService.copy(storageFees);
+		return R.data(detail);
+	}
 }

+ 2 - 0
blade-service/blade-los/src/main/java/org/springblade/los/basic/storage/service/IStorageFeesService.java

@@ -42,4 +42,6 @@ public interface IStorageFeesService extends IService<StorageFees> {
     R submit(StorageFees storageFees);
 
 	StorageFees detail(StorageFees storageFees);
+
+	StorageFees copy(StorageFees storageFees);
 }

+ 32 - 0
blade-service/blade-los/src/main/java/org/springblade/los/basic/storage/service/impl/StorageFeesServiceImpl.java

@@ -133,4 +133,36 @@ public class StorageFeesServiceImpl extends ServiceImpl<StorageFeesMapper, Stora
 		return detail;
 	}
 
+	@Override
+	public StorageFees copy(StorageFees storageFees) {
+		if (storageFees.getId() == null) {
+			throw new RuntimeException("缺少必要参数");
+		}
+		StorageFees detail = baseMapper.selectById(storageFees.getId());
+		detail.setId(null);
+		detail.setCreateUserName(null);
+		detail.setCreateUser(null);
+		detail.setCreateTime(null);
+		detail.setUpdateTime(null);
+		detail.setUpdateUserName(null);
+		detail.setUpdateUser(null);
+		List<StorageFeesItems> storageFeesItemsList = storageFeesItemsService.list(new LambdaQueryWrapper<StorageFeesItems>()
+			.eq(StorageFeesItems::getIsDeleted, 0)
+			.eq(StorageFeesItems::getTenantId, AuthUtil.getTenantId())
+			.eq(StorageFeesItems::getPid, storageFees.getId())
+		);
+		for (StorageFeesItems item : storageFeesItemsList){
+			item.setId(null);
+			item.setPid(null);
+			item.setCreateUserName(null);
+			item.setCreateUser(null);
+			item.setCreateTime(null);
+			item.setUpdateTime(null);
+			item.setUpdateUserName(null);
+			item.setUpdateUser(null);
+		}
+		detail.setStorageFeesItemsList(storageFeesItemsList);
+		return detail;
+	}
+
 }

+ 67 - 79
blade-service/blade-los/src/main/java/org/springblade/los/box/service/impl/PutBoxServiceImpl.java

@@ -1090,21 +1090,21 @@ public class PutBoxServiceImpl extends ServiceImpl<PutBoxMapper, PutBox> impleme
 					&& ObjectUtils.isNotNull(e.getPolStationId()) && e.getPolStationId().equals(corps.getId()) &&
 					putBoxData.getBusType().equals(e.getBusType())).findFirst().orElse(null);
 				if (putBox1 != null) {*/
-					if (!containersList.isEmpty()) {
-						List<Containers> containerItemList = containersList.stream().filter(e -> item.getMblno().equals(e.getHblno())
-							&& item.getBoxCode().equals(e.getCntrNo())).collect(Collectors.toList());
-						for (Containers containers : containerItemList) {
-							containers.setPodStationId(corps.getId());
-							containers.setPodStationCode(corps.getCode());
-							containers.setPodStationCname(corps.getCnName());
-							containers.setPodStationEname(corps.getEnName());
-							containers.setPodEmptyContainerReturnDate(item.getBoxStatusDate());
-							containers.setContainerNumber(item.getContainerNumber());
-							containersListNew.add(containers);
-						}
-					} else {
-						throw new RuntimeException("未查到对应提单号:" + item.getMblno() + "配箱单据");
+				if (!containersList.isEmpty()) {
+					List<Containers> containerItemList = containersList.stream().filter(e -> item.getMblno().equals(e.getHblno())
+						&& item.getBoxCode().equals(e.getCntrNo())).collect(Collectors.toList());
+					for (Containers containers : containerItemList) {
+						containers.setPodStationId(corps.getId());
+						containers.setPodStationCode(corps.getCode());
+						containers.setPodStationCname(corps.getCnName());
+						containers.setPodStationEname(corps.getEnName());
+						containers.setPodEmptyContainerReturnDate(item.getBoxStatusDate());
+						containers.setContainerNumber(item.getContainerNumber());
+						containersListNew.add(containers);
 					}
+				} else {
+					throw new RuntimeException("未查到对应提单号:" + item.getMblno() + "配箱单据");
+				}
 //				}
 			}
 		}
@@ -1158,7 +1158,7 @@ public class PutBoxServiceImpl extends ServiceImpl<PutBoxMapper, PutBox> impleme
 								e.getContainerNumber().equals(item.getContainerNumber()) && boxList.contains(e.getCntrNo())).count();
 							item.setOccupyNum(item.getOccupyNum() - Integer.parseInt(size + ""));
 							if (item.getOccupyNum() < 0) {
-								throw new RemoteException("放箱号:" + item.getContainerNumber() + "剩余操作占用小于本次导入箱数");
+								throw new RemoteException("放箱号:" + item.getContainerNumber() + "箱号未被操作占用");
 							}
 						}
 					}
@@ -1218,46 +1218,31 @@ public class PutBoxServiceImpl extends ServiceImpl<PutBoxMapper, PutBox> impleme
 		}
 		if (!putBoxItems.isEmpty()) {
 			putBoxItemsService.saveOrUpdateBatch(putBoxItems);
-		}
-		if (!containersListNew.isEmpty()) {
-			containersService.saveOrUpdateBatch(containersListNew);
-		}
-		if (!archivesArrayList.isEmpty()) {
-			archivesService.saveOrUpdateBatch(archivesArrayList);
-		}
-		if (!tradingBoxItems.isEmpty()) {
-			tradingBoxItemService.saveOrUpdateBatch(tradingBoxItems);
-			for (TradingBoxItem item : tradingBoxItems) {
-				TradingBox tradingBox = tradingBoxList.stream().filter(e -> e.getId().equals(item.getPid())).findFirst().orElse(null);
+			for (PutBoxItems item : putBoxItems) {
+				PutBox tradingBox = putBoxes.stream().filter(e -> e.getId().equals(item.getPid())).findFirst().orElse(null);
 				if (tradingBox != null) {
 					//记录箱轨迹信息
 					ArchivesTrajectory archivesTrajectory = new ArchivesTrajectory();
-					archivesTrajectory.setPortId(tradingBox.getAddressId());
-					archivesTrajectory.setPortCode(tradingBox.getAddressCode());
-					archivesTrajectory.setPortCname(tradingBox.getAddressCname());
-					archivesTrajectory.setPortEname(tradingBox.getAddressEname());
-					archivesTrajectory.setStationId(tradingBox.getAddressId());
-					archivesTrajectory.setStationCode(tradingBox.getAddressCode());
-					archivesTrajectory.setStationCname(tradingBox.getAddressCname());
-					archivesTrajectory.setStationEname(tradingBox.getAddressEname());
+					archivesTrajectory.setPortId(tradingBox.getPolId());
+					archivesTrajectory.setPortCode(tradingBox.getPolCode());
+					archivesTrajectory.setPortCname(tradingBox.getPodCname());
+					archivesTrajectory.setPortEname(tradingBox.getPodEname());
+					archivesTrajectory.setStationId(tradingBox.getPolStationId());
+					archivesTrajectory.setStationCode(tradingBox.getPolStationCode());
+					archivesTrajectory.setStationCname(tradingBox.getPolStationCname());
+					archivesTrajectory.setStationEname(tradingBox.getPolStationEname());
 					archivesTrajectory.setContainerNumber(item.getContainerNumber());
 					archivesTrajectory.setBoxType(item.getBoxType());
-					archivesTrajectory.setBoxCategory(item.getBoxCategory());
+					archivesTrajectory.setBoxCategory(item.getBoxClass());
 					archivesTrajectory.setBoxEastId(item.getBoxEastId());
 					archivesTrajectory.setBoxEastName(item.getBoxEastName());
 					archivesTrajectory.setMblno(item.getMblno());
 					archivesTrajectory.setBoxDynamics("空箱出场");
-					if ("OW-N".equals(tradingBox.getType())) {
-						archivesTrajectory.setStatus("OW-拿");
-					} else if ("OW-F".equals(tradingBox.getType())) {
-						archivesTrajectory.setStatus("OW-放");
-					}
-					archivesTrajectory.setCorpId(tradingBox.getPurchaseCompanyId());
-					archivesTrajectory.setCorpName(tradingBox.getPurchaseCompanyName());
-					archivesTrajectory.setContractNo(tradingBox.getContractNo());
-					archivesTrajectory.setBillType(tradingBox.getType());
-					archivesTrajectory.setCode(item.getCode());
-					archivesTrajectory.setPortCname(tradingBox.getAddressCname());
+					archivesTrajectory.setStatus(tradingBox.getBusType());
+					archivesTrajectory.setCorpId(item.getBoxEastId());
+					archivesTrajectory.setCorpName(item.getBoxEastName());
+					archivesTrajectory.setBillType(tradingBox.getBoxType());
+					archivesTrajectory.setCode(item.getBoxCode());
 					archivesTrajectory.setNewDate(new Date());
 					archivesTrajectory.setCreateTime(new Date());
 					archivesTrajectory.setCreateUser(AuthUtil.getUserId());
@@ -1268,6 +1253,15 @@ public class PutBoxServiceImpl extends ServiceImpl<PutBoxMapper, PutBox> impleme
 				}
 			}
 		}
+		if (!containersListNew.isEmpty()) {
+			containersService.saveOrUpdateBatch(containersListNew);
+		}
+		if (!archivesArrayList.isEmpty()) {
+			archivesService.saveOrUpdateBatch(archivesArrayList);
+		}
+		if (!tradingBoxItems.isEmpty()) {
+			tradingBoxItemService.saveOrUpdateBatch(tradingBoxItems);
+		}
 		this.countOverdueFee(putBoxList, tradingBoxList, tradingBoxItems, containersListNew, putBoxItems);
 		List<String> fileName = excelList.stream().map(EmptyContainerAppearanceAnalysis::getSrcFile).distinct()
 			.filter(Objects::nonNull).collect(Collectors.toList());
@@ -1648,7 +1642,7 @@ public class PutBoxServiceImpl extends ServiceImpl<PutBoxMapper, PutBox> impleme
 		List<FeeCenter> feeCenterList = new ArrayList<>();
 		List<PutBoxItems> putBoxItemsList = new ArrayList<>();
 		List<TradingBoxItem> tradingBoxItemList = new ArrayList<>();
-		List<String> mblnoList = putBoxItems.stream().map(PutBoxItems::getMblno).collect(Collectors.toList());
+		List<String> mblnoList = putBoxItems.stream().map(PutBoxItems::getHblno).collect(Collectors.toList());
 		if (!mblnoList.isEmpty()) {
 			//海运进出口单据
 			List<Bills> billsList = billsMapper.selectList(new LambdaQueryWrapper<Bills>()
@@ -1706,7 +1700,7 @@ public class PutBoxServiceImpl extends ServiceImpl<PutBoxMapper, PutBox> impleme
 					throw new RuntimeException("箱号未在配箱信息中查到");
 				}
 				//查找OW明细提单号对应海运进出口单据
-				Bills bills = billsList.stream().filter(e -> e.getHblno().equals(item.getMblno()) && e.getId().equals(containers.getPid()))
+				Bills bills = billsList.stream().filter(e -> e.getHblno().equals(item.getHblno()) && e.getId().equals(containers.getPid()))
 					.findFirst().orElse(null);
 				if (bills == null) {
 					throw new RuntimeException("未查到提单号:" + item.getMblno() + "海运进出口单据");
@@ -1738,7 +1732,7 @@ public class PutBoxServiceImpl extends ServiceImpl<PutBoxMapper, PutBox> impleme
 						days > bills.getPolFreeBoxUseDays()) {
 						overdueDays = (int) (days - bills.getPolFreeBoxUseDays());
 					}
-					if (overdueDays != 0) {
+					if (overdueDays > 0) {
 						FeeCenter feeCenter = this.addFeeCenter(item, bills, fees, storageFeesItems, curExrateList, overdueDays, exrateType);
 						if (feeCenter != null) {
 							feeCenterList.add(feeCenter);
@@ -2974,43 +2968,31 @@ public class PutBoxServiceImpl extends ServiceImpl<PutBoxMapper, PutBox> impleme
 		}
 		if (!putBoxItems.isEmpty()) {
 			putBoxItemsService.saveOrUpdateBatch(putBoxItems);
-		}
-		if (!archivesArrayList.isEmpty()) {
-			archivesService.saveOrUpdateBatch(archivesArrayList);
-		}
-		if (!tradingBoxItems.isEmpty()) {
-			tradingBoxItemService.saveOrUpdateBatch(tradingBoxItems);
-			for (TradingBoxItem item : tradingBoxItems) {
-				TradingBox tradingBox = tradingBoxList.stream().filter(e -> e.getId().equals(item.getPid())).findFirst().orElse(null);
+			for (PutBoxItems item : putBoxItems) {
+				PutBox tradingBox = putBoxes.stream().filter(e -> e.getId().equals(item.getPid())).findFirst().orElse(null);
 				if (tradingBox != null) {
 					//记录箱轨迹信息
 					ArchivesTrajectory archivesTrajectory = new ArchivesTrajectory();
-					archivesTrajectory.setPortId(tradingBox.getAddressId());
-					archivesTrajectory.setPortCode(tradingBox.getAddressCode());
-					archivesTrajectory.setPortCname(tradingBox.getAddressCname());
-					archivesTrajectory.setPortEname(tradingBox.getAddressEname());
-					archivesTrajectory.setStationId(tradingBox.getAddressId());
-					archivesTrajectory.setStationCode(tradingBox.getAddressCode());
-					archivesTrajectory.setStationCname(tradingBox.getAddressCname());
-					archivesTrajectory.setStationEname(tradingBox.getAddressEname());
+					archivesTrajectory.setPortId(tradingBox.getPolId());
+					archivesTrajectory.setPortCode(tradingBox.getPolCode());
+					archivesTrajectory.setPortCname(tradingBox.getPodCname());
+					archivesTrajectory.setPortEname(tradingBox.getPodEname());
+					archivesTrajectory.setStationId(tradingBox.getPolStationId());
+					archivesTrajectory.setStationCode(tradingBox.getPolStationCode());
+					archivesTrajectory.setStationCname(tradingBox.getPolStationCname());
+					archivesTrajectory.setStationEname(tradingBox.getPolStationEname());
 					archivesTrajectory.setContainerNumber(item.getContainerNumber());
 					archivesTrajectory.setBoxType(item.getBoxType());
-					archivesTrajectory.setBoxCategory(item.getBoxCategory());
+					archivesTrajectory.setBoxCategory(item.getBoxClass());
 					archivesTrajectory.setBoxEastId(item.getBoxEastId());
 					archivesTrajectory.setBoxEastName(item.getBoxEastName());
 					archivesTrajectory.setMblno(item.getMblno());
-					archivesTrajectory.setBoxDynamics("空箱提箱进场");
-					if ("OW-N".equals(tradingBox.getType())) {
-						archivesTrajectory.setStatus("OW-拿");
-					} else if ("OW-F".equals(tradingBox.getType())) {
-						archivesTrajectory.setStatus("OW-放");
-					}
-					archivesTrajectory.setCorpId(tradingBox.getPurchaseCompanyId());
-					archivesTrajectory.setCorpName(tradingBox.getPurchaseCompanyName());
-					archivesTrajectory.setContractNo(tradingBox.getContractNo());
-					archivesTrajectory.setBillType(tradingBox.getType());
-					archivesTrajectory.setCode(item.getCode());
-					archivesTrajectory.setPortCname(tradingBox.getAddressCname());
+					archivesTrajectory.setBoxDynamics("空箱出场");
+					archivesTrajectory.setStatus(tradingBox.getBusType());
+					archivesTrajectory.setCorpId(item.getBoxEastId());
+					archivesTrajectory.setCorpName(item.getBoxEastName());
+					archivesTrajectory.setBillType(tradingBox.getBoxType());
+					archivesTrajectory.setCode(item.getBoxCode());
 					archivesTrajectory.setNewDate(new Date());
 					archivesTrajectory.setCreateTime(new Date());
 					archivesTrajectory.setCreateUser(AuthUtil.getUserId());
@@ -3021,6 +3003,12 @@ public class PutBoxServiceImpl extends ServiceImpl<PutBoxMapper, PutBox> impleme
 				}
 			}
 		}
+		if (!archivesArrayList.isEmpty()) {
+			archivesService.saveOrUpdateBatch(archivesArrayList);
+		}
+		if (!tradingBoxItems.isEmpty()) {
+			tradingBoxItemService.saveOrUpdateBatch(tradingBoxItems);
+		}
 		List<String> fileName = excelList.stream().map(EmptyContainerAppearanceAnalysis::getSrcFile).distinct()
 			.filter(Objects::nonNull).collect(Collectors.toList());
 		if (!fileName.isEmpty()) {
@@ -5270,7 +5258,7 @@ public class PutBoxServiceImpl extends ServiceImpl<PutBoxMapper, PutBox> impleme
 					days > billsHYJK.getPodFreeBoxUseDays()) {
 					overdueDays = (int) (days - billsHYJK.getPodFreeBoxUseDays());
 				}
-				if (overdueDays != 0) {
+				if (overdueDays > 0) {
 					FeeCenter feeCenter = this.addFeeCenter(item, billsHYJK, fees, storageFeesItems, curExrateList, overdueDays, exrateType);
 					if (feeCenter != null) {
 						feeCenterList.add(feeCenter);

+ 20 - 2
blade-service/blade-los/src/main/java/org/springblade/los/business/sea/controller/BillsController.java

@@ -145,6 +145,12 @@ public class BillsController extends BladeController {
 				} else {
 					lambdaQueryWrapper.eq(Bills::getCreateUser, AuthUtil.getUserId());
 				}*/
+			}else{
+				lambdaQueryWrapper.eq(ObjectUtils.isNotNull(bills.getSrcType()), Bills::getSrcType, bills.getSrcType())
+					.and(ObjectUtils.isNotNull(bills.getSrcCnName()), i -> i.like(Bills::getSrcCnName, bills.getSrcCnName()).or()
+						.like(Bills::getSrcEnName, bills.getSrcCnName()));
+				lambdaQueryWrapper.eq(ObjectUtils.isNotNull(bills.getBranchId()), Bills::getBranchId, bills.getBranchId());
+				lambdaQueryWrapper.eq(ObjectUtils.isNotNull(bills.getOperatorId()), Bills::getOperatorId, bills.getOperatorId());
 			}
 		} else {
 			lambdaQueryWrapper.eq(ObjectUtils.isNotNull(bills.getSrcType()), Bills::getSrcType, bills.getSrcType())
@@ -289,11 +295,17 @@ public class BillsController extends BladeController {
 			.like(ObjectUtils.isNotNull(bills.getHblno()), Bills::getHblno, bills.getHblno());
 		if (!AuthUtil.getUserRole().contains("总部") && !AuthUtil.getUserRole().contains("admin")) {
 			lambdaQueryWrapper.eq(Bills::getBranchId, AuthUtil.getDeptId());
-			if (!AuthUtil.getUserRole().contains("secondaryAdmin") && !AuthUtil.getUserRole().contains("财务")) {
+			if (!AuthUtil.getUserRole().contains("secondaryAdmin") && !AuthUtil.getUserRole().contains("财务") && !AuthUtil.getUserRole().contains("操作经理")) {
 				lambdaQueryWrapper.and(i -> i.eq(AuthUtil.getUserRole().contains("业务员"), Bills::getSrcId, AuthUtil.getUserId()).or()
 					.eq(AuthUtil.getUserRole().contains("操作员"), Bills::getOperatorId, AuthUtil.getUserId()).or()
 					.eq(AuthUtil.getUserRole().contains("客服"), Bills::getCustomerServiceId, AuthUtil.getUserId()).or()
 					.eq(Bills::getCreateUser, AuthUtil.getUserId()));
+			}else{
+				lambdaQueryWrapper.eq(ObjectUtils.isNotNull(bills.getSrcType()), Bills::getSrcType, bills.getSrcType())
+					.and(ObjectUtils.isNotNull(bills.getSrcCnName()), i -> i.like(Bills::getSrcCnName, bills.getSrcCnName()).or()
+						.like(Bills::getSrcEnName, bills.getSrcCnName()));
+				lambdaQueryWrapper.eq(ObjectUtils.isNotNull(bills.getBranchId()), Bills::getBranchId, bills.getBranchId());
+				lambdaQueryWrapper.eq(ObjectUtils.isNotNull(bills.getOperatorId()), Bills::getOperatorId, bills.getOperatorId());
 			}
 		} else {
 			lambdaQueryWrapper.eq(ObjectUtils.isNotNull(bills.getSrcType()), Bills::getSrcType, bills.getSrcType())
@@ -643,7 +655,7 @@ public class BillsController extends BladeController {
 		}
 		if (!AuthUtil.getUserRole().contains("总部") && !AuthUtil.getUserRole().contains("admin")) {
 			lambdaQueryWrapper.eq(Bills::getBranchId, AuthUtil.getDeptId());
-			if (!AuthUtil.getUserRole().contains("secondaryAdmin") && !AuthUtil.getUserRole().contains("财务")) {
+			if (!AuthUtil.getUserRole().contains("secondaryAdmin") && !AuthUtil.getUserRole().contains("财务") && !AuthUtil.getUserRole().contains("操作经理")) {
 				lambdaQueryWrapper.and(i -> i.eq(AuthUtil.getUserRole().contains("业务员"), Bills::getSrcId, AuthUtil.getUserId()).or()
 					.eq(AuthUtil.getUserRole().contains("操作员"), Bills::getOperatorId, AuthUtil.getUserId()).or()
 					.eq(AuthUtil.getUserRole().contains("客服"), Bills::getCustomerServiceId, AuthUtil.getUserId()).or()
@@ -657,6 +669,12 @@ public class BillsController extends BladeController {
 				} else {
 					lambdaQueryWrapper.eq(Bills::getCreateUser, AuthUtil.getUserId());
 				}*/
+			}else{
+				lambdaQueryWrapper.eq(ObjectUtils.isNotNull(bills.getSrcType()), Bills::getSrcType, bills.getSrcType())
+					.and(ObjectUtils.isNotNull(bills.getSrcCnName()), i -> i.like(Bills::getSrcCnName, bills.getSrcCnName()).or()
+						.like(Bills::getSrcEnName, bills.getSrcCnName()));
+				lambdaQueryWrapper.eq(ObjectUtils.isNotNull(bills.getBranchId()), Bills::getBranchId, bills.getBranchId());
+				lambdaQueryWrapper.eq(ObjectUtils.isNotNull(bills.getOperatorId()), Bills::getOperatorId, bills.getOperatorId());
 			}
 		} else {
 			lambdaQueryWrapper.eq(ObjectUtils.isNotNull(bills.getSrcType()), Bills::getSrcType, bills.getSrcType())

+ 12 - 2
blade-service/blade-los/src/main/java/org/springblade/los/business/sea/mapper/ContainersMapper.xml

@@ -87,7 +87,7 @@
         se.pol_cn_name as polName,
         se.pod_cn_name as podName,
         sc.container_number as containerNumber,
-        cn.box_belongs_to as boxBelongsTo,
+        se.box_belongs_to as boxBelongsTo,
         cn.bus_type as busType,
         sc.cntr_no as cntrNo,
         sc.seal_no as sealNo,
@@ -121,6 +121,9 @@
         <if test="data.sealNo != null and data.sealNo != ''">
             and sc.seal_no = #{data.sealNo}
         </if>
+        <if test="data.boxBelongsTo != null and data.boxBelongsTo != ''">
+            and se.box_belongs_to = #{data.boxBelongsTo}
+        </if>
         <if test="data.podStationCname != null and data.podStationCname != ''">
             and se.pod_station_cname like concat('%', #{data.podStationCname}, '%')
         </if>
@@ -171,6 +174,8 @@
             and sc.pod_station_id is not null  and sc.pod_station_id > 0
         </if>
         GROUP BY sc.id
+        ORDER BY se.mblno DESC ,
+        se.hblno ASC
     </select>
     <select id="updatePodStationList" resultType="org.springblade.los.excel.UpdatePodStationExcel">
         SELECT
@@ -183,7 +188,7 @@
         se.pol_cn_name as polName,
         se.pod_cn_name as podName,
         sc.container_number as containerNumber,
-        cn.box_belongs_to as boxBelongsTo,
+        se.box_belongs_to as boxBelongsTo,
         cn.bus_type as busType,
         sc.cntr_no as cntrNo,
         sc.seal_no as sealNo,
@@ -217,6 +222,9 @@
         <if test="data.sealNo != null and data.sealNo != ''">
             and sc.seal_no = #{data.sealNo}
         </if>
+        <if test="data.boxBelongsTo != null and data.boxBelongsTo != ''">
+            and se.box_belongs_to = #{data.boxBelongsTo}
+        </if>
         <if test="data.podStationCname != null and data.podStationCname != ''">
             and se.pod_station_cname like concat('%', #{data.podStationCname}, '%')
         </if>
@@ -267,6 +275,8 @@
             and sc.pod_station_id is not null  and sc.pod_station_id > 0
         </if>
         GROUP BY sc.id
+        ORDER BY se.mblno DESC ,
+                 se.hblno ASC
     </select>
 
 

+ 22 - 10
blade-service/blade-los/src/main/java/org/springblade/los/finance/invoices/service/impl/FinInvoicesServiceImpl.java

@@ -416,6 +416,11 @@ public class FinInvoicesServiceImpl extends ServiceImpl<FinInvoicesMapper, FinIn
 				for (FinInvoicesItems item : finInvoicesItemsList) {
 					item.setGenerateInvoices("1");
 				}
+				List<FilesCenter> filesCenters = new ArrayList<>();
+				List<FilesCenter> filesCenterList = filesCenterService.list(new LambdaQueryWrapper<FilesCenter>()
+					.eq(FilesCenter::getTenantId, AuthUtil.getTenantId())
+					.eq(FilesCenter::getIsDeleted, 0)
+					.eq(FilesCenter::getPid, detail.getId()));
 				if (!finInvoicesItemsList.isEmpty()) {
 					List<Long> pidList = finInvoicesItemsList.stream().map(FinInvoicesItems::getPid).distinct().collect(Collectors.toList());
 					List<FinInvoices> finInvoicesList = baseMapper.selectList(new LambdaQueryWrapper<FinInvoices>()
@@ -424,19 +429,26 @@ public class FinInvoicesServiceImpl extends ServiceImpl<FinInvoicesMapper, FinIn
 						.in(FinInvoices::getId, pidList));
 					for (FinInvoices item : finInvoicesList) {
 						item.setBillStatus("1");
+						item.setTaxInvoiceNo(detail.getTaxInvoiceNo());
 						baseMapper.updateById(item);
+						if (!filesCenterList.isEmpty()) {
+							for (FilesCenter filesCenter : filesCenterList) {
+								filesCenter.setId(null);
+								filesCenter.setPid(item.getId());
+								filesCenter.setCreateTime(new Date());
+								filesCenter.setCreateUserName(AuthUtil.getUserName());
+								filesCenter.setCreateUser(AuthUtil.getUserId());
+								filesCenter.setUpdateTime(new Date());
+								filesCenter.setUpdateUserName(AuthUtil.getUserName());
+								filesCenter.setUpdateUser(AuthUtil.getUserId());
+								filesCenters.add(filesCenter);
+							}
+						}
 					}
 					finInvoicesItemsService.saveOrUpdateBatch(finInvoicesItemsList);
-					/*FinInvoices finInvoices1 = baseMapper.selectById(finInvoicesItemsList.get(0).getPid());
-					List<FinInvoicesItems> finInvoicesItemsList1 = finInvoicesItemsService.list(new LambdaQueryWrapper<FinInvoicesItems>()
-						.eq(FinInvoicesItems::getTenantId, AuthUtil.getTenantId())
-						.eq(FinInvoicesItems::getIsDeleted, 0)
-						.eq(FinInvoicesItems::getGenerateInvoices, "0")
-						.eq(FinInvoicesItems::getPid, finInvoices1.getId()));
-					if (finInvoicesItemsList.size() == finInvoicesItemsList1.size()) {
-						finInvoices1.setBillStatus("1");
-						baseMapper.updateById(finInvoices1);
-					}*/
+					if (!filesCenters.isEmpty()){
+						filesCenterService.saveBatch(filesCenters);
+					}
 				}
 			}
 			feeCenterService.saveOrUpdateBatch(feeCenterList);

+ 6 - 0
blade-service/blade-los/src/main/java/org/springblade/los/finance/stl/service/impl/FinStlBillsServiceImpl.java

@@ -219,6 +219,12 @@ public class FinStlBillsServiceImpl extends ServiceImpl<FinStlBillsMapper, FinSt
 		}
 		this.saveOrUpdate(finStlBills);
 		if (ObjectUtils.isNotNull(finStlBills.getFinStlBillsItemsList())) {
+			finStlBills.setBusinessNo(finStlBills.getFinStlBillsItemsList().stream().map(FinStlBillsItems::getBillNo).distinct().collect(Collectors.joining(",")));
+			finStlBills.setAccountNo(finStlBills.getFinStlBillsItemsList().stream().map(FinStlBillsItems::getAccBillNo).distinct().collect(Collectors.joining(",")));
+			finStlBills.setMblno(finStlBills.getFinStlBillsItemsList().stream().map(FinStlBillsItems::getMblno).distinct().collect(Collectors.joining(",")));
+			finStlBills.setHblno(finStlBills.getFinStlBillsItemsList().stream().map(FinStlBillsItems::getHblno).distinct().collect(Collectors.joining(",")));
+			finStlBills.setInvoiceNo(finStlBills.getFinStlBillsItemsList().stream().map(FinStlBillsItems::getInvoiceNo).distinct().collect(Collectors.joining(",")));
+
 		/*	List<String> branchIdList = finStlBills.getFinStlBillsItemsList().stream().map(FinStlBillsItems::getBranchId)
 				.distinct().collect(Collectors.toList());
 			if (branchIdList.size() > 1) {