纪新园 3 лет назад
Родитель
Сommit
71b2838ff4

+ 6 - 0
blade-service-api/blade-box-tube-api/src/main/java/org/springblade/box/tube/entity/Repair.java

@@ -212,5 +212,11 @@ public class Repair implements Serializable {
 	@ApiModelProperty(value = "箱数")
 	private int boxNumber;
 
+	/**
+	 * TEU
+	 */
+	@ApiModelProperty(value = "TEU")
+	private String boxTypeNumber;
+
 
 }

+ 6 - 0
blade-service-api/blade-box-tube-api/src/main/java/org/springblade/box/tube/entity/TradingBox.java

@@ -206,6 +206,12 @@ public class TradingBox implements Serializable {
 	private int boxNumber;
 
 	/**
+	 * TEU
+	 */
+	@ApiModelProperty(value = "TEU")
+	private String boxTypeNumber;
+
+	/**
 	 * 起租,退租
 	 */
 	@TableField(exist = false)

+ 6 - 0
blade-service-api/blade-box-tube-api/src/main/java/org/springblade/box/tube/entity/Transport.java

@@ -288,4 +288,10 @@ public class Transport implements Serializable {
 	@ApiModelProperty(value = "箱数")
 	private int boxNumber;
 
+	/**
+	 * TEU
+	 */
+	@ApiModelProperty(value = "TEU")
+	private String boxTypeNumber;
+
 }

+ 10 - 3
blade-service/blade-box-tube/src/main/java/org/springblade/box/tube/service/impl/RepairServiceImpl.java

@@ -192,7 +192,6 @@ public class RepairServiceImpl extends ServiceImpl<RepairMapper, Repair> impleme
 
 		//明细
 		List<RepairItem> repairItemList = repair.getRepairItemList();
-		int boxNumber = 0;
 		if (ObjectUtils.isNotNull(repairItemList) && repairItemList.size() > 0) {
 			//箱号拼接字符串
 			List<String> codes = repairItemList.stream().map(RepairItem::getCode).distinct().collect(Collectors.toList());
@@ -200,8 +199,16 @@ public class RepairServiceImpl extends ServiceImpl<RepairMapper, Repair> impleme
 			if (ObjectUtils.isNotNull(repair.getTotalAmount())) {
 				repair.setTotalAmount(repairItemList.stream().map(RepairItem::getAmount).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add));
 			}
+			StringBuilder boxTypeNumber = new StringBuilder();
+			List<String> boxType = repairItemList.stream().map(RepairItem::getBoxType).distinct().collect(Collectors.toList());
+			for (String boxType_ : boxType) {
+				List<RepairItem> boxTypeSize = repairItemList.stream().filter(e -> e.getBoxType().equals(boxType_)).collect(Collectors.toList());
+				if (ObjectUtils.isNotNull(boxTypeSize) && boxTypeSize.size() > 0) {
+					boxTypeNumber.append(boxType_).append("✖").append(boxTypeSize).append(",");
+				}
+			}
+			repair.setBoxTypeNumber(boxTypeNumber.toString());
 			for (RepairItem repairItem : repairItemList) {
-				boxNumber += GeneralToolsUtils.boxNumber(repairItem.getBoxType());
 				//明细
 				List<Files> itemFilesList = repairItem.getItemFilesList();
 				if (repairItem.getId() == null) {
@@ -278,7 +285,7 @@ public class RepairServiceImpl extends ServiceImpl<RepairMapper, Repair> impleme
 			}
 			repair.setRepairItemList(repairItemList);
 		}
-		repair.setBoxNumber(boxNumber);
+		repair.setBoxNumber(repairItemList.size());
 		baseMapper.updateById(repair);
 
 		//费用明细

+ 46 - 29
blade-service/blade-box-tube/src/main/java/org/springblade/box/tube/service/impl/TradingBoxServiceImpl.java

@@ -209,13 +209,20 @@ public class TradingBoxServiceImpl extends ServiceImpl<TradingBoxMapper, Trading
 		}
 		//明细数据
 		List<TradingBoxItem> tradingBoxItemList = tradingBox.getTradingBoxItemsList();
