From 3571d8b2231e06e46774af86be502014d6974e1d Mon Sep 17 00:00:00 2001
From: wangxinhui <wangxinhui@hnkhzn.com>
Date: 星期二, 07 四月 2026 16:16:53 +0800
Subject: [PATCH] 优化ERP接收单据逻辑,一期领料变更逻辑修改

---
 项目代码/WCS/WCSServices/WIDESEAWCS_ITaskInfoService/ITaskService.cs |   90 ++++++++++++++++++++++++---------------------
 1 files changed, 48 insertions(+), 42 deletions(-)

diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WCSServices/WIDESEAWCS_ITaskInfoService/ITaskService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WCSServices/WIDESEAWCS_ITaskInfoService/ITaskService.cs"
index 272a583..902cdb5 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WCSServices/WIDESEAWCS_ITaskInfoService/ITaskService.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WCSServices/WIDESEAWCS_ITaskInfoService/ITaskService.cs"
@@ -28,6 +28,7 @@
 using WIDESEAWCS_Core;
 using WIDESEAWCS_Core.BaseServices;
 using WIDESEAWCS_Core.Enums;
+using WIDESEAWCS_DTO;
 using WIDESEAWCS_DTO.Agv;
 using WIDESEAWCS_DTO.TaskInfo;
 using WIDESEAWCS_Model.Models;
@@ -59,12 +60,13 @@
         WebResponseContent ReceiveWMSTask([NotNull] List<WMSTaskDTO> taskDTOs);
 
         /// <summary>
-        /// 鏍规嵁鎵樼洏鍙枫�佽捣濮嬪湴鍧�鍚慦MS璇锋眰浠诲姟
+        /// 鏍规嵁缁堢偣鍦板潃鍚慦MS璇锋眰浠诲姟
         /// </summary>
         /// <param name="palletCode">鎵樼洏鍙�</param>
         /// <param name="sourceAddress">璧峰鍦板潃</param>
         /// <returns></returns>
-        WebResponseContent RequestWMSTask(string palletCode, string sourceAddress, string materielBoxCode = "");
+        WebResponseContent RequestPlateOutTask(string targetAddress);
+
         /// <summary>
         /// 璇锋眰鍘熸枡鍏ュ簱
         /// </summary>
@@ -78,7 +80,7 @@
         /// </summary>
         /// <param name="palletCode">鏉$爜</param>
         /// <returns></returns>
-        WebResponseContent YLPurchaseBoxing(string palletCode);
+        WebResponseContent YLPurchaseBoxing(string palletCode, decimal weight = 0, decimal thickness = 0, decimal wide = 0, string stationCode="");
 
         WebResponseContent AssignCPRoadwayNo();
 
@@ -86,7 +88,7 @@
         /// 璇锋眰鍘熸枡鍏ュ簱宸烽亾
         /// </summary>
         /// <returns></returns>
-        WebResponseContent AssignYLRoadwayNo(string palletCode);
+        WebResponseContent AssignYLRoadwayNo(string palletCode, int wide = 0, int thickness = 0, int weight = 0);
         /// <summary>
         /// 璇锋眰鍏ュ簱浠诲姟
         /// </summary>
@@ -94,7 +96,23 @@
         /// <param name="sourceAddress">璧峰鍦板潃</param>
         /// /// <param name="roadWay">宸烽亾</param>
         /// <returns></returns>
-        WebResponseContent RequestWMSTaskSimple(string palletCode, string sourceAddress, string roadWay="", int taskType = 630,int taskNum=0,string targetAddress="");
+        WebResponseContent RequestWMSTaskSimple(string palletCode, string sourceAddress, string roadWay="", int taskType = 630);
+        //涓婁紶鏉$爜
+
+        WebResponseContent MESBoxCodeNotice(string boxCode);
+        /// <summary>
+        /// 鍒ゆ柇鍏佽鏀捐揣
+        /// </summary>
+        /// <returns></returns>
+        string MESAvgArriveNotice(RequestAGVArriveDTO requestAGVArriveDTO);
+
+        /// <summary>
+        /// 鍙犵洏鏈虹敵璇风┖鎵樺叆鎴愬搧搴�
+        /// </summary>
+        /// <param name="palletCode"></param>
+        /// <param name="SourceAddress"></param>
+        /// <returns></returns>
+        WebResponseContent CPEmptyInbound(string palletCode, string SourceAddress);
 
         /// <summary>
         /// 鍚慦MS鐢宠浠诲姟
@@ -112,6 +130,16 @@
         /// <param name="roadwayNo">宸烽亾鍙�</param>
         /// <returns></returns>
         string? RequestAssignLocation(int taskNum, string roadwayNo);
+        /// <summary>
+        /// 鍚慦MS鎴愬搧鍏ュ簱鎵爜璇锋眰鏇存柊鏉$爜
+        /// </summary>
+        WebResponseContent RequestInBoundPalletCode(int taskNum, string barCode);
+        /// <summary>
+        /// 鍚慦MS鐢宠鍑哄簱AGV缁堢偣
+        /// </summary>
+        /// <param name="taskNum">浠诲姟鍙�</param>
+        /// <returns></returns>
+        string? RequestTargetAddress(int taskNum);
 
         /// <summary>
         /// 浠诲姟瀹屾垚
