From b6c983ac19c0c80744795e122575f4b9ac145414 Mon Sep 17 00:00:00 2001
From: wanshenmean <cathay_xy@163.com>
Date: 星期日, 19 四月 2026 18:53:40 +0800
Subject: [PATCH] feat: 更新机器人任务处理逻辑和接口配置

---
 Code/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/RobotJob/Workflow/RobotPrefixCommandHandler.cs |   48 ++++++++++++++++++++++++++++--------------------
 1 files changed, 28 insertions(+), 20 deletions(-)

diff --git a/Code/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/RobotJob/Workflow/RobotPrefixCommandHandler.cs b/Code/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/RobotJob/Workflow/RobotPrefixCommandHandler.cs
index 691bde5..10c82be 100644
--- a/Code/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/RobotJob/Workflow/RobotPrefixCommandHandler.cs
+++ b/Code/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/RobotJob/Workflow/RobotPrefixCommandHandler.cs
@@ -1,7 +1,7 @@
 using System.Net.Sockets;
 using WIDESEAWCS_Common.HttpEnum;
 using WIDESEAWCS_Common.TaskEnum;
-using WIDESEAWCS_DTO.TaskInfo;
+using WIDESEAWCS_Core.Helper;
 using WIDESEAWCS_ITaskInfoService;
 using WIDESEAWCS_Model.Models;
 using WIDESEAWCS_Tasks.Workflow.Abstractions;
@@ -270,28 +270,36 @@
                     // 鎹㈢洏浠诲姟锛氭牴鎹樁娈靛尯鍒嗗鐞�
                     if (state.ChangePalletPhase == 2)
                     {
-                        if (isFlowA)
-                        {
-                            // 娴佸悜A Phase2锛氭斁鍋囩數鑺埌鐩爣鎵樼洏锛屼笉璋冪敤 API锛屼笉閫掑璁℃暟
-                            // 浠呮洿鏂扮姸鎬�
-                        }
-                        else
-                        {
-                            // 娴佸悜B Phase2锛氭斁姝e父鐢佃姱锛岄�掑璁℃暟
-                            state.RobotTaskTotalNum += positions.Length;
-                            if (task != null)
-                                task.RobotTaskTotalNum -= positions.Length;
+                        // Phase 2锛氭斁姝e父鐢佃姱鍒扮洰鏍囨墭鐩樺畬鎴愶紝閫掑璁℃暟
+                        state.RobotTaskTotalNum += positions.Length;
+                        if (task != null)
+                            task.RobotTaskTotalNum -= positions.Length;
 
-                            // 鏋勫缓搴撳瓨 DTO 骞惰皟鐢� ChangePalletAsync API
-                            var stockDTO = RobotTaskProcessor.BuildStockDTO(state, positions);
-                            var result = _taskProcessor.PostGroupPalletAsync(nameof(ConfigKey.ChangePalletAsync), stockDTO);
-                            putSuccess = result.Data.Status && result.IsSuccess;
-                        }
+                        // 涓ゆ祦鍚戝潎璋冪敤鎹㈢洏 API
+                        var stockDTO = RobotTaskProcessor.BuildStockDTO(state, positions);
+                        var result = _taskProcessor.PostGroupPalletAsync(nameof(ConfigKey.ChangePalletAsync), stockDTO);
+                        putSuccess = result.Data.Status && result.IsSuccess;
+
+                        // 鍒囧洖 Phase 1锛岀户缁彇姝e父鐢佃姱
+                        state.ChangePalletPhase = 1;
                     }
                     else if (state.ChangePalletPhase == 4)
                     {
-                        // 娴佸悜B Phase4锛氭斁鍋囩數鑺埌5鍙蜂綅锛屼笉璋冪敤 API锛屼笉閫掑璁℃暟锛岄噴鏀剧偣浣�
-                        _fakeBatteryPositionService.MarkAsAvailable(positions.ToList());
+                        if (isFlowA)
+                        {
+                            // 娴佸悜A锛氭斁鍋囩數鑺埌鐩爣鎵樼洏锛屼粎閫掑璁℃暟锛屼笉璋冪敤 API
+                            state.RobotTaskTotalNum += positions.Length;
+                            if (task != null)
+                                task.RobotTaskTotalNum -= positions.Length;
+                        }
+                        else
+                        {
+                            // 娴佸悜B锛氭斁鍋囩數鑺埌5鍙蜂綅锛岄噴鏀剧偣浣�
+                            _fakeBatteryPositionService.MarkAsAvailable(positions.ToList());
+                        }
+
+                        // 鍒囧洖 Phase 3锛岀户缁彇鍋囩數鑺�
+                        state.ChangePalletPhase = 3;
                     }
                     else
                     {
@@ -352,4 +360,4 @@
             }
         }
     }
-}
+}
\ No newline at end of file

--
Gitblit v1.9.3