-		int boxNumber = 0;
 		if (ObjectUtils.isNotNull(tradingBoxItemList) && tradingBoxItemList.size() > 0) {
 			//箱号拼接字符串
 			List<String> codes = tradingBoxItemList.stream().map(TradingBoxItem::getCode).distinct().collect(Collectors.toList());
 			tradingBox.setCode(String.join(",", codes));
+			StringBuilder boxTypeNumber = new StringBuilder();
+			List<String> boxType = tradingBoxItemList.stream().map(TradingBoxItem::getBoxType).distinct().collect(Collectors.toList());
+			for (String boxType_ : boxType) {
+				List<TradingBoxItem> boxTypeSize = tradingBoxItemList.stream().filter(e -> e.getBoxType().equals(boxType_)).collect(Collectors.toList());
+				if (ObjectUtils.isNotNull(boxTypeSize) && boxTypeSize.size() > 0) {
+					boxTypeNumber.append(boxType_).append("✖").append(boxTypeSize).append(",");
+				}
+			}
+			tradingBox.setBoxTypeNumber(boxTypeNumber.toString());
 			for (TradingBoxItem tradingBoxItem : tradingBoxItemList) {
-				boxNumber += GeneralToolsUtils.boxNumber(tradingBoxItem.getBoxType());
 				if ("BUY".equals(tradingBox.getType())) {
 					tradingBoxItem.setBoxSource("购买");
 					tradingBoxItem.setStatus("待使用");
@@ -274,30 +281,31 @@ public class TradingBoxServiceImpl extends ServiceImpl<TradingBoxMapper, Trading
 						Archives archives = new Archives();
 						if (ObjectUtils.isNotNull(archivesR)) {
 							BeanUtil.copy(archivesR, archives);
+						} else {
+							archives.setCode(tradingBoxItem.getCode());
+							archives.setName(tradingBoxItem.getBoxType());
+							archives.setVolume(tradingBoxItem.getVolume());
+							archives.setGorssWeight(tradingBoxItem.getGrossWeight());
+							archives.setTypeId(tradingBoxItem.getBoxTypeId());
+							archives.setAddressId(tradingBoxItem.getAddressId());
+							archives.setAddress(tradingBoxItem.getAddress());
+							archives.setNewDate(tradingBoxItem.getNewDate());
+							archives.setLeasingCompanyId(tradingBox.getPurchaseCompanyId());
+							archives.setLeasingCompany(tradingBox.getPurchaseCompanyName());
+							archives.setBoxSource(tradingBoxItem.getBoxSource());
+							archives.setBoxStatus(tradingBoxItem.getBoxStatus());
+							archives.setEmptyWeight(tradingBoxItem.getEmptyWeight());
+							archives.setTare(tradingBoxItem.getTare());
+							archives.setLoadingWeight(tradingBoxItem.getLoadingWeight());
+							archives.setBoxMakingCompany(tradingBoxItem.getBoxMakingCompany());
+							archives.setBoxMakingCompanyId(tradingBoxItem.getBoxMakingCompanyId());
+							archives.setBoxMakingDate(tradingBoxItem.getBoxMakingDate());
+							archives.setLeaseCommencementDate(tradingBoxItem.getLeaseCommencementDate());
+							archives.setBoxAge(tradingBoxItem.getBoxAge());
+							archives.setPurchaseDate(tradingBox.getPurchaseDate());
+							archives.setContractNo(tradingBox.getContractNo());
 						}
-						archives.setCode(tradingBoxItem.getCode());
-						archives.setName(tradingBoxItem.getBoxType());
-						archives.setVolume(tradingBoxItem.getVolume());
-						archives.setGorssWeight(tradingBoxItem.getGrossWeight());
 						archives.setStatus(tradingBoxItem.getStatus());
-						archives.setTypeId(tradingBoxItem.getBoxTypeId());
-						archives.setAddressId(tradingBoxItem.getAddressId());
-						archives.setAddress(tradingBoxItem.getAddress());
-						archives.setNewDate(tradingBoxItem.getNewDate());
-						archives.setLeasingCompanyId(tradingBox.getPurchaseCompanyId());
-						archives.setLeasingCompany(tradingBox.getPurchaseCompanyName());
-						archives.setBoxSource(tradingBoxItem.getBoxSource());
-						archives.setBoxStatus(tradingBoxItem.getBoxStatus());
-						archives.setEmptyWeight(tradingBoxItem.getEmptyWeight());
-						archives.setTare(tradingBoxItem.getTare());
-						archives.setLoadingWeight(tradingBoxItem.getLoadingWeight());
-						archives.setBoxMakingCompany(tradingBoxItem.getBoxMakingCompany());
-						archives.setBoxMakingCompanyId(tradingBoxItem.getBoxMakingCompanyId());
-						archives.setBoxMakingDate(tradingBoxItem.getBoxMakingDate());
-						archives.setLeaseCommencementDate(tradingBoxItem.getLeaseCommencementDate());
-						archives.setBoxAge(tradingBoxItem.getBoxAge());
-						archives.setPurchaseDate(tradingBox.getPurchaseDate());
-						archives.setContractNo(tradingBox.getContractNo());
 						if (ObjectUtils.isNotNull(archivesR)) {
 							archives.setUpdateTime(new Date());
 							archives.setUpdateUserName(AuthUtil.getUserName());
@@ -321,7 +329,6 @@ public class TradingBoxServiceImpl extends ServiceImpl<TradingBoxMapper, Trading
 								archivesFilesMapper.insert(archivesFiles);
 							}
 						}
-
 						//记录箱轨迹信息
 						ArchivesTrajectory archivesTrajectory = new ArchivesTrajectory();
 						if ("BUY".equals(tradingBox.getType())) {
@@ -348,7 +355,7 @@ public class TradingBoxServiceImpl extends ServiceImpl<TradingBoxMapper, Trading
 			}
 			tradingBox.setTradingBoxItemsList(tradingBoxItemList);
 		}
-		tradingBox.setBoxNumber(boxNumber);
+		tradingBox.setBoxNumber(tradingBoxItemList.size());
 		baseMapper.updateById(tradingBox);
 		//费用明细
 		List<TradingBoxFees> tradingBoxFeesList = tradingBox.getTradingBoxFeesList();
@@ -425,13 +432,21 @@ public class TradingBoxServiceImpl extends ServiceImpl<TradingBoxMapper, Trading
 		}
 		//明细数据
 		List<TradingBoxItem> tradingBoxItemList = tradingBox.getTradingBoxItemsList();
