From ad0eed3e39e14880c2b8835c6ccd7c7551ce8015 Mon Sep 17 00:00:00 2001
From: cl <1442464845@qq.com>
Date: 星期二, 31 三月 2026 11:48:49 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java |   24 +++++++++++++++++-------
 1 files changed, 17 insertions(+), 7 deletions(-)

diff --git a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
index 7fe5291..b6d62e2 100644
--- a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
@@ -434,11 +434,11 @@
                 wrkDetl.sync(detlDto.getLocDetl());
                 wrkDetl.setOrderNo(""); // 鎵嬪姩鍑哄簱涓嶉渶瑕佸甫鍑哄簱瀛樹腑鐨勫崟鎹紪鍙�
                 wrkDetl.setWrkNo(workNo);
-                wrkDetl.setIoTime(now);
+                wrkDetl.setIoTime(wrkMast.getIoTime());
                 Double anfme = ioType==101?detlDto.getLocDetl().getAnfme():detlDto.getCount();
                 wrkDetl.setAnfme(anfme); // 浣滀笟鏁伴噺
                 wrkDetl.setStock(detlDto.getLocDetl().getAnfme());
-                wrkDetl.setAppeTime(now);
+                wrkDetl.setAppeTime(locMast.getAppeTime());
                 wrkDetl.setAppeUser(userId);
                 wrkDetl.setModiTime(now);
                 wrkDetl.setModiUser(userId);
@@ -546,13 +546,13 @@
                 WrkDetl wrkDetl = new WrkDetl();
                 wrkDetl.sync(mat);
                 wrkDetl.setZpallet(wrkMast.getBarcode());
-                wrkDetl.setIoTime(now);
+                wrkDetl.setIoTime(wrkMast.getIoTime());
                 wrkDetl.setWrkNo(workNo);
                 wrkDetl.setBatch(locDto.getBatch());
                 wrkDetl.setOrderNo(locDto.getOrderNo());
                 wrkDetl.setAnfme(locDto.getAnfme()); // 浣滀笟鏁伴噺
                 wrkDetl.setStock(locDto.getStock());//鎬诲簱瀛�
-                wrkDetl.setAppeTime(locMast.getAppeTime());
+                wrkDetl.setAppeTime(locDetl.getAppeTime());
                 wrkDetl.setAppeUser(userId);
                 wrkDetl.setModiTime(now);
                 wrkDetl.setModiUser(userId);
@@ -570,13 +570,13 @@
                     WrkDetl wrkDetl = new WrkDetl();
                     wrkDetl.sync(mat);
                     wrkDetl.setZpallet(wrkMast.getBarcode());
-                    wrkDetl.setIoTime(now);
+                    wrkDetl.setIoTime(wrkMast.getIoTime());
                     wrkDetl.setWrkNo(workNo);
                     wrkDetl.setBatch(locDto.getBatch());
                     wrkDetl.setOrderNo(orderDto.getOrderNo());
                     wrkDetl.setAnfme(orderDto.getAnfme()); // 鏁伴噺
                     wrkDetl.setStock(locDto.getStock());//鎬诲簱瀛�
-                    wrkDetl.setAppeTime(locMast.getAppeTime());
+                    wrkDetl.setAppeTime(locDetl.getAppeTime());
                     wrkDetl.setAppeUser(userId);
                     wrkDetl.setModiTime(now);
                     wrkDetl.setModiUser(userId);
@@ -598,6 +598,9 @@
                     if (orderDetl == null) {
                         orderDetl = orderDetlService.selectItem(locDto.getOrderNo(), locDto.getMatnr(), null,locDto.getCsocode(),locDto.getIsoseq());
                     }
+                    if (orderDetl == null) {
+                        throw new CoolException("鏈壘鍒拌鍗曟槑缁嗭紝璁㈠崟鍙凤細" + locDto.getOrderNo() + "锛岀墿鏂欙細" + locDto.getMatnr());
+                    }
                     if (!orderDetlService.increase(orderDetl.getOrderId(), orderDetl.getMatnr(), orderDetl.getBatch(), locDto.getAnfme(),locDto.getCsocode(),locDto.getIsoseq())) {
                         throw new CoolException("淇敼璁㈠崟鏄庣粏鏁伴噺澶辫触");
                     }
@@ -615,6 +618,9 @@
                         OrderDetl orderDetl = orderDetlService.selectItem(orderDto.getOrderNo(), locDto.getMatnr(), locDto.getBatch(),locDto.getCsocode(),locDto.getIsoseq());
                         if (orderDetl == null) {
                             orderDetl = orderDetlService.selectItem(orderDto.getOrderNo(), locDto.getMatnr(), null,locDto.getCsocode(),locDto.getIsoseq());
+                        }
+                        if (orderDetl == null) {
+                            throw new CoolException("鏈壘鍒拌鍗曟槑缁嗭紝璁㈠崟鍙凤細" + orderDto.getOrderNo() + "锛岀墿鏂欙細" + locDto.getMatnr());
                         }
 
                         orderAnfme = orderDetl.getAnfme() - orderDetl.getQty();
@@ -645,6 +651,10 @@
             }
         } else {
             throw new CoolException(taskDto.getLocNo() + "搴撲綅涓嶆槸鍦ㄥ簱鐘舵��");
+        }
+        boolean debugd = false;
+        if(debugd){
+            throw new RuntimeException("debug rollback");
         }
     }
 
@@ -879,7 +889,7 @@
             WrkDetl wrkDetl = new WrkDetl();
             wrkDetl.sync(locDetl);
             wrkDetl.setWrkNo(workNo);
-            wrkDetl.setIoTime(now);
+            wrkDetl.setIoTime(wrkMast.getIoTime());
             wrkDetl.setAnfme(locDetl.getAnfme());
             wrkDetl.setAppeTime(now);
             wrkDetl.setAppeUser(userId);

--
Gitblit v1.9.1