From 8ab75ee6f68c3cde70319b9863db6947f668175f Mon Sep 17 00:00:00 2001
From: Administrator <15274802129@163.com>
Date: Tue, 22 Sep 2026 13:58:40 +0800
Subject: [PATCH] fix(station): 修复指令执行失败时状态更新异常问题

---
 src/main/java/com/xcong/excoin/modules/gateApi/GateCommandConsumer.java |    6 +++++-
 1 files changed, 5 insertions(+), 1 deletions(-)

diff --git a/src/main/java/com/xcong/excoin/modules/gateApi/GateCommandConsumer.java b/src/main/java/com/xcong/excoin/modules/gateApi/GateCommandConsumer.java
index 72134a6..98d1c11 100644
--- a/src/main/java/com/xcong/excoin/modules/gateApi/GateCommandConsumer.java
+++ b/src/main/java/com/xcong/excoin/modules/gateApi/GateCommandConsumer.java
@@ -82,11 +82,15 @@
             }
         } catch (Exception e) {
             success = false;
-            newState = "ERROR";
             message = e.getMessage();
             log.error("[Gate] 指令执行失败", e);
         }
 
+        // 指令异常/未知类型时 newState 可能为空,统一回退为当前真实状态,避免污染 Station 侧实例状态
+        if (newState == null || newState.isEmpty()) {
+            newState = strategy.getState().name();
+        }
+
         // 发送 ACK 到 Station
         CmdAckMsg ack = CmdAckMsg.builder()
                 .commandId(cmd.getCommandId())

--
Gitblit v1.9.1