-		int boxNumber = 0;
 		if (ObjectUtils.isNotNull(tradingBoxItemList) && tradingBoxItemList.size() > 0) {
 			//箱号拼接字符串
 			List<String> codes = tradingBoxItemList.stream().map(TradingBoxItem::getCode).distinct().collect(Collectors.toList());
 			tradingBox.setCode(String.join(",", codes));
+
+			StringBuilder boxTypeNumber = new StringBuilder();
+			List<String> boxType = tradingBoxItemList.stream().map(TradingBoxItem::getBoxType).distinct().collect(Collectors.toList());
+			for (String boxType_ : boxType) {
+				List<TradingBoxItem> boxTypeSize = tradingBoxItemList.stream().filter(e -> e.getBoxType().equals(boxType_)).collect(Collectors.toList());
+				if (ObjectUtils.isNotNull(boxTypeSize) && boxTypeSize.size() > 0) {
+					boxTypeNumber.append(boxType_).append("✖").append(boxTypeSize).append(",");
+				}
+			}
+			tradingBox.setBoxTypeNumber(boxTypeNumber.toString());
 			for (TradingBoxItem tradingBoxItem : tradingBoxItemList) {
-				boxNumber += GeneralToolsUtils.boxNumber(tradingBoxItem.getBoxType());
 				if (tradingBox.getType().equals("ZR")) {
 					tradingBoxItem.setBoxSource("租入");
 				} else if (tradingBox.getType().equals("ZC")) {
@@ -576,7 +591,7 @@ public class TradingBoxServiceImpl extends ServiceImpl<TradingBoxMapper, Trading
 			}
 			tradingBox.setTradingBoxItemsList(tradingBoxItemList);
 		}
-		tradingBox.setBoxNumber(boxNumber);
+		tradingBox.setBoxNumber(tradingBoxItemList.size());
 		baseMapper.updateById(tradingBox);
 		//费用明细
 		List<TradingBoxFees> tradingBoxFeesList = tradingBox.getTradingBoxFeesList();
@@ -591,6 +606,7 @@ public class TradingBoxServiceImpl extends ServiceImpl<TradingBoxMapper, Trading
 					tradingBoxFees.setCreateUser(AuthUtil.getUserId());
 					tradingBoxFees.setCreateTime(new Date());
 					tradingBoxFees.setTenantId(AuthUtil.getTenantId());
+					tradingBoxFees.setPid(tradingBox.getId());
 					tradingBoxFeesMapper.insert(tradingBoxFees);
 				} else {
 					tradingBoxFees.setUpdateUser(AuthUtil.getUserId());
@@ -922,6 +938,7 @@ public class TradingBoxServiceImpl extends ServiceImpl<TradingBoxMapper, Trading
 						archives.setBoxSource("租入");
 						archives.setLeasingCompanyId(tradingBox.getPurchaseCompanyId());
 						archives.setLeasingCompany(tradingBox.getPurchaseCompanyName());
+						archives.setStatus("待使用");
 						if (ObjectUtils.isNotNull(archivesR)) {
 							archives.setUpdateTime(new Date());
 							archives.setUpdateUserName(AuthUtil.getUserName());

+ 18 - 5
blade-service/blade-box-tube/src/main/java/org/springblade/box/tube/service/impl/TransportServiceImpl.java

@@ -187,15 +187,22 @@ public class TransportServiceImpl extends ServiceImpl<TransportMapper, Transport
 		}
 		//明细数据
 		List<TransportItem> transportItemList = transport.getTransportItemList();
-		int boxNumber = 0;
 		if (ObjectUtils.isNotNull(transportItemList) && transportItemList.size() > 0) {
 			//箱号拼接字符串
 			List<String> codes = transportItemList.stream().map(TransportItem::getCode).distinct().collect(Collectors.toList());
 			transport.setCode(String.join(",", codes));
 			transport.setTotalAmount(transportItemList.stream().map(TransportItem::getAmount).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add));
 			transport.setOverdueAmount(transportItemList.stream().map(TransportItem::getAmount).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add));
