From dc06f58d8ed537555fd529551180f43a0586ec3f Mon Sep 17 00:00:00 2001
From: helongyang <647556386@qq.com>
Date: 星期日, 22 六月 2025 11:44:43 +0800
Subject: [PATCH] Merge branch 'master' of http://115.159.85.185:8098/r/MeiRuiAn/HuaiAn

---
 代码管理/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/TaskInfo/TaskController.cs |  339 +++++++++++++++++++++++++++++++++++++++++++++++++++++---
 1 files changed, 321 insertions(+), 18 deletions(-)

diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/TaskInfo/TaskController.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/TaskInfo/TaskController.cs"
index c82f6bb..21ebc59 100644
--- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/TaskInfo/TaskController.cs"
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/TaskInfo/TaskController.cs"
@@ -5,11 +5,15 @@
 using WIDESEA_Core;
 using WIDESEA_Core.BaseController;
 using WIDESEA_DTO.Stock;
+using WIDESEA_DTO.Task;
 using WIDESEA_ITaskInfoService;
 using WIDESEA_Model.Models;
 
 namespace WIDESEA_WMSServer.Controllers.TaskInfo
 {
+    /// <summary>
+    /// 浠诲姟
+    /// </summary>
     [Route("api/Task")]
     [ApiController]
     public class TaskController : ApiBaseController<ITaskService, Dt_Task>
@@ -18,26 +22,95 @@
         {
         }
 
-        /// <summary>
-        /// 灏哤MS浠诲姟鎺ㄩ�佽嚦WCS
-        /// </summary>
-        /// <returns></returns>
-        [HttpPost, HttpGet, Route("PushTasksToWCS"), AllowAnonymous]
-        public WebResponseContent PushTasksToWCS()
-        {
-            return Service.PushTasksToWCS();
-        }
+        ///// <summary>
+        ///// 灏哤MS浠诲姟鎺ㄩ�佽嚦WCS
+        ///// </summary>
+        ///// <returns></returns>
+        //[HttpPost, HttpGet, Route("PushTasksToWCS"), AllowAnonymous]
+        //public WebResponseContent PushTasksToWCS()
+        //{
+        //    return Service.PushTasksToWCS();
+        //}
 
         /// <summary>
         /// 鐢宠鍏ュ簱浠诲姟
         /// </summary>
-        /// <param name="palletCode"></param>
-        /// <param name="stationCode"></param>
+        /// <param name="saveModel"></param>
         /// <returns></returns>
         [HttpPost, HttpGet, Route("RequestInboundTask"), AllowAnonymous]
-        public WebResponseContent RequestInboundTask(string palletCode, string stationCode)
+        public WebResponseContent RequestInboundTask([FromBody] SaveModel saveModel)
         {
-            return Service.RequestInboundTask(palletCode, stationCode);
+            return Service.RequestInboundTask(saveModel);
+        }
+        /// <summary>
+        /// 鏌ヨ璐ㄦ鏁伴噺
+        /// </summary>
+        [HttpPost, HttpGet, Route("InQualityConfirm"), AllowAnonymous]
+        public WebResponseContent InQualityConfirm(string palletCode)
+        {
+            return Service.InQualityConfirm(palletCode);
+        }
+        /// <summary>
+        /// 绌虹鍏ュ簱
+        /// </summary>
+        /// <param name="barcode">鎵樼洏鍙�</param>
+        /// <param name="address">鍦板潃</param>
+        /// <returns></returns>
+        [HttpPost, HttpGet, Route("InEmpty"), AllowAnonymous]
+        public WebResponseContent InEmpty(string barcode, string address, int WarehouseId)
+        {
+            return Service.InEmpty(barcode, address, WarehouseId);
+        }
+
+        /// <summary>
+        /// 绌虹鍑哄簱
+        /// </summary>
+        /// <param name="qty">鏁伴噺</param>
+        /// <param name="address">鍦板潃</param>
+        /// <returns></returns>
+        [HttpPost, HttpGet, Route("OutEmpty"), AllowAnonymous]
+        public WebResponseContent OutEmpty(int qty, string address, int WarehouseId, string barcode)
+        {
+            return Service.OutEmpty(qty, address, WarehouseId, barcode);
+        }
+
+        /// <summary>
+        /// WCS鐢宠鍏ュ簱浠诲姟(鍒嗛厤璐т綅)
+        /// </summary>
+        /// <param name="stationCode"></param>
+        /// <param name="roadwayNo"></param>
+        /// <param name="palletCode"></param>
+        /// <returns></returns>
+        [HttpPost, HttpGet, Route("DeviceRequestInboundTask"), AllowAnonymous]
+        public WebResponseContent DeviceRequestInboundTask(string stationCode, string roadwayNo, string palletCode,string materielBoxCode = "")
+        {
+            return Service.DeviceRequestInboundTask(stationCode, roadwayNo, palletCode, materielBoxCode);
+        }
+
+        /// <summary>
+        /// WCS鐢宠鍏ュ簱浠诲姟(涓嶅垎閰嶈揣浣�)
+        /// </summary>
+        /// <param name="stationCode"></param>
+        /// <param name="palletCode"></param>
+        /// <returns></returns>
+        [HttpPost, HttpGet, Route("DeviceRequestInboundTaskSimple"), AllowAnonymous]
+        public WebResponseContent DeviceRequestInboundTaskSimple(string stationCode, string palletCode)
+        {
+            return Service.DeviceRequestInboundTaskSimple(stationCode, palletCode);
+        }
+
+        /// <summary>
+        /// 
+        /// </summary>
+        /// <param name="stationCode"></param>
+        /// <param name="palletCode"></param>
+        /// <param name="roadwayNos"></param>
+        /// <param name="heightType"></param>
+        /// <returns></returns>
+        [HttpPost, HttpGet, Route("DeviceRequestInboundTaskByRoadways"), AllowAnonymous]
+        public WebResponseContent DeviceRequestInboundTaskByRoadways(string stationCode, string palletCode, int heightType, [FromBody] List<string> roadwayNos)
+        {
+            return Service.DeviceRequestInboundTaskByRoadways(stationCode, palletCode, roadwayNos, heightType);
         }
 
         /// <summary>
@@ -45,7 +118,6 @@
         /// </summary>
         /// <param name="taskNum">浠诲姟鍙�</param>
         /// <param name="roadwayNo">宸烽亾鍙�</param>
-        /// <param name="palletType">鎵樼洏绫诲瀷</param>
         /// <returns></returns>
         [HttpPost, HttpGet, Route("AssignInboundTaskLocation"), AllowAnonymous]
         public WebResponseContent AssignInboundTaskLocation(int taskNum, string roadwayNo)
@@ -53,6 +125,23 @@
             return Service.AssignInboundTaskLocation(taskNum, roadwayNo);
         }
 