@@ -119,6 +147,13 @@
         /// <param name="taskNum">浠诲姟鍙�</param>
         /// <returns></returns>
         WebResponseContent TaskCompleted(int taskNum);
+
+        /// <summary>
+        /// 浠诲姟閲嶆柊涓嬪彂
+        /// </summary>
+        /// <param name="taskNum">浠诲姟鍙�</param>
+        /// <returns></returns>
+        WebResponseContent ResendTask(int taskNum);
 
         /// <summary>
         /// 鏍规嵁璁惧缂栧彿銆佷换鍔$被鍨嬪垎缁�(鍙��)鎸夌収浼樺厛绾т互鍙婂垱寤烘椂闂存帓搴忔煡璇换鍔℃睜鏂板鐨勪换鍔�
@@ -135,6 +170,11 @@
         /// <param name="currentAddress">褰撳墠鍦板潃</param>
         /// <returns>杩斿洖浠诲姟瀹炰綋瀵硅薄锛屽彲鑳戒负null</returns>
         Dt_Task QueryStackerCraneTask(string deviceNo, string currentAddress = "");
+
+        /// <summary>
+        /// 鍘熸枡搴撲换鍔℃煡璇�
+        /// </summary>
+        Dt_Task QueryStackerYLTask(string deviceNo,TaskTypeGroup? taskTypeGroup=null);
 
         /// <summary>
         /// 鏍规嵁璁惧缂栧彿銆佸綋鍓嶅湴鍧�鎸夌収浼樺厛绾т互鍙婂垱寤烘椂闂存帓搴忔煡璇换鍔℃睜鍏ュ簱绫诲瀷鐨勬柊澧炵殑浠诲姟
@@ -187,24 +227,11 @@
         /// <returns></returns>
         WebResponseContent AgvSendTask(AgvTaskSendDTO taskModel, APIEnum SendTask = APIEnum.AgvSendTask);
         /// <summary>
-        /// 瀹夊叏淇″彿鍥炲 WCS-AGV
+        /// AGV纭瀹屾垚鎺ュ彛(鍙栨斁)
         /// </summary>
-        /// <param name="secureModel"></param>
+        /// <param name="agvFinishDTO"></param>
         /// <returns></returns>
-        WebResponseContent AgvSecureReply(AgvSecureReplyDTO secureReplyModel, APIEnum SecureReply = APIEnum.Agv_CSJSecureReply);
-        /// <summary>
-        /// AGV浠诲姟鐘舵�佸埛鏂�
-        /// </summary>
-        /// <param name="agvUpdateModel"></param>
-        /// <returns></returns>
-        AgvResponseContent AgvUpdateTask(AgvUpdateDTO agvUpdateModel);
-
-        /// <summary>
-        /// 
-        /// </summary>
-        /// <param name="taskNum"></param>
-        /// <returns></returns>
-        WebResponseContent SendSecureReplyToAgv(int taskNum);
+        WebResponseContent AGVFinish(AgvFinishDTO agvFinishDTO);
 
         /// <summary>
         /// 鏇存柊浠诲姟淇℃伅鍙婃坊鍔犱换鍔℃槑缁嗚褰�
@@ -217,31 +244,10 @@
         /// <param name="currentAddress">淇敼鍚庣殑褰撳墠鍦板潃</param>
         /// <param name="nextAddress">淇敼鍚庣殑涓嬩竴鍦板潃</param>
         void UpdateTask(Dt_Task task, TaskStatusEnum taskStatus, string deviceCode = "", string sourceAddress = "", string targetAddress = "", string currentAddress = "", string nextAddress = "", string roadwayNo = "", int heightType = 0);
-
-        /// <summary>
-        /// 
-        /// </summary>
-        /// <param name="agvPodModel"></param>
-        /// <param name="PodBerthAndMat"></param>
-        /// <returns></returns>
-        WebResponseContent AgvPodBerthAndMat(AgvPodBerthAndMatDTO agvPodModel, APIEnum PodBerthAndMat = APIEnum.Agv_CSJPodBerthAndMat);
         /// <summary>
         /// //鍒ゆ柇绉诲簱璐т綅浠诲姟鏄惁宸插瓨鍦紝濡傚瓨鍦ㄥ厛鎵ц
         /// </summary>
         Dt_Task QueryStackerExistTask(string PalletCode,string locationCode);
-        /// <summary>
-        /// AGV鎴愬搧鍙栨斁璐ч�氱煡
-        /// </summary>
-        WebResponseContent AgvBoxApplyPass(AGVBoxApplyPassDTO applyPassDTO, APIEnum SecureReply = APIEnum.AGV_CPBoxApplyPass);
-        /// <summary>
-        /// CTU鍙栨秷浠诲姟
-        /// </summary>
-        /// <returns></returns>
-        WebResponseContent AgvBoxApplyPass(AgvCTUCancelDTO applyPassDTO, APIEnum SecureReply = APIEnum.AGV_CTUCancelTask);
-        /// <summary>
-        /// 棰勮皟搴︽寚浠�
-        /// </summary>
-        WebResponseContent AgvPreScheduleTask(AgvScheduleTaskDTO scheduleTaskDTO, APIEnum ScheduleTask = APIEnum.AGV_CTUScheduleTaskTask);
 
         /// <summary>
         /// 鎺ュ彈WMS鎵嬪姩瀹屾垚浠诲姟

--
Gitblit v1.9.3