+			StringBuilder boxTypeNumber = new StringBuilder();
+			List<String> boxType = transportItemList.stream().map(TransportItem::getBoxType).distinct().collect(Collectors.toList());
+			for (String boxType_ : boxType) {
+				List<TransportItem> boxTypeSize = transportItemList.stream().filter(e -> e.getBoxType().equals(boxType_)).collect(Collectors.toList());
+				if (ObjectUtils.isNotNull(boxTypeSize) && boxTypeSize.size() > 0) {
+					boxTypeNumber.append(boxType_).append("✖").append(boxTypeSize).append(",");
+				}
+			}
+			transport.setBoxTypeNumber(boxTypeNumber.toString());
 			for (TransportItem transportItem : transportItemList) {
-				boxNumber += GeneralToolsUtils.boxNumber(transportItem.getBoxType());
 				//明细数据修改添加
 				if (transportItem.getId() == null) {
 					transportItem.setCreateUser(AuthUtil.getUserId());
@@ -215,7 +222,7 @@ public class TransportServiceImpl extends ServiceImpl<TransportMapper, Transport
 				//更新箱档案信息
 				if (ObjectUtils.isNotNull(transportItem.getCode())) {
 					Archives archives = new Archives();
-					archives.setBoxStatus("使用中");
+					archives.setStatus("使用中");
 					archives.setCode(transportItem.getCode());
 					archives.setAddress(transportItem.getAddress());
 					archives.setAddressId(transportItem.getAddressId());
@@ -227,7 +234,7 @@ public class TransportServiceImpl extends ServiceImpl<TransportMapper, Transport
 			}
 			transport.setTransportItemList(transportItemList);
 		}
-		transport.setBoxNumber(boxNumber);
+		transport.setBoxNumber(transportItemList.size());
 		baseMapper.updateById(transport);
 		//费用明细
 		List<TransportItemFees> transportItemFeesList = transport.getTransportItemFeesList();
@@ -321,7 +328,11 @@ public class TransportServiceImpl extends ServiceImpl<TransportMapper, Transport
 			transportItem.setUpdateUser(AuthUtil.getUserId());
 			transportItem.setUpdateUserName(AuthUtil.getUserName());
 			transportItem.setStatus(type);
+
+			Archives archives = new Archives();
+
 			if ("2".equals(status) && "空箱入场".equals(type)) {
+				archives.setStatus("待使用");
 				//判断空箱入场时间是否大于合同时间  true 计算超期金额  false 不计算
 				if (transport.getExpiryDate().compareTo(newDate) < 0) {
 					//计算超期金额 并增加一条费用明细
@@ -370,10 +381,12 @@ public class TransportServiceImpl extends ServiceImpl<TransportMapper, Transport
 						}
 					}
 				}
+			}else{
+				archives.setStatus("使用");
 			}
 			transportItemMapper.updateById(transportItem);
 			//更新箱档案信息
-			Archives archives = new Archives();
+
 			archives.setCode(transportItem.getCode());
 			archives.setAddress(address);
 			archives.setAddressId(Long.parseLong(addressId));