From 34879ff4b298a5b6785edced123e1371cbed5d11 Mon Sep 17 00:00:00 2001
From: Administrator <XS@163.COM>
Date: 星期二, 28 四月 2026 13:59:39 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/core/network/real/ZyDualCrnRealConnect.java | 18 +++++++++++++++++-
1 files changed, 17 insertions(+), 1 deletions(-)
diff --git a/src/main/java/com/zy/core/network/real/ZyDualCrnRealConnect.java b/src/main/java/com/zy/core/network/real/ZyDualCrnRealConnect.java
index 6255898..143e510 100644
--- a/src/main/java/com/zy/core/network/real/ZyDualCrnRealConnect.java
+++ b/src/main/java/com/zy/core/network/real/ZyDualCrnRealConnect.java
@@ -216,6 +216,7 @@
RedisUtil redisUtil = SpringUtils.getBean(RedisUtil.class);
redisUtil.set(RedisKeyType.DUAL_CRN_SEND_COMMAND_LOCK.key + deviceConfig.getDeviceNo() + "_" + command.getStation(), "lock", 1);
CommandResponse response = new CommandResponse(false);
+ boolean confirmCommand = command != null && DualCrnTaskModeType.CONFIRM.id.equals(command.getTaskMode());
try {
if (null == command) {
News.error("鍙屽伐浣嶅爢鍨涙満鍐欏叆鍛戒护涓虹┖");
@@ -271,7 +272,22 @@
short destinationPosX = siemensNet.getByteTransform().TransInt16(resultRead.Content, 10);
short destinationPosY = siemensNet.getByteTransform().TransInt16(resultRead.Content, 12);
short destinationPosZ = siemensNet.getByteTransform().TransInt16(resultRead.Content, 14);
- if (taskNo == 0 || taskMode == 0 || sourcePosX == 0 || sourcePosY == 0 || sourcePosZ == 0 || destinationPosX == 0 || destinationPosY == 0 || destinationPosZ == 0) {
+ boolean payloadReady;
+ if (confirmCommand) {
+ // CONFIRM 鍛戒护鏈韩涓嶆惡甯﹀簱浣嶅潗鏍囷紝闆跺潗鏍囨槸鍚堟硶鍊笺��
+ payloadReady = taskNo == command.getTaskNo().shortValue()
+ && taskMode == command.getTaskMode().shortValue();
+ } else {
+ payloadReady = taskNo != 0
+ && taskMode != 0
+ && sourcePosX != 0
+ && sourcePosY != 0
+ && sourcePosZ != 0
+ && destinationPosX != 0
+ && destinationPosY != 0
+ && destinationPosZ != 0;
+ }
+ if (!payloadReady) {
result = siemensNet.Write(address, array);
} else {
break;
--
Gitblit v1.9.1