From d292487812b280e7f484a5cdf6e8a994baa486fd Mon Sep 17 00:00:00 2001
From: huangxiaoqiang <huangxiaoqiang@hnkhzn.com>
Date: 星期三, 03 十二月 2025 14:02:06 +0800
Subject: [PATCH] 1

---
 项目代码/WMS/WIDESEA_WMSServer/WIDESEA_IStorageTaskService/Task/IDt_TaskService.cs |  100 +++++++++++++++++++++++++++++++++++++++----------
 1 files changed, 79 insertions(+), 21 deletions(-)

diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_IStorageTaskService/Task/IDt_TaskService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_IStorageTaskService/Task/IDt_TaskService.cs"
index 8a7a5f0..984e0de 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_IStorageTaskService/Task/IDt_TaskService.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_IStorageTaskService/Task/IDt_TaskService.cs"
@@ -1,4 +1,7 @@
-锘縰sing WIDESEA_DTO;
+锘縰sing WIDESEA_Common;
+using WIDESEA_Core.Enums;
+using WIDESEA_DTO;
+using WIDESEA_DTO.WMS;
 
 namespace WIDESEA_IStorageTaskServices;
 
@@ -34,6 +37,20 @@
     Task<WebResponseContent> CompleteAsync(int taskNum);
 
     /// <summary>
+    /// 鍙栨秷浠诲姟
+    /// </summary>
+    /// <param name="taskNum"></param>
+    /// <returns></returns>
+    WebResponseContent TaskCancel(int taskNum);
+
+    /// <summary>
+    /// 鑾峰彇浠诲姟淇℃伅
+    /// </summary>
+    /// <returns></returns>
+    WebResponseContent GetTaskInfo();
+
+
+    /// <summary>
     /// 璇锋眰浠诲姟宸烽亾
     /// </summary>
     /// <param name="position"></param>
@@ -41,7 +58,16 @@
     /// <param name="palletCode"></param>
     /// <param name="type"></param>
     /// <returns></returns>
-    Task<WebResponseContent> RequestTaskAsync(RequestTaskDto taskDto);
+    Task<WebResponseContent> RequestInboundTaskAsync(RequestTaskDto taskDto);
+
+
+    /// <summary>
+    /// 鎵嬪姩绉诲簱浠诲姟璇锋眰
+    /// </summary>
+    /// <param name="SourceAddress"></param>
+    /// <param name="TargetAddress"></param>
+    /// <returns></returns>
+    Task<WebResponseContent> RequestRelocationTaskAsync(string SourceAddress, string TargetAddress);
 
     /// <summary>
     /// 鑾峰彇绌鸿揣浣�
@@ -56,14 +82,7 @@
     /// <param name="AreaId"></param>
     /// <returns></returns>
 
-    Task<DtLocationInfo> GetAGVEmptyCacheLocation(int AreaId);
-
-    /// <summary>
-    /// 璇锋眰浠诲姟璐т綅
-    /// </summary>
-    /// <param name="input"></param>
-    /// <returns></returns>
-    Task<WebResponseContent> RequestLocationAsync(RequestTaskDto input);
+    Task<DtLocationInfo> GetAGVEmptyCacheLocation(int AreaId, DtLocationInfo location);
 
     /// <summary>
     /// 璇锋眰鎵樼洏浠诲姟
@@ -73,7 +92,22 @@
     /// <param name="areaCode">鍖哄煙缂栫爜</param>
     /// <param name="roadways">宸烽亾鍒楄〃</param>
     /// <returns>杩斿洖缁撴灉闆�</returns>
