|
|
|
@ -1152,10 +1152,7 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl<TrunklineCarsL
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
String loadStatus = carsLoadEntity.getLoadStatus(); |
|
|
|
|
if ("80".equals(loadStatus)) { |
|
|
|
|
log.warn("#############unloadByLoadId: 配载计划已终点卸车确认 loadStatus={}", loadStatus); |
|
|
|
|
throw new CustomerException(400, "配载计划已终点卸车确认"); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// if (!"20".equals(loadStatus) && !"40".equals(loadStatus)) {
|
|
|
|
|
// log.warn("#############unloadByLoadId: 配载计划暂未到车 loadStatus={}", loadStatus);
|
|
|
|
@ -1206,6 +1203,13 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl<TrunklineCarsL
|
|
|
|
|
|
|
|
|
|
} else if (unloadType == 2) { |
|
|
|
|
node = WorkNodeEnums.END_WAREHOUSE_UNLOADING; |
|
|
|
|
|
|
|
|
|
if ("80".equals(loadStatus)) { |
|
|
|
|
log.warn("#############unloadByLoadId: 配载计划已终点卸车确认 loadStatus={}", loadStatus); |
|
|
|
|
throw new CustomerException(400, "配载计划已终点卸车确认"); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//终点卸车确认
|
|
|
|
|
if (!"10".equals(nodeStatus)) { |
|
|
|
|
log.warn("#############unloadByLoadId: 当前节点未到车 nowWarehouseId={} nodeStatus={}", nowWarehouseId, nodeStatus); |
|
|
|
@ -4773,45 +4777,53 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl<TrunklineCarsL
|
|
|
|
|
}else if(NumberUtil.equals(type,2)){ |
|
|
|
|
|
|
|
|
|
trunklineCarsLoadScanVOS.forEach(trunklineCarsLoadScanVO -> { |
|
|
|
|
String scanCode = trunklineCarsLoadScanVO.getScanCode(); |
|
|
|
|
Integer num = trunklineCarsLoadScanVO.getNum(); |
|
|
|
|
Integer unloadNum1 = trunklineCarsLoadScanVO.getUnloadNum(); |
|
|
|
|
if(Objects.isNull(unloadNum1)){ |
|
|
|
|
unloadNum1 = 0; |
|
|
|
|
} |
|
|
|
|
String price = priceMap.get(scanCode); |
|
|
|
|
if(StrUtil.isBlank(price)){ |
|
|
|
|
price = "0"; |
|
|
|
|
} |
|
|
|
|
String oneVolume = volumeMap.get(scanCode); |
|
|
|
|
if(StrUtil.isBlank(oneVolume)){ |
|
|
|
|
oneVolume = "0"; |
|
|
|
|
} |
|
|
|
|
String oneWeight = weightMap.get(scanCode); |
|
|
|
|
if(StrUtil.isBlank(oneWeight)){ |
|
|
|
|
oneWeight = "0"; |
|
|
|
|
} |
|
|
|
|
totalIncomingParice.set(totalIncomingParice.get().add(new BigDecimal(price).multiply(new BigDecimal(unloadNum1)))); |
|
|
|
|
totalVolume.set(totalVolume.get().add(new BigDecimal(oneVolume).multiply(new BigDecimal(unloadNum1)))); |
|
|
|
|
totalWeight.set(totalWeight.get().add(new BigDecimal(oneWeight).multiply(new BigDecimal(unloadNum1)))); |
|
|
|
|
Integer n = goodsByNum.get(scanCode); |
|
|
|
|
if(Objects.isNull(n)){ |
|
|
|
|
goodsByNum.put(scanCode,num); |
|
|
|
|
}else{ |
|
|
|
|
goodsByNum.put(scanCode,n+num); |
|
|
|
|
} |
|
|
|
|
BigDecimal v = goodsByVolume.get(scanCode); |
|
|
|
|
if(Objects.isNull(v)){ |
|
|
|
|
goodsByVolume.put(scanCode,new BigDecimal(oneVolume).multiply(new BigDecimal(unloadNum1))); |
|
|
|
|
}else{ |
|
|
|
|
goodsByVolume.put(scanCode,v.add(new BigDecimal(oneVolume).multiply(new BigDecimal(unloadNum1)))); |
|
|
|
|
} |
|
|
|
|
BigDecimal w = goodsByWeight.get(scanCode); |
|
|
|
|
if(Objects.isNull(w)){ |
|
|
|
|
goodsByWeight.put(scanCode,new BigDecimal(oneWeight).multiply(new BigDecimal(unloadNum1))); |
|
|
|
|
}else{ |
|
|
|
|
goodsByWeight.put(scanCode,w.add(new BigDecimal(oneWeight).multiply(new BigDecimal(unloadNum1)))); |
|
|
|
|
} |
|
|
|
|
// String scanCode = trunklineCarsLoadScanVO.getScanCode();
|
|
|
|
|
// Integer num = trunklineCarsLoadScanVO.getNum();
|
|
|
|
|
// Integer unloadNum1 = trunklineCarsLoadScanVO.getUnloadNum();
|
|
|
|
|
Long scanId = trunklineCarsLoadScanVO.getId(); |
|
|
|
|
List<TrunklineScanZeroDetailVO> zeroDetailVOList = scanZeroDetailService.findListByCarsLoadScanId(scanId); |
|
|
|
|
|
|
|
|
|
zeroDetailVOList.forEach(zeroDetailVO -> { |
|
|
|
|
Integer unloadNum1 = zeroDetailVO.getUnloadNum(); |
|
|
|
|
String goodsName1 = zeroDetailVO.getGoodsName(); |
|
|
|
|
|
|
|
|
|
if(Objects.isNull(unloadNum1)){ |
|
|
|
|
unloadNum1 = 0; |
|
|
|
|
} |
|
|
|
|
String price = priceMap.get(goodsName1); |
|
|
|
|
if(StrUtil.isBlank(price)){ |
|
|
|
|
price = "0"; |
|
|
|
|
} |
|
|
|
|
String oneVolume = volumeMap.get(goodsName1); |
|
|
|
|
if(StrUtil.isBlank(oneVolume)){ |
|
|
|
|
oneVolume = "0"; |
|
|
|
|
} |
|
|
|
|
String oneWeight = weightMap.get(goodsName1); |
|
|
|
|
if(StrUtil.isBlank(oneWeight)){ |
|
|
|
|
oneWeight = "0"; |
|
|
|
|
} |
|
|
|
|
totalIncomingParice.set(totalIncomingParice.get().add(new BigDecimal(price).multiply(new BigDecimal(unloadNum1)))); |
|
|
|
|
totalVolume.set(totalVolume.get().add(new BigDecimal(oneVolume).multiply(new BigDecimal(unloadNum1)))); |
|
|
|
|
totalWeight.set(totalWeight.get().add(new BigDecimal(oneWeight).multiply(new BigDecimal(unloadNum1)))); |
|
|
|
|
Integer n = goodsByNum.get(goodsName1); |
|
|
|
|
if(Objects.isNull(n)){ |
|
|
|
|
goodsByNum.put(goodsName1,unloadNum1); |
|
|
|
|
}else{ |
|
|
|
|
goodsByNum.put(goodsName1,n+unloadNum1); |
|
|
|
|
} |
|
|
|
|
BigDecimal v = goodsByVolume.get(goodsName1); |
|
|
|
|
if(Objects.isNull(v)){ |
|
|
|
|
goodsByVolume.put(goodsName1,new BigDecimal(oneVolume).multiply(new BigDecimal(unloadNum1))); |
|
|
|
|
}else{ |
|
|
|
|
goodsByVolume.put(goodsName1,v.add(new BigDecimal(oneVolume).multiply(new BigDecimal(unloadNum1)))); |
|
|
|
|
} |
|
|
|
|
BigDecimal w = goodsByWeight.get(goodsName1); |
|
|
|
|
if(Objects.isNull(w)){ |
|
|
|
|
goodsByWeight.put(goodsName1,new BigDecimal(oneWeight).multiply(new BigDecimal(unloadNum1))); |
|
|
|
|
}else{ |
|
|
|
|
goodsByWeight.put(goodsName1,w.add(new BigDecimal(oneWeight).multiply(new BigDecimal(unloadNum1)))); |
|
|
|
|
} |
|
|
|
|
}); |
|
|
|
|
}); |
|
|
|
|
} |
|
|
|
|
}); |
|
|
|
|