From 8120bb514b9f1670aac7c59929573329b8a5b3dc Mon Sep 17 00:00:00 2001 From: tsiji Date: Tue, 28 Jul 2026 17:16:12 +0800 Subject: [PATCH] fix: guard null completed quantity --- .../controller/ShopOrderStatisticTransController.java | 4 +++- .../iep/integration/handler/def/sap/SapInShopOrder.java | 2 +- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/int-core/src/main/java/com/foreverwin/iep/integration/controller/ShopOrderStatisticTransController.java b/int-core/src/main/java/com/foreverwin/iep/integration/controller/ShopOrderStatisticTransController.java index 3d9beb3..54e68ea 100644 --- a/int-core/src/main/java/com/foreverwin/iep/integration/controller/ShopOrderStatisticTransController.java +++ b/int-core/src/main/java/com/foreverwin/iep/integration/controller/ShopOrderStatisticTransController.java @@ -379,7 +379,9 @@ public class ShopOrderStatisticTransController { if (orderScheduleList != null){ - BigDecimal add = orderScheduleList.getCompletedQuantity().add(mainQty); + BigDecimal completedQuantity = orderScheduleList.getCompletedQuantity() == null + ? BigDecimal.ZERO : orderScheduleList.getCompletedQuantity(); + BigDecimal add = completedQuantity.add(mainQty); BigDecimal completionRatio = add.divide(orderScheduleList.getOrderQuantity(), 4, RoundingMode.HALF_UP); String percentageString = completionRatio.multiply(BigDecimal.valueOf(100)) .setScale(2, RoundingMode.HALF_UP) diff --git a/int-core/src/main/java/com/foreverwin/iep/integration/handler/def/sap/SapInShopOrder.java b/int-core/src/main/java/com/foreverwin/iep/integration/handler/def/sap/SapInShopOrder.java index 35d0429..8e980a2 100644 --- a/int-core/src/main/java/com/foreverwin/iep/integration/handler/def/sap/SapInShopOrder.java +++ b/int-core/src/main/java/com/foreverwin/iep/integration/handler/def/sap/SapInShopOrder.java @@ -160,6 +160,7 @@ public class SapInShopOrder implements HandlerService { if (orderScheduleListByOrderNumber == null){ String s = OrderSchedule.genHandle(orderSchedule.getOrderNumber(), orderSchedule.getSite(), orderSchedule.getOrderMaterialNumber()); orderSchedule.setHandle(s); + orderSchedule.setCompletedQuantity(BigDecimal.ZERO); orderScheduleMapper.insert(orderSchedule); }else { if (orderSchedules == null){ @@ -461,4 +462,3 @@ public class SapInShopOrder implements HandlerService { } -