+        /// <summary>
+        /// 
+        /// </summary>
+        /// <param name="taskNum"></param>
+        /// <param name="roadwayNo"></param>
+        /// <param name="heightType"></param>
+        /// <returns></returns>
+        [HttpPost, HttpGet, Route("AssignInboundTaskLocationByHeight"), AllowAnonymous]
+        public WebResponseContent AssignInboundTaskLocationByHeight(int taskNum, string roadwayNo, int heightType)
+        {
+            return Service.AssignInboundTaskLocationByHeight(taskNum, roadwayNo, heightType);
+        }
+        [HttpPost, HttpGet, Route("RequestZHInboundTask"), AllowAnonymous]
+        public WebResponseContent RequestZHInboundTask(string agvTaskCode, string palletCode, string palletType, string materialLot)
+        {
+            return Service.RequestZHInboundTask(agvTaskCode,palletCode,palletType,materialLot);
+        }
         /// <summary>
         /// 鍏ュ簱浠诲姟瀹屾垚
         /// </summary>
@@ -71,9 +160,21 @@
         /// <param name="stockSelectViews"></param>
         /// <returns></returns>
         [HttpPost, HttpGet, Route("GenerateOutboundTask"), AllowAnonymous]
-        public WebResponseContent GenerateOutboundTask(int orderDetailId, [FromBody]List<StockSelectViewDTO> stockSelectViews)
+        public WebResponseContent GenerateOutboundTask(int orderDetailId, [FromBody] List<StockSelectViewDTO> stockSelectViews)
         {
             return Service.GenerateOutboundTask(orderDetailId, stockSelectViews);
+        }
+
+        /// <summary>
+        /// 骞冲簱鐩存帴鍑哄簱
+        /// </summary>
+        /// <param name="orderDetailId"></param>
+        /// <param name="stockSelectViews"></param>
+        /// <returns></returns>
+        [HttpPost, HttpGet, Route("GeneratePKOutboundTask"), AllowAnonymous]
+        public WebResponseContent GeneratePKOutboundTask(int orderDetailId, [FromBody] List<StockSelectViewDTO> stockSelectViews)
+        {
+            return Service.GeneratePKOutboundTask(orderDetailId, stockSelectViews);
         }
 
         /// <summary>
@@ -82,11 +183,61 @@
         /// <param name="keys"></param>
         /// <returns></returns>
         [HttpPost, HttpGet, Route("GenerateOutboundTasks"), AllowAnonymous]
-        public WebResponseContent GenerateOutboundTask(int[] keys)
+        public WebResponseContent GenerateOutboundTasks([FromBody] int[] keys)
         {
-            return Service.GenerateOutboundTask(keys);
+            return Service.GenerateOutboundTasks(keys);
         }
