From f423e1277f91427f0a767bd1224c1260dcb73086 Mon Sep 17 00:00:00 2001
From: wanshenmean <cathay_xy@163.com>
Date: 星期一, 20 四月 2026 22:47:54 +0800
Subject: [PATCH] feat: 添加空箱入库功能及相关优化

---
 Code/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/RobotJob/RobotMessageHandler.cs |   17 +++++++++++++----
 1 files changed, 13 insertions(+), 4 deletions(-)

diff --git a/Code/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/RobotJob/RobotMessageHandler.cs b/Code/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/RobotJob/RobotMessageHandler.cs
index 9bcf06b..e67abf1 100644
--- a/Code/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/RobotJob/RobotMessageHandler.cs
+++ b/Code/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/RobotJob/RobotMessageHandler.cs
@@ -88,8 +88,14 @@
         /// <param name="client">TCP 瀹㈡埛绔繛鎺�</param>
         /// <param name="state">鏈哄櫒浜哄綋鍓嶇姸鎬�</param>
         /// <returns>鍝嶅簲娑堟伅锛屽鏋滄棤闇�鍥炲鍒欒繑鍥� null</returns>
-        public async Task<string?> HandleMessageReceivedAsync(string message, bool isJson, TcpClient client, RobotSocketState state)
+        public async Task<string?> HandleMessageReceivedAsync(string message, bool isJson, TcpClient client)
         {
+            var state = _stateManager.GetState(client.Client.RemoteEndPoint.ToString());
+            if(state.OperStatus == message)
+            {
+                // 澶勭悊鎴愬姛鍚庯紝灏嗗師娑堟伅鍥炲啓鍒板鎴风锛堜繚鎸佸師鏈夎涓猴級
+                await _socketClientGateway.SendMessageAsync(client, message);
+            }
             // 璁板綍鎺ユ敹鍒扮殑娑堟伅鏃ュ織
             _logger.LogInformation($"鎺ユ敹鍒板鎴风銆恵state.RobotCrane?.DeviceName}銆戝彂閫佹秷鎭�恵message}銆�");
             QuartzLogger.Info($"鎺ユ敹鍒板鎴风娑堟伅銆恵message}銆�", state.RobotCrane?.DeviceName);
@@ -110,9 +116,12 @@
             // 绠�鍗曞懡浠ゅ寘鎷細homing銆乭omed銆乺unning銆乸ausing銆乺unmode銆乧ontrolmode 绛�
             if (await _simpleCommandHandler.HandleAsync(messageLower, state))
             {
-                // 澶勭悊鎴愬姛鍚庯紝灏嗗師娑堟伅鍥炲啓鍒板鎴风锛堜繚鎸佸師鏈夎涓猴級
-                await _socketClientGateway.SendMessageAsync(client, message);
-                QuartzLogger.Info($"鍙戦�佹秷鎭細銆恵message}銆�", state.RobotCrane?.DeviceName);
+                if(messageLower != "batteryarrived")
+                {
+                    // 澶勭悊鎴愬姛鍚庯紝灏嗗師娑堟伅鍥炲啓鍒板鎴风锛堜繚鎸佸師鏈夎涓猴級
+                    await _socketClientGateway.SendMessageAsync(client, message);
+                    QuartzLogger.Info($"鍙戦�佹秷鎭細銆恵message}銆�", state.RobotCrane?.DeviceName);
+                }
 
                 // 瀹夊叏鏇存柊鐘舵�佸埌鏁版嵁搴�
                 _stateManager.TryUpdateStateSafely(state.IPAddress, state);

--
Gitblit v1.9.3