From 120c7f7d11e927461b58ec4235a28a5ec845a0e4 Mon Sep 17 00:00:00 2001
From: Junjie <fallin.jie@qq.com>
Date: 星期二, 24 二月 2026 11:09:03 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/core/utils/DualCrnOperateProcessUtils.java |   18 ++++++++++++------
 1 files changed, 12 insertions(+), 6 deletions(-)

diff --git a/src/main/java/com/zy/core/utils/DualCrnOperateProcessUtils.java b/src/main/java/com/zy/core/utils/DualCrnOperateProcessUtils.java
index 39895fe..760f80d 100644
--- a/src/main/java/com/zy/core/utils/DualCrnOperateProcessUtils.java
+++ b/src/main/java/com/zy/core/utils/DualCrnOperateProcessUtils.java
@@ -91,6 +91,10 @@
                 continue;
             }
 
+            if(dualCrnProtocol.getTaskSend() != 0 || dualCrnProtocol.getTaskSendTwo() != 0) {
+                continue;
+            }
+
             this.crnExecute(basDualCrnp, dualCrnThread);
         }
     }
@@ -684,12 +688,14 @@
                 continue;
             }
 
-            if(dualCrnProtocol.getTaskNo() > 0 && dualCrnProtocol.getStatus() == DualCrnStatusType.WAITING.id) {
+            if(dualCrnProtocol.getTaskNo() > 0 && dualCrnProtocol.getTaskSend() == 0 && dualCrnProtocol.getStatus() == DualCrnStatusType.WAITING.id) {
                 executeFinish(basDualCrnp, dualCrnThread, dualCrnProtocol, dualCrnProtocol.getTaskNo(), 1);
+                continue;
             }
 
-            if(dualCrnProtocol.getTaskNoTwo() > 0 && dualCrnProtocol.getStatusTwo() == DualCrnStatusType.WAITING.id) {
+            if(dualCrnProtocol.getTaskNoTwo() > 0 && dualCrnProtocol.getTaskSendTwo() == 0 && dualCrnProtocol.getStatusTwo() == DualCrnStatusType.WAITING.id) {
                 executeFinish(basDualCrnp, dualCrnThread, dualCrnProtocol, dualCrnProtocol.getTaskNoTwo(), 2);
+                continue;
             }
         }
     }
@@ -753,7 +759,7 @@
                 return;
             }
 
-            DualCrnCommand resetCommand = dualCrnThread.getResetCommand(dualCrnProtocol.getCrnNo(), station);
+            DualCrnCommand resetCommand = dualCrnThread.getResetCommand(taskNo, dualCrnProtocol.getCrnNo(), station);
             boolean offer = MessageQueue.offer(SlaveType.DualCrn, dualCrnProtocol.getCrnNo(), new Task(3, resetCommand));
             if (offer) {
                 wrkMast.setWrkSts(updateWrkSts);
@@ -765,9 +771,10 @@
                 redisUtil.set(RedisKeyType.DUAL_CRN_IO_EXECUTE_FINISH_LIMIT.key + basDualCrnp.getCrnNo() + "_" + taskNo, "lock", 10);
             }
         }else {
-            DualCrnCommand resetCommand = dualCrnThread.getResetCommand(dualCrnProtocol.getCrnNo(), station);
+            DualCrnCommand resetCommand = dualCrnThread.getResetCommand(taskNo, dualCrnProtocol.getCrnNo(), station);
             MessageQueue.offer(SlaveType.DualCrn, dualCrnProtocol.getCrnNo(), new Task(3, resetCommand));
             News.info("鍙屽伐浣嶅爢鍨涙満鍛戒护瀹屾垚纭鎴愬姛锛屽爢鍨涙満鍙�={}锛屽伐浣滃彿={}", basDualCrnp.getCrnNo(), taskNo);
+            redisUtil.set(RedisKeyType.DUAL_CRN_IO_EXECUTE_FINISH_LIMIT.key + basDualCrnp.getCrnNo() + "_" + taskNo, "lock", 10);
         }
     }
 
@@ -798,8 +805,7 @@
         String shallowLocNo = Utils.getLocNo(shallowRow, Utils.getBay(locNo), Utils.getLev(locNo));
         LocMast shallowLocMast = locMastService.queryByLoc(shallowLocNo);
         if (shallowLocMast == null) {
-            News.taskInfo(taskNo, "娴呭簱浣�:{} 鏁版嵁涓嶅瓨鍦�", shallowLocNo);
-            return false;
+            return true;
         }
 
         if (shallowLocMast.getLocSts().equals("O")) {

--
Gitblit v1.9.1