From 400b66ecb2ab42af18ef9697c5b2a2fb831447a8 Mon Sep 17 00:00:00 2001
From: vincentlu <t1341870251@gmail.com>
Date: 星期一, 29 十二月 2025 12:56:56 +0800
Subject: [PATCH] #

---
 zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/MainService.java |   18 +++++++++++++++---
 1 files changed, 15 insertions(+), 3 deletions(-)

diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/MainService.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/MainService.java
index b3058b4..ba30eab 100644
--- a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/MainService.java
+++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/MainService.java
@@ -100,6 +100,8 @@
     private ActionSorter actionSorter;
     @Autowired
     private StaReserveService staReserveService;
+    @Autowired
+    private ConveyorStationService conveyorStationService;
 
     @SuppressWarnings("all")
     @Transactional
@@ -1494,9 +1496,19 @@
                                 break;
                             case ORI_STA:
                                 sta = staService.getById(currTask.getOriSta());
-                                success = staReserveService.waitingStaReserve(sta, currTask, 1, StaReserveType.OUT);
-                                // load sta
-                                // remove expiredTime
+                                boolean reserveWaitingOk = staReserveService.waitingStaReserve(sta, currTask, 1, StaReserveType.OUT);
+                                if (!reserveWaitingOk) {
+                                    break;
+                                }
+
+                                boolean permit = conveyorStationService.allowAgvWork(sta, currTask, currSeg, StaReserveType.OUT);
+                                if (!permit) {
+                                    // reserve rollback
+                                    staReserveService.rollbackWaitingToReserved(sta, currTask, StaReserveType.OUT);
+                                    break;
+                                }
+
+                                success = true;
                                 break;
                             case DEST_STA:
                                 // place sta

--
Gitblit v1.9.1