-
+        /// <summary>
+        /// 鐢熸垚鎴愬搧鍑哄簱浠诲姟
+        /// </summary>
+        /// <param name="ProOutNo">鍑哄簱璁㈠崟鍙�</param>
+        /// <param name="StationCode">绔欏彴鍦板潃</param>
+        /// <returns></returns>
+        [HttpPost, HttpGet, Route("OutProductTask"), AllowAnonymous]
+        public async Task<WebResponseContent> OutProductTask([FromBody] int[] keys, string StationCode, int Grade)
+        {
+            return await Service.OutProductTask(keys, StationCode, Grade);
+        }
+        /// <summary>
+        /// 鎴愬搧浣欐枡閫�搴撳叆浠�
+        /// </summary>
+        /// <param name="barCode"></param>
+        /// <param name="startPoint"></param>
+        /// <returns></returns>
+        [HttpPost, HttpGet, Route("BackProductTask"), AllowAnonymous]
+        public WebResponseContent BackProductTask(string barCode, string startPoint)
+        {
+            return Service.BackProductTask(barCode, startPoint);
+        }
+        /// <summary>
+        /// 鎴愬搧绌烘鍥炲簱
+        /// </summary>
+        /// <param name="barCode"></param>
+        /// <param name="startPoint"></param>
+        /// <returns></returns>
+        [HttpPost, HttpGet, Route("EmptyBackTask"), AllowAnonymous]
+        public WebResponseContent EmptyBackTask(string barCode, string startPoint)
+        {
+            return Service.EmptyBackTask(barCode, startPoint);
+        }
+        /// <summary>
+        /// 鐢熸垚鎴愬搧鎻愬簱浠诲姟
+        /// </summary>
+        [HttpPost, HttpGet, Route("OutProRworkTask"), AllowAnonymous]
+        public async Task<WebResponseContent> OutProRworkTask([FromBody] int[] keys, string StationCode, int Grade)
+        {
+            return await Service.OutProductTask(keys, StationCode, Grade);
+        }
+        ///// <summary>
+        ///// 鐢熸垚MESPP浠撳ぇ鍗峰嚭搴撲换鍔�
+        ///// </summary>
+        ///// <param name="keys"></param>
+        ///// <returns></returns>
+        //[HttpPost, HttpGet, Route("MESPPGenerateOutboundTasks"), AllowAnonymous]
+        //public WebResponseContent MESPPGenerateOutboundTasks([FromBody] int[] keys)
+        //{
+        //    return Service.MESPPGenerateOutboundTasks(keys);
+        //}
         /// <summary>
         /// 鍑哄簱浠诲姟瀹屾垚
         /// </summary>
@@ -97,5 +248,157 @@
         {
             return Service.OutboundTaskCompleted(taskNum);
         }
