From 029ffbf20db7196d4f460bc741fd5f36a80689ae Mon Sep 17 00:00:00 2001
From: skyouc <creaycat@gmail.com>
Date: 星期四, 15 一月 2026 19:55:45 +0800
Subject: [PATCH] 空板回库称重再校验

---
 src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java |   30 +++++++++++++++++++++++++++---
 1 files changed, 27 insertions(+), 3 deletions(-)

diff --git a/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java b/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java
index f722e01..f76c634 100644
--- a/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java
+++ b/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java
@@ -114,7 +114,6 @@
                     }
                     // 閬嶅巻宸ヤ綔鏄庣粏锛屾洿鏂板簱瀛樻槑缁嗗拰鍏ュ簱閫氱煡妗�
                     for (WrkDetl wrkDetl : wrkDetls) {
-
                         LocDetl locDetl = locDetlService.selectItem(locMast.getLocNo(), wrkDetl.getMatnr(), wrkDetl.getBatch(), wrkDetl.getBrand()
                                 , wrkDetl.getStandby1(), wrkDetl.getStandby2(), wrkDetl.getStandby3(), wrkDetl.getBoxType1(), wrkDetl.getBoxType2(), wrkDetl.getBoxType3());
                         if (null != locDetl) {
@@ -128,7 +127,11 @@
                             locDetl = new LocDetl();
                             locDetl.sync(wrkDetl);
                             locDetl.setLocNo(wrkMast.getLocNo()); // 搴撲綅鍙�
-                            locDetl.setAnfme(wrkDetl.getAnfme()); // 鏁伴噺
+                            if (!Objects.isNull(wrkMast.getWrkCode())) {
+                                locDetl.setAnfme(wrkDetl.getRealQty());
+                            } else {
+                                locDetl.setAnfme(wrkDetl.getAnfme()); // 鏁伴噺
+                            }
                             locDetl.setZpallet(wrkDetl.getZpallet()); // 鎵樼洏鏉$爜
                             locDetl.setModiTime(now);
                             locDetl.setAppeTime(now);
@@ -140,8 +143,9 @@
                         }
 
                         //鍒ゆ柇鍖归厤缂栫爜涓嶄负绌猴紝涓斾换鍔$紪鐮佸寘鍚�-2锛岀‘璁や负鏈変笂缁勪换鍔�
-                        if (!Objects.isNull(wrkMast.getWrkCode()) && wrkMast.getWrkCode().contains("-2")) {
+                        if (!Objects.isNull(wrkMast.getWrkCode())) {
                             //涓嶉渶瑕佹洿鏂板崟鎹俊鎭紙瀛愪换鍔℃棤鍗曟嵁
+
                         } else {
                             //姝e父鍗曟嵁鎵嶅瓨瀛樺叆搴撳崟锛屼綔鍏ュ簱鍗曟嵁淇℃伅鏇存柊
                             // 鏇存柊璁㈠崟瀹屾垚鏁伴噺
@@ -443,6 +447,26 @@
             return FAIL.setMsg(e.getMessage());
         }
 
+        /***/
+        if (!Objects.isNull(wrkMast.getWrkCode())) {
+            LocMast lcmst = locMastService.selectOne(new EntityWrapper<LocMast>().eq("loc_no", wrkMast.getSourceLocNo()));
+            lcmst.setLocSts(LocStsType.LOC_STS_TYPE_O.type);
+            if (!locMastService.updateById(lcmst)) {
+                throw new CoolException("搴撲綅鐘舵�佷慨鏀瑰け璐ワ紒锛�");
+            }
+
+            LocAroundBind bLocNo = locAroundBindService.selectOne(new EntityWrapper<LocAroundBind>().eq("b_loc_no", wrkMast.getSourceLocNo()));
+            if (Objects.isNull(bLocNo)) {
+                throw new CoolException("宸ヤ綅涓嶅瓨鍦� 锛侊紒");
+            }
+            bLocNo.setLocType(LocStsType.LOC_STS_TYPE_O.type);
+            if (!locAroundBindService.updateById(bLocNo)) {
+                throw new CoolException("宸ヤ綅鐘舵�佷慨鏀瑰け璐ワ紒锛�");
+            }
+
+            locDetlService.delete(new EntityWrapper<LocDetl>().eq("loc_no", wrkMast.getSourceLocNo()));
+        }
+
         return SUCCESS;
     }
 

--
Gitblit v1.9.1