From 46f0174d01cf273ea2da8febcee8acdf6e442819 Mon Sep 17 00:00:00 2001 From: zhenghaoyu Date: Mon, 4 Nov 2024 12:06:57 +0800 Subject: [PATCH] =?UTF-8?q?1.=E5=B9=B2=E7=BA=BFbug=E4=BF=AE=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/TrunklineCarsLoadServiceImpl.java | 98 +++++++++++-------- 1 file changed, 55 insertions(+), 43 deletions(-) diff --git a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineCarsLoadServiceImpl.java b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineCarsLoadServiceImpl.java index 04ce420cf..b1073d8b6 100644 --- a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineCarsLoadServiceImpl.java +++ b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineCarsLoadServiceImpl.java @@ -1152,10 +1152,7 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl { - 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 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)))); + } + }); }); } });