|
@@ -407,13 +407,12 @@ public class StackingAndLoadingVehiclesServiceImpl extends ServiceImpl<StackingA
|
|
|
}
|
|
|
loadingParams.setStorageBill(isStorageBill);
|
|
|
|
|
|
- log.info("{}{}", "自动化堆垛装车保存钢坯装运单数据:", JSON.toJSON(isStorageBill));
|
|
|
+ log.info("{}{}", "自动化堆垛装车保存StorageBill数据:", JSON.toJSON(isStorageBill));
|
|
|
|
|
|
StorageBill storageBill = loadingParams.getStorageBill();
|
|
|
|
|
|
// 轧钢外运保存时,先判断装运单中的目的地ID是否为1024,如果为1024、明细暂存临时表billet_auto_tmp
|
|
|
if ("1024".equals(isStorageBill.getTypeConfigId())){
|
|
|
- log.info("{}{}", "C端自动化堆垛外运未知目的地坯号集合:", allBilletNos);
|
|
|
loadingParams.setBelongTable("billet_auto_tmp");
|
|
|
loadingParams.setBilletHotsendTypeConfigId("1024");
|
|
|
loadingParams.setDestinationTable("billet_auto_tmp");
|
|
@@ -432,7 +431,6 @@ public class StackingAndLoadingVehiclesServiceImpl extends ServiceImpl<StackingA
|
|
|
loadingParams.setBelongTable(billetHotsendTypeConfigInfo.getBelongTable());
|
|
|
loadingParams.setBilletHotsendTypeConfigId(billetHotsendTypeConfigInfo.getId());
|
|
|
}
|
|
|
- log.info("{}{}", "自动化堆垛装车保存公共容器数据:", JSON.toJSON(loadingParams.getStackingAndLoadingVehiclesList()));
|
|
|
|
|
|
log.info("{}{}", "自动化堆垛装车保存热送单数据:", JSON.toJSON(billetHotsend));
|
|
|
|
|
@@ -491,7 +489,7 @@ public class StackingAndLoadingVehiclesServiceImpl extends ServiceImpl<StackingA
|
|
|
billetBasicInfoService.saveOrUpdateBatch(billetBasicInfoList);
|
|
|
|
|
|
if ("billet_auto_tmp".equals(loadingParams.getBelongTable())){
|
|
|
- log.info("{}{}", "C端自动化堆垛保存去未知目的地装运单信息:", JSON.toJSON(storageBill));
|
|
|
+ log.info("{}{}", "C端自动化堆垛保存临时表成功,坯号集合:", allBilletNos);
|
|
|
return;
|
|
|
}
|
|
|
// 取最新的第一条钢坯信息
|
|
@@ -501,16 +499,43 @@ public class StackingAndLoadingVehiclesServiceImpl extends ServiceImpl<StackingA
|
|
|
storageBill.setAmountTotal((oConvertUtils.isNotEmpty(storageBill.getAmountTotal()) ? storageBill.getAmountTotal() : 0) + loadingParams.getStackingAndLoadingVehiclesList().size() * 4);
|
|
|
storageBill.setDestination(loadingParams.getDestination());
|
|
|
storageBill.setTypeConfigId(loadingParams.getDestinationId());
|
|
|
- List<String> stringList = billetBasicInfoList.stream().map(BilletBasicInfo::getAssemblyNumber).filter(assemblyNumber -> oConvertUtils.isNotEmpty(assemblyNumber)).collect(Collectors.toList());
|
|
|
- if(oConvertUtils.listIsNotEmpty(stringList)) {
|
|
|
- String distinctAssemblyNumber = billetBasicInfoList.stream()
|
|
|
- .map(BilletBasicInfo::getAssemblyNumber)
|
|
|
- .filter(assemblyNumber -> oConvertUtils.isNotEmpty(assemblyNumber))
|
|
|
- .distinct().collect(Collectors.joining(","));
|
|
|
+
|
|
|
+ // 下垛时,有目的,定尺维护
|
|
|
+ List<Integer> sizeIntList = billetBasicInfoList.stream().map(BilletBasicInfo::getLength).filter(oConvertUtils::isNotEmpty).collect(Collectors.toList());
|
|
|
+ List<String> sizeStrList = sizeIntList.stream().map(String::valueOf).collect(Collectors.toList());
|
|
|
+ if(oConvertUtils.listIsNotEmpty(sizeStrList)) {
|
|
|
+ String distinctSizeStr = sizeIntList.stream()
|
|
|
+ .distinct()
|
|
|
+ .map(String::valueOf)
|
|
|
+ .collect(Collectors.joining(","));
|
|
|
+ String finalSizeStr = Optional.ofNullable(storageBill.getSize())
|
|
|
+ .filter(oConvertUtils::isNotEmpty)
|
|
|
+ .map(s -> s + "," + distinctSizeStr)
|
|
|
+ .orElse(distinctSizeStr);
|
|
|
+ // 对 finalSizeStr 再次去重
|
|
|
+ String[] sizeArray = finalSizeStr.split(",");
|
|
|
+ Set<String> uniqueSizes = Arrays.stream(sizeArray)
|
|
|
+ .filter(s -> s != null && !s.isEmpty())
|
|
|
+ .collect(Collectors.toCollection(HashSet::new));
|
|
|
+ finalSizeStr = String.join(",", uniqueSizes);
|
|
|
+ storageBill.setSize(finalSizeStr);
|
|
|
+ }
|
|
|
+
|
|
|
+ // 下垛时,有目的,组批号维护
|
|
|
+ List<String> assemblyNumberList = billetBasicInfoList.stream().map(BilletBasicInfo::getAssemblyNumber).filter(assemblyNumber -> oConvertUtils.isNotEmpty(assemblyNumber)).collect(Collectors.toList());
|
|
|
+ if(oConvertUtils.listIsNotEmpty(assemblyNumberList)) {
|
|
|
+ String distinctAssemblyNumber = assemblyNumberList.stream().distinct().collect(Collectors.joining(","));
|
|
|
String finalAssemblyNumber = Optional.ofNullable(storageBill.getAssemblyNumber())
|
|
|
.filter(oConvertUtils::isNotEmpty)
|
|
|
.map(s -> s + "," + distinctAssemblyNumber)
|
|
|
.orElse(distinctAssemblyNumber);
|
|
|
+
|
|
|
+ // 对 finalAssemblyNumber 再次去重
|
|
|
+ String[] assemblyNumberArray = finalAssemblyNumber.split(",");
|
|
|
+ Set<String> uniqueAssemblyNumbers = Arrays.stream(assemblyNumberArray)
|
|
|
+ .filter(s -> s != null && !s.isEmpty())
|
|
|
+ .collect(Collectors.toCollection(HashSet::new));
|
|
|
+ finalAssemblyNumber = String.join(",", uniqueAssemblyNumbers);
|
|
|
storageBill.setAssemblyNumber(finalAssemblyNumber);
|
|
|
}
|
|
|
storageBillService.updateById(storageBill);
|