From cac8fbf138586bdf451cdb656758b0b8958df07a Mon Sep 17 00:00:00 2001
From: Junjie <fallin.jie@qq.com>
Date: 星期四, 26 三月 2026 08:51:01 +0800
Subject: [PATCH] #解决拣选回库后库存丢失问题,库存明细的预留字段与工作明细预留字段不一致情况

---
 src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java |    8 +++++---
 1 files changed, 5 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 3daa4b1..d95957b 100644
--- a/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java
+++ b/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java
@@ -276,13 +276,15 @@
 
                     for (WrkDetl wrkDetl : wrkDetls53) {
 
-                        LocDetl locDetl = locDetlService.selectItem(locMast.getLocNo(), wrkDetl.getMatnr(), wrkDetl.getBatch(), wrkDetl.getBrand(), wrkDetl.getStandby1(), wrkDetl.getStandby2(), wrkDetl.getStandby3(), wrkDetl.getBoxType1(), wrkDetl.getBoxType2(), wrkDetl.getBoxType3());
+                        LocDetl locDetl = locDetlService.selectItem(locMast.getLocNo(), wrkDetl.getMatnr(), wrkDetl.getBatch(), wrkDetl.getBrand(), wrkDetl.getStandby1(), null, null, null, null, null);
                         if (null != locDetl) {
-                            if (!locDetlService.updateAnfme(locDetl.getAnfme() - wrkDetl.getAnfme(), locMast.getLocNo(), wrkDetl.getMatnr(), wrkDetl.getBatch(), wrkDetl.getBrand(), wrkDetl.getStandby1(), wrkDetl.getStandby2(), wrkDetl.getStandby3(), wrkDetl.getBoxType1(), wrkDetl.getBoxType2(), wrkDetl.getBoxType3())) {
+                            if (!locDetlService.updateAnfme(locDetl.getAnfme() - wrkDetl.getAnfme(), locMast.getLocNo(), wrkDetl.getMatnr(), wrkDetl.getBatch(), wrkDetl.getBrand(), wrkDetl.getStandby1(), null, null, null, null, null)) {
 //                                exceptionHandle("鎷f枡鍏ュ簱 ===>> 淇敼搴撳瓨鏄庣粏鏁伴噺澶辫触锛沎workNo={0}],[locNo={1}]", wrkMast.getWrkNo(), wrkMast.getLocNo());
                                 TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
                                 return FAIL.setMsg("鎷f枡鍏ュ簱 ===>> 淇敼搴撳瓨鏄庣粏鏁伴噺澶辫触; [workNo=" + wrkMast.getWrkNo() + "],[locNo=" + wrkMast.getLocNo() + "]");
                             }
+                        }else {
+                            return FAIL.setMsg("鎷f枡鍏ュ簱 ===>> 鎼滅储搴撳瓨鏄庣粏澶辫触缁撴灉涓虹┖; [workNo=" + wrkMast.getWrkNo() + "],[locNo=" + wrkMast.getLocNo() + "]");
                         }
                         if (storeType != null) {
                             OrderDetl orderDetl = new OrderDetl();
@@ -491,6 +493,7 @@
                     if (null != sourceLoc) {
                         sourceLoc.setBarcode("");
                         sourceLoc.setLocSts("O");
+                        locMast.setMk(sourceLoc.getMk());
                         sourceLoc.setMk("N");
                         sourceLoc.setModiTime(now);
                         sourceLoc.setIoTime(now);
@@ -503,7 +506,6 @@
                     // 淇敼鐩爣搴撲綅鐘舵�� ==> .locSts
                     locMast.setLocSts(locSts);
                     locMast.setBarcode(wrkMast.getBarcode());
-                    locMast.setMk("Y");
                     locMast.setIoTime(now);
                     locMast.setModiTime(now);
                     if (!locMastService.updateById(locMast)) {

--
Gitblit v1.9.1