From 20b72a000801cf006bfe1f487baabc110594832f Mon Sep 17 00:00:00 2001
From: cl <1442464845@qq.com>
Date: 星期日, 05 四月 2026 17:55:42 +0800
Subject: [PATCH] 重量

---
 src/main/java/com/zy/asrs/task/handler/WorkErpReportHandler.java |   12 +++++++++---
 1 files changed, 9 insertions(+), 3 deletions(-)

diff --git a/src/main/java/com/zy/asrs/task/handler/WorkErpReportHandler.java b/src/main/java/com/zy/asrs/task/handler/WorkErpReportHandler.java
index c0ac56b..3cf7306 100644
--- a/src/main/java/com/zy/asrs/task/handler/WorkErpReportHandler.java
+++ b/src/main/java/com/zy/asrs/task/handler/WorkErpReportHandler.java
@@ -22,6 +22,7 @@
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
+import java.math.BigDecimal;
 import java.text.SimpleDateFormat;
 import java.util.Date;
 import java.util.List;
@@ -92,8 +93,6 @@
         }
         String newLocId = row + "-" + col + "-" + lev;
         param.setLocId(newLocId);
-        // TODO锛氭ā鎿姝婚噸閲�1000KG锛岄渶寰岀簩鍒櫎
-        param.setWeight(1000.0);
 
         String request = JSON.toJSONString(param);
         String response = "";
@@ -159,13 +158,20 @@
         param.setPalletId(resolvePalletId(wrkMast, wrkDetls));
         param.setAnfme(sumAnfme(wrkDetls));
         param.setLocId(wrkMast.getLocNo());
-        param.setWeight(sumWeight(wrkDetls));
+//        param.setWeight(sumWeight(wrkDetls));
+        param.setWeight(adjustErpReportWeight(wrkMast.getScWeight()));
         param.setCreateTime(formatDate(resolveCreateTime(wrkMast)));
         param.setBizNo(resolveBizNo(wrkDetls, waitPakin));
         param.setStartTime(formatDate(resolveStartTime(wrkMast, waitPakin)));
         return param;
     }
 
+    /** 涓婃姤 ERP 閲嶉噺锛氱О閲嶅噺鍥哄畾鍊硷紝璐熷垯鎸� 0 */
+    private static BigDecimal adjustErpReportWeight(BigDecimal scWeight) {
+        BigDecimal base = scWeight == null ? BigDecimal.ZERO : scWeight;
+        BigDecimal v = base.subtract(new BigDecimal("20"));
+        return v.compareTo(BigDecimal.ZERO) < 0 ? BigDecimal.ZERO : v;
+    }
     private String resolvePalletId(WrkMast wrkMast, List<WrkDetl> wrkDetls) {
         if (!Cools.isEmpty(wrkMast.getBarcode())) {
             return wrkMast.getBarcode();

--
Gitblit v1.9.1