From 2468af88e9ee9901f1d4d6f1cfdb6361c7400730 Mon Sep 17 00:00:00 2001
From: Junjie <DELL@qq.com>
Date: 星期一, 02 二月 2026 15:52:05 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/core/network/real/ZyCrnV2RealConnect.java |   13 ++++++++++++-
 1 files changed, 12 insertions(+), 1 deletions(-)

diff --git a/src/main/java/com/zy/core/network/real/ZyCrnV2RealConnect.java b/src/main/java/com/zy/core/network/real/ZyCrnV2RealConnect.java
index f5185ef..cad8f9b 100644
--- a/src/main/java/com/zy/core/network/real/ZyCrnV2RealConnect.java
+++ b/src/main/java/com/zy/core/network/real/ZyCrnV2RealConnect.java
@@ -6,9 +6,12 @@
 import HslCommunication.Profinet.Siemens.SiemensS7Net;
 import com.alibaba.fastjson.JSON;
 import com.core.common.DateUtils;
+import com.core.common.SpringUtils;
 import com.zy.asrs.entity.DeviceConfig;
+import com.zy.common.utils.RedisUtil;
 import com.zy.core.News;
 import com.zy.core.cache.OutputQueue;
+import com.zy.core.enums.RedisKeyType;
 import com.zy.core.model.CommandResponse;
 import com.zy.core.model.command.CrnCommand;
 import com.zy.core.network.api.ZyCrnConnectApi;
@@ -101,7 +104,13 @@
                             array[7] = (short) 0;
                             array[8] = (short) 0;
                             array[9] = (short) 0;
-                            OperateResult taskClearResult = siemensNet.Write("DB100.0", array);
+
+                            RedisUtil redisUtil = SpringUtils.getBean(RedisUtil.class);
+                            Object lock = redisUtil.get(RedisKeyType.CRN_SEND_COMMAND_LOCK.key + deviceConfig.getDeviceNo());
+                            if (lock == null) {
+                                OperateResult taskClearResult = siemensNet.Write("DB100.0", array);
+                                redisUtil.set(RedisKeyType.CLEAR_CRN_TASK_LIMIT.key + deviceConfig.getDeviceNo(), "lock", 3);
+                            }
                         }
                     }
                 }
@@ -121,6 +130,8 @@
 
     @Override
     public CommandResponse sendCommand(CrnCommand command) {
+        RedisUtil redisUtil = SpringUtils.getBean(RedisUtil.class);
+        redisUtil.set(RedisKeyType.CRN_SEND_COMMAND_LOCK.key + deviceConfig.getDeviceNo(), "lock", 5);
         CommandResponse response = new CommandResponse(false);
         try {
             if (null == command) {

--
Gitblit v1.9.1