From 7c315b53808a66a2f1faf90930ecffdc85ba455f Mon Sep 17 00:00:00 2001
From: 1 <1@123>
Date: 星期二, 13 五月 2025 11:34:15 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java |   34 ++++++++++++----------------------
 1 files changed, 12 insertions(+), 22 deletions(-)

diff --git a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
index 077784a..feaa189 100644
--- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -1400,22 +1400,13 @@
                 || (!rgvProtocol.getStatusType().equals(RgvStatusType.IDLE) && !rgvProtocol.getStatusType().equals(RgvStatusType.ROAM))) {
             return false;
         }
-        RgvProtocol rgvProtocolOther = RgvStatusCache.getRgvStatus(slave.getId());
-        RgvTaskProtocol rgvTaskProtocolOther = RgvTaskCache.getRgvStatus(slave.getId());
 
-        if (rgvProtocolOther == null) {
-            return true;
-        }
-        if (rgvProtocolOther.statusEnable) {
-            if (rgvProtocolOther.getModeType().equals(RgvModeType.AUTO)
-                    && rgvProtocolOther.getStatusType().equals(RgvStatusType.IDLE)
-                    && rgvProtocolOther.getLoaded()==0) {
-                return false;
-            }
+        if (rgvProtocol.getLoaded()!=0) {
+            return false;
         }
         return true;
     }
-    public boolean rgvOtherIDLE(RgvSlave slave) {
+    public boolean rgvOtherIDLE(RgvSlave slave,Integer staNo) {
         RgvProtocol rgvProtocol = RgvStatusCache.getRgvStatus(slave.getId());
         RgvTaskProtocol rgvTaskProtocol = RgvTaskCache.getRgvStatus(slave.getId());
 
@@ -1427,15 +1418,15 @@
             return false;
         }
         RgvProtocol rgvProtocolOther = RgvStatusCache.getRgvStatus(slave.getOtherId());
-        RgvTaskProtocol rgvTaskProtocolOther = RgvTaskCache.getRgvStatus(slave.getOtherId());
 
         if (rgvProtocolOther == null) {
             return true;
         }
         if (rgvProtocolOther.statusEnable) {
-            if (rgvProtocolOther.getModeType().equals(RgvModeType.AUTO)
-                    && rgvProtocolOther.getStatusType().equals(RgvStatusType.IDLE)
-                    && rgvProtocolOther.getLoaded()==0) {
+            BasDevpPosition basDevpPosition = basDevpPositionService.selectOne(new EntityWrapper<BasDevpPosition>().eq("DEV_NO", staNo));
+            if (Math.abs(basDevpPosition.getPlcPosition()-rgvProtocol.getRgvPos())
+                    >=
+                    Math.abs(basDevpPosition.getPlcPosition()-rgvProtocolOther.getRgvPos())){
                 return false;
             }
         }
@@ -1491,7 +1482,7 @@
                     for (RgvSlave.RgvStn inSta : rgvSlave.getRgvInSta()) {
                         TaskWrk taskWrk = deviceDetection(inSta);
                         if (taskWrk != null) {
-                            if (taskWrk.getTaskNo().equals(taskNoNow)) continue;
+                            if (taskWrk.getWrkNo().toString().equals(taskNoNow)) continue;
                             taskWrkList.add(taskWrk);
                             staList.add(inSta.getStaNo());
                         }
@@ -1550,10 +1541,9 @@
                                 }
                             }
                         }
-
-                        if (!sign){
+                        if (!sign && belongToRange.size()==1){
                             if (rgvOtherIDLEOther(rgvSlave)){
-                                if (!rgvOtherIDLE(rgvSlave)){
+                                if (!rgvOtherIDLE(rgvSlave,belongToRange.get(0))){
                                     sign=true;
                                 }
                             }
@@ -1693,7 +1683,7 @@
                 BasDevpPosition basDevpPositionSou = basDevpPositionService.selectOne(new EntityWrapper<BasDevpPosition>().eq("DEV_NO", rgvStn.getStaNo()));
                 BasDevpPosition basDevpPositionEnd = basDevpPositionService.selectOne(new EntityWrapper<BasDevpPosition>().eq("DEV_NO", targetPointConvert));
                 //鎵ц
-                issuedTake.setTaskNo(Long.valueOf(taskWrk.getTaskNo()));
+                issuedTake.setTaskNo(Long.valueOf(taskWrk.getWrkNo()));
                 issuedTake.setTaskStatus(2);
                 issuedTake.setTaskNoDirection(issuedTake.gettaskNoDirection$(issuedTake.getTaskNo(), issuedTake.getTaskStatus()));
                 issuedTake.setTargetPosition(basDevpPositionSou.getPlcPosition());
@@ -1701,7 +1691,7 @@
                 issuedTake.setDirection(basDevpPositionSou.getRgvSign()==1);
 
 
-                issuedPut.setTaskNo(Long.valueOf(taskWrk.getTaskNo()));
+                issuedPut.setTaskNo(Long.valueOf(taskWrk.getWrkNo()));
                 issuedPut.setTaskStatus(3);
                 issuedPut.setTaskNoDirection(issuedPut.gettaskNoDirection$(issuedPut.getTaskNo(), issuedPut.getTaskStatus()));
                 issuedPut.setTargetPosition(basDevpPositionEnd.getPlcPosition());

--
Gitblit v1.9.1