From 13d295c4210ee589b3e524bd157f85c63bca5a3e Mon Sep 17 00:00:00 2001
From: zwl <1051256694@qq.com>
Date: 星期四, 30 四月 2026 13:12:08 +0800
Subject: [PATCH] 1.出库单据转历史档有问题 2.新增单据历史档 3.修复入库完成转明细失败

---
 src/main/java/com/zy/asrs/task/handler/WorkLogHandler.java |   39 ++++++++++++++++++++++++++++++++-------
 1 files changed, 32 insertions(+), 7 deletions(-)

diff --git a/src/main/java/com/zy/asrs/task/handler/WorkLogHandler.java b/src/main/java/com/zy/asrs/task/handler/WorkLogHandler.java
index c2a8a9a..1237605 100644
--- a/src/main/java/com/zy/asrs/task/handler/WorkLogHandler.java
+++ b/src/main/java/com/zy/asrs/task/handler/WorkLogHandler.java
@@ -40,12 +40,16 @@
     @Autowired
     private BasArmMastLogService basArmMastLogService;
     @Autowired
+    private BasAgvMastLogService basAgvMastLogService;
+    @Autowired
     private BasArmMastService basArmMastService;
-
+    @Autowired
+    private BasAgvMastService basAgvMastService;
     @Transactional
     public ReturnT<String> start(WrkMast wrkMast) {
         try {
             List<WrkDetl> wrkDetls = wrkDetlService.selectByWrkNo(wrkMast.getWrkNo());
+            int wrkDetlCount = Cools.isEmpty(wrkDetls) ? 0 : wrkDetls.size();
             // 淇敼璁㈠崟鐘舵�� 浣滀笟涓� ===>> 宸插畬鎴�
             if (!Cools.isEmpty(wrkDetls)) {
                 Iterator<WrkDetl> iterator = wrkDetls.iterator();
@@ -106,17 +110,17 @@
             if (!wrkMastLogService.save(wrkMast.getWrkNo())) {
                 exceptionHandle("淇濆瓨宸ヤ綔鍘嗗彶妗workNo={0}]澶辫触", wrkMast.getWrkNo());
             }
+            // 淇濆瓨宸ヤ綔鏄庣粏妗e巻鍙叉。
+            if (wrkDetlCount > 0 && !wrkDetlLogService.save(wrkMast.getWrkNo())) {
+                exceptionHandle("淇濆瓨宸ヤ綔鏄庣粏鍘嗗彶妗workNo={0}]澶辫触", wrkMast.getWrkNo());
+            }
             // 鍒犻櫎宸ヤ綔涓绘。
             if (!wrkMastService.deleteById(wrkMast)) {
                 exceptionHandle("鍒犻櫎宸ヤ綔涓绘。[workNo={0}]澶辫触", wrkMast.getWrkNo());
             }
-            // 淇濆瓨宸ヤ綔鏄庣粏妗e巻鍙叉。
-            if (!wrkDetlLogService.save(wrkMast.getWrkNo())) {
-//                exceptionHandle("淇濆瓨宸ヤ綔鏄庣粏鍘嗗彶妗workNo={0}]澶辫触", wrkMast.getWrkNo());
-            }
             // 鍒犻櫎宸ヤ綔鏄庣粏妗�
-            if (!wrkDetlService.delete(new EntityWrapper<WrkDetl>().eq("wrk_no", wrkMast.getWrkNo()))) {
-//                exceptionHandle("鍒犻櫎宸ヤ綔鏄庣粏妗workNo={0}]澶辫触", wrkMast.getWrkNo());
+            if (wrkDetlCount > 0 && !wrkDetlService.delete(new EntityWrapper<WrkDetl>().eq("wrk_no", wrkMast.getWrkNo()))) {
+                exceptionHandle("鍒犻櫎宸ヤ綔鏄庣粏妗workNo={0}]澶辫触", wrkMast.getWrkNo());
             }
         } catch (Exception e) {
             log.error("fail", e);
@@ -148,4 +152,25 @@
         return SUCCESS;
     }
 
+    @Transactional
+    public ReturnT<String> startAgv(BasAgvMast basAgvMast) {
+        try {
+            BasAgvMastLog basAgvMastLog = new BasAgvMastLog(basAgvMast);
+            // 淇濆瓨宸ヤ綔涓绘。鍘嗗彶妗�
+            if (!basAgvMastLogService.insert(basAgvMastLog)) {
+                exceptionHandle("淇濆瓨ARM宸ヤ綔鍘嗗彶妗id={0}]澶辫触", basAgvMast.getId());
+            }
+            // 鍒犻櫎宸ヤ綔涓绘。
+            if (!basAgvMastService.deleteById(basAgvMast)) {
+                exceptionHandle("鍒犻櫎ARM宸ヤ綔涓绘。[id={0}]澶辫触", basAgvMast.getId());
+            }
+        } catch (Exception e) {
+            log.error("fail", e);
+            e.printStackTrace();
+            TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
+            return FAIL.setMsg(e.getMessage());
+        }
+        return SUCCESS;
+    }
+
 }

--
Gitblit v1.9.1