-    Task<WebResponseContent> RequestOutTaskAsync(RequestTaskDto taskDto);
+    Task<Dt_Task> RequestOutboundTaskAsync(RequestTaskDto taskDto);
+
+
+    /// <summary>
+    /// 鍏朵粬鍑哄簱浠诲姟璇锋眰
+    /// </summary>
+    /// <param name="palletCode"></param>
+    /// <returns></returns>
+    Task<WebResponseContent> OutBoundTaskAsync(string palletCode, string remark,int doubleTray);
+
+    Task<WebResponseContent> OtherOutBoundTaskAsync(List<DtStockInfoDetail> details);
+
+    Task<WebResponseContent> HandAllocateOutBoundTaskAsync(List<DtStockInfoDetail> details);
+
+
+    (List<DtLocationStatusChangeRecord>, List<DtLocationInfo>) GetlcoationState(Dt_Task task, StatusChangeTypeEnum StatusChangeTypeEnum,DtLocationInfo location);
 
 
     /// <summary>
@@ -98,24 +132,48 @@
     /// <param name="TargetAddress"></param>
     /// <returns></returns>
 
-    Task<WebResponseContent> RequestAcrossFloorTaskAsync(RequestTaskDto taskDto);
+    Dt_Task RequestAcrossFloorTask(DtLocationInfo StartAddress, Dt_AreaInfo area, int TaskType, RequestTaskDto taskDto);
 
-
-    /// <summary>
-    /// 璺ㄦゼ灞傜偣瀵圭偣浠诲姟
-    /// </summary>
-    /// <param name="taskDto"></param>
-    /// <returns></returns>
-    Task<WebResponseContent> RequestPointAcrossFloorTaskAsync(RequestTaskDto taskDto);
 
     /// <summary>
     /// AGV璇锋眰鎼繍浠诲姟
     /// </summary>
     /// <param name="taskDto"></param>
     /// <returns></returns>
-    Task<WebResponseContent> RequestAGVCarryTaskAsync(RequestTaskDto taskDto);
+    Dt_Task RequestAGVCarryTask(DtLocationInfo StartAddress, DtLocationInfo EndAddress, int TaskType, RequestTaskDto taskDto);
 
 
-    Task<WebResponseContent> RequestPointAGVCarryTaskAsync(RequestTaskDto taskDto);
 
+    /// <summary>
+    /// 鍫嗗灈鏈哄嚭搴撴槸鍚﹂渶瑕佺Щ搴�
+    /// </summary>
+    /// <param name="taskDto"></param>
+    /// <returns></returns>
+    Task<WebResponseContent> StackerIsNeedRelocationAsync(RequestTaskDto taskDto);
+
+    /// <summary>
+    /// AGV鍑哄簱鏄惁闇�瑕佺Щ搴�
+    /// </summary>
+    /// <param name="taskDto"></param>
+    /// <returns></returns>
+    Task<WebResponseContent> AGVIsNeedRelocationAsync(RequestTaskDto taskDto);
+
+
+
+    Task<WebResponseContent> SendWCSTask(List<WMSTaskDTO> taskDTO);
+
+    (List<DtLocationStatusChangeRecord>, List<DtLocationInfo>) UpdateLocationStatus(DtLocationInfo location, LocationEnum locationStatus, int taskNum, int StatusChangeType);
+
+    (List<DtLocationStatusChangeRecord>, List<DtLocationInfo>) UpdateLocationStatus(string locationCode, LocationEnum locationStatus, int taskNum, int StatusChangeType);
+
+    (DtLocationStatusChangeRecord, DtLocationInfo) UpdateEndLocationStatus(string locationCode, LocationEnum locationStatus, int taskNum, StatusChangeTypeEnum StatusChangeType);
+
+    (DtLocationStatusChangeRecord, DtLocationInfo) UpdateLocationStatus(string locationCode, LocationEnum locationStatus, int taskNum, StatusChangeTypeEnum StatusChangeType);
+
+    bool LocationIsOutBound(DtLocationInfo location);
+
+
+    Task<WebResponseContent> UpdateStartLocationInfo(Dt_Task task);
+
+    Task<WebResponseContent> RequestLocation(string palletCode);
 }
\ No newline at end of file

--
Gitblit v1.9.3