From 463b9e4b68b8ab62a11c6985081fd5d62692cc79 Mon Sep 17 00:00:00 2001
From: cpT <1@123>
Date: 星期四, 29 一月 2026 19:42:07 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/core/thread/impl/ZySiemensDualCrnThread.java | 31 ++++++++++++++++++++++++++-----
1 files changed, 26 insertions(+), 5 deletions(-)
diff --git a/src/main/java/com/zy/core/thread/impl/ZySiemensDualCrnThread.java b/src/main/java/com/zy/core/thread/impl/ZySiemensDualCrnThread.java
index 34b82bb..7bf7e62 100644
--- a/src/main/java/com/zy/core/thread/impl/ZySiemensDualCrnThread.java
+++ b/src/main/java/com/zy/core/thread/impl/ZySiemensDualCrnThread.java
@@ -67,7 +67,7 @@
try {
deviceLogCollectTime = Utils.getDeviceLogCollectTime();
readStatus();
- Thread.sleep(100);
+ Thread.sleep(50);
} catch (Exception e) {
log.error("DualCrnThread Fail", e);
}
@@ -92,6 +92,7 @@
map.put("commands", commandList);
map.put("idx", 1);
redisUtil.set(RedisKeyType.DUAL_CRN_COMMAND_.key + command.getTaskNo(), JSON.toJSONString(map, SerializerFeature.DisableCircularReferenceDetect), 60 * 60 * 24);
+ redisUtil.set(RedisKeyType.DUAL_CRN_COMMAND_STATION_TASK_NO.key + crnProtocol.getCrnNo() + "_" + command.getStation(), command.getTaskNo(), 60 * 60 * 24);
sendCommand(command);
} else if (step == 3) {
sendCommand((DualCrnCommand) task.getData());
@@ -123,8 +124,18 @@
}
}
- if(crnProtocol.getTaskNo() > 0 && crnProtocol.getStatus().equals(DualCrnStatusType.FETCH_COMPLETE.id)) {
- Integer taskNo = crnProtocol.getTaskNo();
+ if(crnProtocol.getTaskNo() == 0 && crnProtocol.getStatus().equals(DualCrnStatusType.FETCH_COMPLETE.id)) {
+ Integer taskNo = null;
+ Object stationObj = redisUtil.get(RedisKeyType.DUAL_CRN_COMMAND_STATION_TASK_NO.key + crnProtocol.getCrnNo() + "_" + 1);
+ if(stationObj != null) {
+ taskNo = Integer.parseInt(String.valueOf(stationObj));
+ }
+
+ if (taskNo == null) {
+ News.error("鍙屽伐浣嶅爢鍨涙満锛屽伐浣�1绌洪棽绛夊緟涓嬪彂鍛戒护锛屼絾鏈壘鍒板伐浣滃彿銆傚爢鍨涙満鍙�={}", crnProtocol.getCrnNo());
+ continue;
+ }
+
Object commandObj = redisUtil.get(RedisKeyType.DUAL_CRN_COMMAND_.key + taskNo);
if (commandObj == null) {
News.error("鍙屽伐浣嶅爢鍨涙満锛屽伐浣�1绌洪棽绛夊緟涓嬪彂鍛戒护锛屼絾鏈壘鍒板懡浠ゃ�傚爢鍨涙満鍙�={}锛屽伐浣滃彿={}", crnProtocol.getCrnNo(), taskNo);
@@ -181,8 +192,18 @@
redisUtil.set(RedisKeyType.DUAL_CRN_COMMAND_.key + taskNo, commandMap.toJSONString(), 60 * 60 * 24);
}
- if(crnProtocol.getTaskNoTwo() > 0 && crnProtocol.getStatusTwo() == DualCrnStatusType.IDLE.id) {
- Integer taskNo = crnProtocol.getTaskNoTwo();
+ if(crnProtocol.getTaskNoTwo() == 0 && crnProtocol.getStatusTwo().equals(DualCrnStatusType.FETCH_COMPLETE.id)) {
+ Integer taskNo = null;
+ Object stationObj = redisUtil.get(RedisKeyType.DUAL_CRN_COMMAND_STATION_TASK_NO.key + crnProtocol.getCrnNo() + "_" + 2);
+ if(stationObj != null) {
+ taskNo = Integer.parseInt(String.valueOf(stationObj));
+ }
+
+ if (taskNo == null) {
+ News.error("鍙屽伐浣嶅爢鍨涙満锛屽伐浣�1绌洪棽绛夊緟涓嬪彂鍛戒护锛屼絾鏈壘鍒板伐浣滃彿銆傚爢鍨涙満鍙�={}", crnProtocol.getCrnNo());
+ continue;
+ }
+
Object commandObj = redisUtil.get(RedisKeyType.DUAL_CRN_COMMAND_.key + taskNo);
if (commandObj == null) {
News.error("鍙屽伐浣嶅爢鍨涙満锛屽伐浣�2绌洪棽绛夊緟涓嬪彂鍛戒护锛屼絾鏈壘鍒板懡浠ゃ�傚爢鍨涙満鍙�={}锛屽伐浣滃彿={}", crnProtocol.getCrnNo(), taskNo);
--
Gitblit v1.9.1