From a12e4cc6a9eab1c7608b885177ff08fd43963d50 Mon Sep 17 00:00:00 2001 From: suncz Date: Mon, 27 Oct 2025 11:29:39 +0800 Subject: [PATCH] =?UTF-8?q?=E9=98=B6=E6=AE=B5=E6=95=B0=E9=87=8F=EF=BC=88?= =?UTF-8?q?=E4=BB=B6=EF=BC=89=E4=B8=8D=E7=BB=9F=E8=AE=A1=E5=90=8E=E7=BB=AD?= =?UTF-8?q?=E9=98=B6=E6=AE=B5=E6=95=B0=E9=87=8F=E6=84=8F=E5=A4=96=E5=87=8F?= =?UTF-8?q?=E5=B0=91=EF=BC=8C=E9=87=87=E8=B4=AD=E6=95=B0=E9=87=8F=E4=B8=BA?= =?UTF-8?q?=E8=B4=9F=E6=95=B0=E7=9A=84=E6=9D=A1=E7=9B=AE=EF=BC=9B=E5=90=8E?= =?UTF-8?q?=E7=BB=AD=E9=98=B6=E6=AE=B5=E8=AF=A6=E8=A1=A8=E4=B8=8E=E9=98=B6?= =?UTF-8?q?=E6=AE=B5=E6=AF=94=E8=BE=83=E6=8A=A5=E5=91=8A=E4=B8=AD=EF=BC=8C?= =?UTF-8?q?=E9=87=87=E8=B4=AD=E6=95=B0=E9=87=8F=E4=B8=BA=E8=B4=9F=E6=95=B0?= =?UTF-8?q?=E7=9A=84=E6=9D=A1=E7=9B=AE=E7=BB=9F=E4=B8=80=E8=AE=B0=E4=B8=BA?= =?UTF-8?q?0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/vverp/service/MaterialOrderService.java | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/src/main/java/com/vverp/service/MaterialOrderService.java b/src/main/java/com/vverp/service/MaterialOrderService.java index 940fa60..53c2ed5 100644 --- a/src/main/java/com/vverp/service/MaterialOrderService.java +++ b/src/main/java/com/vverp/service/MaterialOrderService.java @@ -679,10 +679,10 @@ public class MaterialOrderService extends BaseOrderService +"_"+materialOrderItem.getMakeCode()+"_"+materialOrderItem.getMaterialType() +"_"+materialOrderItem.getEndFace()+"_"+materialOrderItem.getPressureLevel(); if (!countMap.containsKey(str)){ - countMap.put(str,materialOrderItem.getCount()); + countMap.put(str,materialOrderItem.getCount().compareTo(BigDecimal.ZERO) < 0 ? BigDecimal.ZERO : materialOrderItem.getCount()); }else { BigDecimal count = countMap.get(str); - count = count.add(materialOrderItem.getCount()); + count = count.add(materialOrderItem.getCount().compareTo(BigDecimal.ZERO) < 0 ? BigDecimal.ZERO : materialOrderItem.getCount()); countMap.put(str,count); } } @@ -1093,9 +1093,9 @@ public class MaterialOrderService extends BaseOrderService // } item.setTotalWeight(totalWeight == null ? (product.getgWeight()==null?BigDecimal.ZERO:product.getgWeight()).multiply(count) : totalWeight); orderCount = orderCount.add(count); - if(negativeCount.compareTo(BigDecimal.ZERO)<0){//后续阶段数量意外减少,采购数量为负数 - orderCount = orderCount.add(negativeCount); - } +// if(negativeCount.compareTo(BigDecimal.ZERO)<0){//后续阶段数量意外减少,采购数量为负数 +// orderCount = orderCount.add(negativeCount); +// } item.setSupplierIds(new ArrayList<>()); for (Integer key : valueMap.keySet()) { @@ -1248,11 +1248,12 @@ public class MaterialOrderService extends BaseOrderService +"_"+prevItem.getProductCode()+"_"+prevItem.getPurchaseCode() +"_"+prevItem.getMakeCode()+"_"+prevItem.getMaterialType() +"_"+prevItem.getEndFace()+"_"+prevItem.getPressureLevel(); + // 如果 prevItem.getCount()的值 小于0,则返回 BigDecimal.ZERO, 大于或等于0,返回 prevItem.getCount()本身。 if (!prevMap.containsKey(str)){ - prevMap.put(str,prevItem.getCount()); + prevMap.put(str,prevItem.getCount().compareTo(BigDecimal.ZERO) < 0 ? BigDecimal.ZERO : prevItem.getCount()); prevMapM.put(str,prevItem); }else { - BigDecimal prevCount = prevMap.get(str).add(prevItem.getCount()); + BigDecimal prevCount = prevMap.get(str).add(prevItem.getCount().compareTo(BigDecimal.ZERO) < 0 ? BigDecimal.ZERO : prevItem.getCount()); prevMap.put(str,prevCount); prevMapM.put(str,prevItem); }