From 8943a4e9f5ee1455c56ac4af60d941fa23731051 Mon Sep 17 00:00:00 2001
From: cl <1442464845@qq.com>
Date: 星期一, 13 四月 2026 13:20:38 +0800
Subject: [PATCH] 重量

---
 rsf-server/src/main/java/com/vincent/rsf/server/api/controller/WcsController.java |   21 ++++++++++++++++++++-
 1 files changed, 20 insertions(+), 1 deletions(-)

diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/api/controller/WcsController.java b/rsf-server/src/main/java/com/vincent/rsf/server/api/controller/WcsController.java
index 446ae60..3e204dd 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/api/controller/WcsController.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/api/controller/WcsController.java
@@ -28,6 +28,7 @@
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
 
+import java.math.BigDecimal;
 import java.util.Map;
 
 @RestController
@@ -172,6 +173,7 @@
                 full = Boolean.parseBoolean(params.get("full").toString());
             }
         }
+        BigDecimal weight = parseAllocateWeight(params.get("weight"));
         if (Cools.isEmpty(barcode)) {
             return R.error("鏂欑鐮佷笉鑳戒负绌猴紒锛�");
         }
@@ -181,7 +183,24 @@
         if (type == null) {
             return R.error("鍏ュ簱绫诲瀷涓嶈兘涓虹┖锛侊紒");
         }
-        return wcsService.allocateLocation(barcode, staNo, type, full);
+        return wcsService.allocateLocation(barcode, staNo, type, full, weight);
+    }
+
+    private static BigDecimal parseAllocateWeight(Object raw) {
+        if (raw == null) {
+            return null;
+        }
+        if (raw instanceof BigDecimal) {
+            return (BigDecimal) raw;
+        }
+        if (raw instanceof Number) {
+            return new BigDecimal(raw.toString());
+        }
+        String s = raw.toString().trim();
+        if (s.isEmpty()) {
+            return null;
+        }
+        return new BigDecimal(s);
     }
 
     @ApiOperation("绌烘澘鍑哄簱锛氫粠鎸囧畾绌烘澘搴撲綅鐢熸垚鍑哄簱浠诲姟鑷崇洰鏍囩珯鐐�")

--
Gitblit v1.9.1