+
+        /// <summary>
+        /// 鍒ゆ柇鏄惁闇�瑕佺Щ搴�
+        /// </summary>
+        /// <param name="taskNum">浠诲姟鍙�</param>
+        /// <param name="locationCode"></param>
+        /// <returns></returns>
+        [HttpPost, HttpGet, Route("IsRelocation"), AllowAnonymous]
+        public WebResponseContent IsRelocation(int taskNum, string locationCode)
+        {
+            return Service.IsRelocation(taskNum, locationCode);
+        }
+
+        /// <summary>
+        /// 浠诲姟瀹屾垚
+        /// </summary>
+        /// <param name="taskNum">浠诲姟鍙�</param>
+        /// <returns></returns>
+        [HttpPost, HttpGet, Route("TaskCompleted"), AllowAnonymous]
+        public async Task<WebResponseContent> TaskCompleted(int taskNum)
+        {
+            return await Service.TaskCompleted(taskNum);
+        }
+        /// <summary>
+        /// 鍗曚釜浠诲姟鎺ㄩ�佽嚦WCS
+        /// </summary>
+        /// <param name="taskNum">浠诲姟鍙�</param>
+        /// <param name="agvDescription"></param>
+        /// <returns></returns>
+        [HttpPost, HttpGet, Route("PushTasksToWCSSingle"), AllowAnonymous]
+        public WebResponseContent PushTasksToWCSSingle(int taskNum, string agvDescription = "", string agvtaskNum = "")
+        {
+            return Service.PushTasksToWCSSingle(taskNum, agvDescription, agvtaskNum);
+        }
+        /// <summary>
+        /// 閫夋嫨搴撳瓨鐢熸垚鍑哄簱浠诲姟
+        /// </summary>
+        /// <param name="id"></param>
+        /// <returns></returns>
+        [HttpPost, Route("Outbound"), AllowAnonymous]
+        public WebResponseContent Outbound(int id)
+        {
+            return Service.Outbound(id);
+        }
+
+        /// <summary>
+        /// 鍒嗛厤宸烽亾(甯︿换鍔″彿鍙婇珮搴�)
+        /// </summary>
+        /// <param name="roadwayNos"></param>
+        /// <param name="taskNum"></param>
+        /// <param name="heightType"></param>
+        /// <returns></returns>
+        [HttpPost, Route("AssignRoadwayByHeight"), AllowAnonymous]
+        public WebResponseContent AssignRoadwayByHeight([FromBody] List<string> roadwayNos, int taskNum, int heightType = 0)
+        {
+            return Service.AssignRoadwayByHeight(roadwayNos, taskNum, heightType);
+        }
+
+        /// <summary>
+        /// 
+        /// </summary>
+        /// <param name="roadwayNos"></param>
+        /// <param name="palletCode"></param>
+        /// <param name="heightType"></param>
+        /// <returns></returns>
+        [HttpPost, Route("AssignRoadwayByHeightAndCode"), AllowAnonymous]
+        public WebResponseContent AssignRoadwayByHeightAndCode([FromBody] List<string> roadwayNos, string palletCode, int heightType = 0)
+        {
+            return Service.AssignRoadwayByHeightAndCode(roadwayNos, palletCode, heightType);
+        }
+
+        /// <summary>
+        /// 鍒嗛厤宸烽亾(甯︿换鍔″彿)
+        /// </summary>
+        /// <param name="taskNum"></param>
+        /// <param name="roadwayNos"></param>
+        /// <returns></returns>
+        [HttpPost, Route("AssignRoadway"), AllowAnonymous]
+        public WebResponseContent AssignRoadway(int taskNum, [FromBody] List<string> roadwayNos,int heightType)
+        {
+            return Service.AssignRoadway(taskNum, roadwayNos, heightType);
+        }
+
+        /// <summary>
+        /// 鍒嗛厤宸烽亾
+        /// </summary>
+        /// <param name="roadwayNos"></param>
+        /// <returns></returns>
+        [HttpPost, Route("SingleAssignRoadway"), AllowAnonymous]
+        public WebResponseContent SingleAssignRoadway([FromBody] List<string> roadwayNos)
+        {
+            return Service.SingleAssignRoadway(roadwayNos);
+        }
+
+        /// <summary>
+        /// 
+        /// </summary>
+        /// <param name="orderId"></param>
+        /// <returns></returns>
+        [HttpPost, Route("HandSubstrateOut")]
+        public WebResponseContent HandSubstrateOut(int orderId)
+        {
+            return Service.HandSubstrateOut(orderId);
+        }
+
+        /// <summary>
+        /// 淇敼浠诲姟鐘舵��
+        /// </summary>
+        /// <param name="task"></param>
+        /// <returns></returns>
+        [HttpPost, Route("UpdateTaskInfo"), AllowAnonymous]
+        public WebResponseContent UpdateTaskInfo([FromBody] WCSTaskDTO task)
+        {
+            return Service.UpdateTaskInfo(task);
+        }
+
+        /// <summary>
+        /// PP浠揂GV鎼繍浠诲姟
+        /// </summary>
+        /// <param name="task"></param>
+        /// <returns></returns>
+        [HttpPost, Route("AGVTasks"), AllowAnonymous]
+        public WebResponseContent AGVTasks([FromBody] SaveModel saveModel)
+        {
+            return Service.AGVTasks(saveModel);
+        }
+        /// <summary>
+        /// 鎴愬搧鎸囧畾鍑哄簱
+        /// </summary>
+        /// <param name="task"></param>
+        /// <returns></returns>
+        [HttpPost, Route("OutProductSelect"), AllowAnonymous]
+        public WebResponseContent OutProductSelect(int orderDetailId,[FromBody] List<ProStockViewDTO> proStockViews)
+        {
+            return Service.OutProductSelect(orderDetailId, proStockViews);
+        }
+        /// <summary>
+        /// 闃荤剨鎵规鐗╂枡鏌ヨ
+        /// </summary>
+        [HttpPost, Route("GetZHMesMaterialLot"), AllowAnonymous]
+        public WebResponseContent GetZHMesMaterialLot(string materialLot)
+        {
+            return Service.GetZHMesMaterialLot(materialLot);
+        }
+        /// <summary>
+        /// 閫夊畾搴撳瓨鐢熸垚鐩樼偣鍗曞嚭搴�
+        /// </summary>
+        [HttpPost, Route("TakeOutbound"), AllowAnonymous]
+        public WebResponseContent TakeOutbound([FromBody] List<StockViewDTO> stockViews)
+        {
+            return Service.TakeOutbound(stockViews);
+        }
     }
 }

--
Gitblit v1.9.3