From 4b483d9d06bead231b88ca212fd799196668a057 Mon Sep 17 00:00:00 2001
From: wanshenmean <cathay_xy@163.com>
Date: 星期二, 28 四月 2026 22:58:27 +0800
Subject: [PATCH] fix(任务服务): 修复出库任务选择逻辑和货位分配问题

---
 Code/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/TaskInfo/TaskController.cs |   68 +++++++++++++++++++++++++--------
 1 files changed, 51 insertions(+), 17 deletions(-)

diff --git a/Code/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/TaskInfo/TaskController.cs b/Code/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/TaskInfo/TaskController.cs
index 17d2a3f..49c4f4a 100644
--- a/Code/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/TaskInfo/TaskController.cs
+++ b/Code/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/TaskInfo/TaskController.cs
@@ -1,8 +1,5 @@
 锘縰sing Microsoft.AspNetCore.Authorization;
-using Microsoft.AspNetCore.Http;
 using Microsoft.AspNetCore.Mvc;
-using System.DirectoryServices.Protocols;
-using WIDESEA_Common.CommonEnum;
 using WIDESEA_Core;
 using WIDESEA_Core.BaseController;
 using WIDESEA_DTO.GradingMachine;
@@ -29,7 +26,7 @@
         /// </summary>
         /// <param name="taskDto"></param>
         /// <returns></returns>
-        [HttpGet, HttpPost, Route("CreateTaskInbound"),AllowAnonymous]
+        [HttpGet, HttpPost, Route("CreateTaskInbound"), AllowAnonymous]
         public async Task<WebResponseContent?> CreateTaskInboundAsync([FromBody] CreateTaskDto taskDto)
         {
             return await Service.CreateTaskInboundAsync(taskDto);
@@ -44,6 +41,39 @@
         public async Task<WebResponseContent?> CreateTaskOutboundAsync([FromBody] CreateTaskDto taskDto)
         {
             return await Service.CreateTaskOutboundAsync(taskDto);
+        }
+
+        /// <summary>
+        /// 鎵嬪姩鍒涘缓浠诲姟
+        /// </summary>
+        /// <param name="dto">鎵嬪姩鍒涘缓浠诲姟鍙傛暟</param>
+        /// <returns></returns>
+        [HttpGet, HttpPost, Route("CreateManualTask"), AllowAnonymous]
+        public async Task<WebResponseContent?> CreateManualTaskAsync([FromBody] CreateManualTaskDto dto)
+        {
+            return await Service.CreateManualTaskAsync(dto);
+        }
+
+        /// <summary>
+        /// 鎵嬪姩涓嬪彂浠诲姟鍒癢CS
+        /// </summary>
+        /// <param name="dtos">涓嬪彂浠诲姟鍙傛暟鍒楄〃</param>
+        /// <returns>鎵归噺涓嬪彂缁撴灉</returns>
+        [HttpGet, HttpPost, Route("DispatchTasksToWCS"), AllowAnonymous]
+        public async Task<WebResponseContent?> DispatchTasksToWCSAsync([FromBody] List<DispatchTaskDto> dtos)
+        {
+            return await Service.DispatchTasksToWCSAsync(dtos);
+        }
+
+        /// <summary>
+        /// 缁勭洏/鎷嗙洏鎿嶄綔骞跺垱寤哄叆搴撲换鍔�
+        /// </summary>
+        /// <param name="dto">缁勭洏/鎷嗙洏鎿嶄綔鍙傛暟</param>
+        /// <returns>鎿嶄綔缁撴灉</returns>
+        [HttpGet, HttpPost, Route("PalletOperation"), AllowAnonymous]
+        public async Task<WebResponseContent?> PalletOperationAsync([FromBody] PalletOperationTaskDto dto)
+        {
+            return await Service.PalletOperationAndCreateTaskAsync(dto);
         }
 
         /// <summary>
@@ -102,7 +132,7 @@
         }
 
         /// <summary>
-        /// 鍒涘缓绌烘墭鐩樺嚭搴撲换鍔�
+        /// 鍒涘缓绌烘墭鐩樺叆搴撲换鍔�
         /// </summary>
         /// <param name="taskDto"></param>
         /// <returns></returns>
@@ -113,6 +143,17 @@
         }
 
         /// <summary>
+        /// 绌烘墭鐩樺嚭搴撳畬鎴�
+        /// </summary>
+        /// <param name="taskDto"></param>
+        /// <returns></returns>
+        [HttpGet, HttpPost, Route("OutboundFinishTaskTray"), AllowAnonymous]
+        public async Task<WebResponseContent?> OutboundFinishTaskTrayAsync([FromBody] CreateTaskDto taskDto)
+        {
+            return await Service.OutboundFinishTaskTrayAsync(taskDto);
+        }
+
+        /// <summary>
         /// 淇敼浠诲姟鐘舵�侊紙鏍规嵁浠诲姟ID淇敼涓烘寚瀹氱姸鎬侊級
         /// </summary>
         /// <param name="taskDto"></param>
@@ -120,7 +161,7 @@
         [HttpGet, HttpPost, Route("UpdateTaskByStatus"), AllowAnonymous]
         public async Task<WebResponseContent?> UpdateTaskByStatusAsync([FromBody] UpdateTaskDto taskDto)
         {
-            return await Service.UpdateTaskByStatusAsync(taskDto.Id, taskDto.NewStatus);
+            return await Service.UpdateTaskByStatusAsync(taskDto);
         }
 
         /// <summary>
@@ -212,6 +253,7 @@
         {
             return await Service.ApplyInOutAsync(applyInOutDto);
         }
+
         /// <summary>
         /// 鎵嬪姩鍑哄簱瀹屾垚鍙嶉缁橝GV
         /// </summary>
@@ -222,16 +264,7 @@
         {
             return await Service.OutTaskComplete(outTaskCompleteDto);
         }
-        ///// <summary>
-        ///// 浠诲姟瀹屾垚
-        ///// </summary>
-        ///// <param name="wCSTask">璇锋眰鍙傛暟</param>
-        ///// <returns></returns>
-        //[HttpPost, Route("TaskCompleted"), AllowAnonymous]
-        //public async Task<WebResponseContent?> TaskCompleted([FromBody] WCSTaskDTO wCSTask)
-        //{
-        //    return await Service.TaskCompleted(wCSTask);
-        //}
+
         /// <summary>
         /// 杈撻�佺嚎鐢宠杩涘叆
         /// </summary>
@@ -264,6 +297,7 @@
         {
             return await Service.TaskCancelAsync(taskCancelDto);
         }
+
         #endregion 鏋佸嵎搴撲换鍔℃ā鍧�
     }
-}
+}
\ No newline at end of file

--
Gitblit v1.9.3