Эх сурвалжийг харах

转箱出货单 数据错误处理

yzc 1 жил өмнө
parent
commit
c88a2c447a

+ 14 - 13
hx-sale/src/main/java/com/fjhx/sale/service/pack/impl/PackServiceImpl.java

@@ -270,6 +270,11 @@ public class PackServiceImpl extends ServiceImpl<PackMapper, Pack> implements Pa
         Pack pack = getById(id);
         Pack pack = getById(id);
         Assert.notEmpty(pack, "查询不到装箱信息");
         Assert.notEmpty(pack, "查询不到装箱信息");
 
 
+        BigDecimal packQuantity = BigDecimal.ZERO;
+        BigDecimal roughWeight = BigDecimal.ZERO;
+        BigDecimal netWeight = BigDecimal.ZERO;
+        BigDecimal volume = BigDecimal.ZERO;
+
 
 
         List<PackDetail> packDetailList = packDetailService.list(q -> q.eq(PackDetail::getPackId, pack.getId()));
         List<PackDetail> packDetailList = packDetailService.list(q -> q.eq(PackDetail::getPackId, pack.getId()));
         List<PackDetailVo> packDetailVos = BeanUtil.copyToList(packDetailList, PackDetailVo.class);
         List<PackDetailVo> packDetailVos = BeanUtil.copyToList(packDetailList, PackDetailVo.class);
@@ -302,6 +307,12 @@ public class PackServiceImpl extends ServiceImpl<PackMapper, Pack> implements Pa
             }
             }
             packDetailVo.setPackDetailProductLists(packDetailProductVos);
             packDetailVo.setPackDetailProductLists(packDetailProductVos);
             packDetailVo.setBomVolume(packDetailVo.getBoxLong().multiply(packDetailVo.getBoxWide()).multiply(packDetailVo.getBoxHigh()));
             packDetailVo.setBomVolume(packDetailVo.getBoxLong().multiply(packDetailVo.getBoxWide()).multiply(packDetailVo.getBoxHigh()));
+
+
+            packQuantity = packQuantity.add(packDetailVo.getPackQuantity());
+            roughWeight = roughWeight.add(packDetailVo.getRoughWeight().multiply(packDetailVo.getPackQuantity()));
+            netWeight = netWeight.add(packDetailVo.getNetWeight().multiply(packDetailVo.getPackQuantity()));
+            volume = volume.add(packDetailVo.getBoxLong().multiply(packDetailVo.getBoxWide()).multiply(packDetailVo.getBoxHigh()).multiply(packDetailVo.getPackQuantity()));
         }
         }
 
 
         //获取唛头信息
         //获取唛头信息
@@ -312,22 +323,12 @@ public class PackServiceImpl extends ServiceImpl<PackMapper, Pack> implements Pa
             shippingMark = ObjectUtil.isEmpty(documents) ? "" : documents.getRemark();
             shippingMark = ObjectUtil.isEmpty(documents) ? "" : documents.getRemark();
         }
         }
 
 
-        BigDecimal packQuantity = packDetailList.stream().map(PackDetail::getPackQuantity).reduce(BigDecimal.ZERO, BigDecimal::add);
-        BigDecimal roughWeight = packDetailList.stream().map(PackDetail::getRoughWeight).reduce(BigDecimal.ZERO, BigDecimal::add);
-        BigDecimal netWeight = packDetailList.stream().map(PackDetail::getNetWeight).reduce(BigDecimal.ZERO, BigDecimal::add);
-
-        BigDecimal volume = packDetailList.stream().map(item -> item
-                        .getBoxLong().multiply(item.getBoxWide())
-                        .multiply(item.getBoxHigh()))
-                .reduce(BigDecimal.ZERO, BigDecimal::add);
-
-
         Map<String, Object> map = new HashMap<>();
         Map<String, Object> map = new HashMap<>();
         map.put("remark", shippingMark);
         map.put("remark", shippingMark);
         map.put("packQuantity", packQuantity);
         map.put("packQuantity", packQuantity);
-        map.put("roughWeight", roughWeight.multiply(packQuantity));
-        map.put("netWeight", netWeight.multiply(packQuantity));
-        map.put("volume", volume.multiply(packQuantity));
+        map.put("roughWeight", roughWeight);
+        map.put("netWeight", netWeight);
+        map.put("volume", volume);
         map.put("packDetailList", packDetailVos);
         map.put("packDetailList", packDetailVos);
 
 
         return map;
         return map;