From 5d55a31d8ce95e511ffb408f38ed06e81742b67e Mon Sep 17 00:00:00 2001
From: xiazhengtongxue <133085197+xiazhengtongxue@users.noreply.github.com>
Date: 星期五, 27 三月 2026 16:17:30 +0800
Subject: [PATCH] 1

---
 项目代码/WCSServices/WIDESEAWCS_Server/Controllers/Task/TaskController.cs |   33 ++++++++++++++++++++++++++++++++-
 1 files changed, 32 insertions(+), 1 deletions(-)

diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCSServices/WIDESEAWCS_Server/Controllers/Task/TaskController.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCSServices/WIDESEAWCS_Server/Controllers/Task/TaskController.cs"
index 59c1943..b939037 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCSServices/WIDESEAWCS_Server/Controllers/Task/TaskController.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCSServices/WIDESEAWCS_Server/Controllers/Task/TaskController.cs"
@@ -2,6 +2,7 @@
 using Microsoft.AspNetCore.Authorization;
 using Microsoft.AspNetCore.Http;
 using Microsoft.AspNetCore.Mvc;
+using System.IO;
 using System.Text;
 using WIDESEA_External.Model;
 using WIDESEAWCS_Common.TaskEnum;
@@ -13,6 +14,7 @@
 using WIDESEAWCS_ITaskInfoService;
 using WIDESEAWCS_Model.Models;
 using WIDESEAWCS_QuartzJob;
+using WIDESEAWCS_TaskInfoService;
 using WIDESEAWCS_Tasks;
 using WIDESEAWCS_Tasks.DBNames;
 
@@ -87,18 +89,29 @@
                         //    WebResponseContent responseContent = Service.ContainerFlow(containerFlowDTO, stationManger.StationDeviceCode, stationManger.PickStationCode);
                         //    if (!responseContent.Status) throw new Exception(responseContent.Message);
                         //}
+                        WriteLog.Write_Log("涓�鏈熷鍣ㄦ祦鍔ㄥ叆搴撴帴鍙�", "浠诲姟淇℃伅", $"杩斿洖杈撻�佺嚎{stationManger.PickStationCode}", $"杩斿洖缁欒緭閫佺嚎鐨勪换鍔′俊鎭細{containerFlowDTO.ToJson()}");
                         commonConveyorLine.Communicator.Write("22", (containerFlowDTO.Direction == "100" ? new byte[] { 1, 0 } : new byte[] { 2, 0 }));
                     }
                     else
                     {
+         
                         CommonConveyorLine commonConveyorLine = (CommonConveyorLine)device;
                         string PickBarCode = commonConveyorLine.GetValue<ConveyorLineDBName, string>(ConveyorLineDBName.R_PickBarCode, stationManger.StationCode).Trim();
+
                         if (containerFlowDTO.ContainerCode != PickBarCode) throw new Exception($"浼犲叆鏂欑鐮亄containerFlowDTO.ContainerCode}锛岃緭閫佹枡绠辩爜{PickBarCode}鏁版嵁閿欒");
+                        
                         if (containerFlowDTO.Direction == "100")
                         {
+                            short W_PickToHode = commonConveyorLine.GetValue<ConveyorLineDBName, short>(ConveyorLineDBName.W_PickToHode, stationManger.StationCode);
+                            if (W_PickToHode != 300)
+                            {
+                                commonConveyorLine.SetValue(ConveyorLineDBName.W_PickToHode, (short)300, stationManger.StationCode);
+                                WriteLog.Write_Log("浜屾湡瀹瑰櫒娴佸姩鍏ュ簱鎺ュ彛", "浠诲姟淇℃伅", $"PLC淇″彿300", $"杈撻�佹枡鐘舵�侊細{W_PickToHode}锛屼笉婊¤冻鍏ュ簱鏉′欢锛屽己鍒跺叆搴撳啓鍏�300");
+                            }
                             WebResponseContent responseContent = Service.ContainerFlow(containerFlowDTO, stationManger.StationDeviceCode, stationManger.PickStationCode);
                             if (!responseContent.Status) throw new Exception(responseContent.Message);
                         }
+                        WriteLog.Write_Log("浜屾湡瀹瑰櫒娴佸姩鍏ュ簱鎺ュ彛", "浠诲姟淇℃伅", $"杩斿洖杈撻�佺嚎{stationManger.PickStationCode}", $"杩斿洖缁欒緭閫佺嚎鐨勪换鍔′俊鎭細{containerFlowDTO.ToJson()}");
                         commonConveyorLine.SetValue(ConveyorLineDBName.W_PickToHode, (short)containerFlowDTO.Direction.ObjToInt(), stationManger.StationCode);
                     }
                     content.OK();
@@ -161,8 +174,16 @@
         {
             return Service.TaskCompleted(taskNum);
         }
-
         /// <summary>
+        /// 浜哄伐鎵嬪姩鍙栨秷鎸囧畾浠诲姟
+        /// </summary>
+        /// <param name="taskNum">浠诲姟缂栧彿</param>
+        /// <returns>鎿嶄綔缁撴灉</returns>
+        [HttpPost, HttpGet, Route("ManualTaskCancellation"), AllowAnonymous]
+        public WebResponseContent ManualTaskCancellation(int taskNum)
+        {
+            return Service.ManualTaskCancellation(taskNum);
+        }
         /// WMS浠诲姟鍙栨秷鍚屾
         /// </summary>
         /// <param name="taskCancels"></param>
@@ -183,5 +204,15 @@
         {
             return Service.ResetAllExceptionTask(taskNum);
         }
+
+        /// <summary>
+        /// WMS寮傚父鎭㈠
+        /// </summary>
+        /// <returns></returns>
+        [HttpPost, HttpGet, Route("WmsRecovery"), AllowAnonymous]
+        public WebResponseContent WmsRecovery()
+        {
+            return Service.WmsRecovery();
+        }
     }
 }

--
Gitblit v1.9.3