From 56e2544343ec595f9f5ad7c6b0457188916a9043 Mon Sep 17 00:00:00 2001
From: zhou zhou <3272660260@qq.com>
Date: 星期五, 12 十二月 2025 15:04:42 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java |   42 ++++++++++++++++++++++++++++--------------
 1 files changed, 28 insertions(+), 14 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 2179a15..41acd02 100644
--- a/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java
+++ b/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java
@@ -6,10 +6,7 @@
 import com.zy.asrs.entity.*;
 import com.zy.asrs.enums.LocStsType;
 import com.zy.asrs.service.*;
-import com.zy.asrs.service.impl.BasStationServiceImpl;
-import com.zy.asrs.service.impl.LocCacheServiceImpl;
-import com.zy.asrs.service.impl.OrderPakinServiceImpl;
-import com.zy.asrs.service.impl.TaskDetlServiceImpl;
+import com.zy.asrs.service.impl.*;
 import com.zy.asrs.task.AbstractHandler;
 import com.zy.asrs.task.core.ReturnT;
 import lombok.extern.slf4j.Slf4j;
@@ -61,6 +58,8 @@
     private CheckOrderDetlService checkOrderDetlService;
     @Autowired
     private WaitPakinLogService waitPakinLogService;
+    @Autowired
+    private BasStationDetlService basStationDetlService;
 
     public ReturnT<String> start(WrkMast wrkMast) {
         // 4.鍏ュ簱瀹屾垚
@@ -711,6 +710,7 @@
      * @description: AGV鍑哄簱浠诲姟
      * @version 1.0
      */
+    @Transactional(rollbackFor = Exception.class)
     public ReturnT<String> agvDoOut(Task task) {
         if (task.getIoType().equals(101)) {
             Date now = new Date();
@@ -726,6 +726,18 @@
                 return FAIL.setMsg(
                         "鍏ㄦ澘鍑哄簱 ===>> 宸ヤ綔鏄庣粏妗d负绌�; [workNo=" + task.getWrkNo() + "],[locNo=" + task.getSourceLocNo() + "]");
             }
+
+            BasStation devNo = basStationService
+                    .selectOne(new EntityWrapper<BasStation>().eq("dev_no", task.getStaNo()));
+            if (Objects.isNull(devNo)) {
+                throw new CoolException("绔欑偣锛�" + task.getSourceStaNo() + ", 涓嶅瓨鍦紒锛�");
+            }
+            devNo.setLocSts(LocStsType.LOC_STS_TYPE_F.type);
+            devNo.setModiTime(new Date());
+            if (!basStationService.updateById(devNo)) {
+                throw new CoolException("绔欑偣淇℃伅淇敼澶辫触锛侊紒");
+            }
+
             for (TaskDetl wrkDetl : wrkDetls101) {
                 // 鏇存柊璁㈠崟瀹屾垚鏁伴噺
                 OrderDetlPakout orderDetlPakout = orderDetlPakoutService.selectItem(wrkDetl.getOrderNo(),
@@ -751,6 +763,15 @@
                         }
                     }
                 } catch (Exception ignore) {
+
+                }
+
+                BasStationDetl stationDetl = new BasStationDetl();
+                BeanUtils.copyProperties(wrkDetl, stationDetl);
+                stationDetl.setDevNo(devNo.getDevNo())
+                        .setOrderNo(wrkDetl.getOrderNo());
+                if (!basStationDetlService.insert(stationDetl)) {
+                    throw new CoolException("绔欑偣鏄庣粏淇濆瓨澶辫触锛侊紒");
                 }
             }
             // 鍒犻櫎宸ヤ綔妗f簮搴撲綅鐨勫簱瀛樻槑缁�
@@ -774,16 +795,8 @@
                 throw new CoolException("褰撳墠搴撲綅鐘舵��" + locMast.getLocSts() + ", 鏃犳硶鎵ц鍑哄簱鎿嶄綔锛侊紒");
             }
 
-            BasStation devNo = basStationService
-                    .selectOne(new EntityWrapper<BasStation>().eq("dev_no", task.getStaNo()));
-            if (Objects.isNull(devNo)) {
-                throw new CoolException("绔欑偣锛�" + task.getSourceStaNo() + ", 涓嶅瓨鍦紒锛�");
-            }
-            devNo.setLocSts(LocStsType.LOC_STS_TYPE_F.type);
-            devNo.setModiTime(new Date());
-            if (!basStationService.updateById(devNo)) {
-                throw new CoolException("绔欑偣淇℃伅淇敼澶辫触锛侊紒");
-            }
+
+
             task.setWrkSts(15L);
             if (!taskService.updateById(task)) {
                 throw new CoolException("浠诲姟鐘舵�佷慨鏀瑰け璐ワ紒锛�");
@@ -846,6 +859,7 @@
             if (Objects.isNull(apallet)) {
                 throw new CoolException("鏁版嵁閿欒锛氱粍鎵樻暟鎹笉瀛樺湪锛侊紒");
             }
+            log.info(apallet.size() + "-------------------------------------------------------------------");
             apallet.forEach(pakin -> {
                 LocDetl detl = new LocDetl();
                 BeanUtils.copyProperties(pakin, detl);

--
Gitblit v1.9.1