From f40ba2a9fb9d3c2ece08e9a7cd987d4744dccab2 Mon Sep 17 00:00:00 2001 From: dengjunjie <dengjunjie@hnkhzn.com> Date: 星期二, 17 六月 2025 15:22:05 +0800 Subject: [PATCH] 优化库内移库,堆垛机和穿梭车交互逻辑 --- 项目代码/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoService/ITaskService.cs | 113 ++++++++++++++++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 108 insertions(+), 5 deletions(-) diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoService/ITaskService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoService/ITaskService.cs" index 535f501..751f62a 100644 --- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoService/ITaskService.cs" +++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoService/ITaskService.cs" @@ -22,10 +22,11 @@ using System.Linq; using System.Text; using System.Threading.Tasks; +using WIDESEAWCS_Common.TaskEnum; using WIDESEAWCS_Core; using WIDESEAWCS_Core.BaseServices; -using WIDESEAWCS_Core.Enums; using WIDESEAWCS_DTO.TaskInfo; +using WIDESEAWCS_DTO.WMSInfo; using WIDESEAWCS_Model.Models; namespace WIDESEAWCS_ITaskInfoService @@ -45,7 +46,11 @@ /// <summary> /// 鎵�鏈夊嚭搴撲换鍔$被鍨� /// </summary> - public List<int> TaskOutboundTypes { get; } + public List<int> TaskOutboundTypes { get; } + /// <summary> + /// 鎵�鏈夌Щ搴撲换鍔$被鍨� + /// </summary> + public List<int> TaskRelocationTypes { get; } /// <summary> /// 鎺ユ敹WMS浠诲姟淇℃伅 @@ -60,7 +65,16 @@ /// <param name="palletCode">鎵樼洏鍙�</param> /// <param name="sourceAddress">璧峰鍦板潃</param> /// <returns></returns> - WebResponseContent RequestWMSTask(string palletCode, string sourceAddress); + WebResponseContent RequestWMSTask(ConveyorLineDTO lineDTO); + + /// <summary> + /// 娣诲姞绉昏溅浠诲姟 + /// </summary> + /// <param name="SourceAddress">璧风偣</param> + /// <param name="TargetAddress">缁堢偣</param> + /// <param name="ShuttleCarCode">绌挎杞﹀彿</param> + /// <returns></returns> + Task AddRelocationCarTask(string SourceAddress, string TargetAddress, string ShuttleCarCode = "", string remark = ""); /// <summary> /// 鏍规嵁璁惧缂栧彿銆佸綋鍓嶅湴鍧�鏌ヨ杈撻�佺嚎鏈墽琛岀殑浠诲姟 @@ -68,7 +82,15 @@ /// <param name="deviceNo">璁惧缂栧彿</param> /// <param name="currentAddress">褰撳墠鍦板潃</param> /// <returns></returns> - Dt_Task QueryConveyorLineTask(string deviceNo, string currentAddress); + Dt_Task QueryConveyorLineTask(string deviceNo, string currentAddress, string Barcode); + /// <summary> + /// 鏍规嵁璁惧缂栧彿銆佷笅涓�鍦板潃銆佷换鍔″彿鏌ヨ杈撻�佺嚎鏈墽琛岀殑浠诲姟 + /// </summary> + /// <param name="deviceNo"></param> + /// <param name="currentAddress"></param> + /// <param name="TaskNum"></param> + /// <returns></returns> + Dt_Task QueryConveyorLineTaskNum(string deviceNo, string currentAddress, int TaskNum); /// <summary> /// 鏍规嵁浠诲姟鍙枫�佷笅涓�鍦板潃鏌ヨ杈撻�佺嚎鎵ц涓殑浠诲姟 @@ -77,6 +99,13 @@ /// <param name="nextAddress">涓嬩竴鍦板潃</param> /// <returns></returns> Dt_Task QueryExecutingConveyorLineTask(int taskNum, string nextAddress); + /// <summary> + /// 鏍规嵁鎵樼洏鍙枫�佷笅涓�鍦板潃鏌ヨ杈撻�佺嚎鎵ц涓殑浠诲姟 + /// </summary> + /// <param name="Barcode"></param> + /// <param name="nextAddress"></param> + /// <returns></returns> + Dt_Task QueryExecutingConveyorLineTask(string Barcode, string nextAddress); /// <summary> /// 鏍规嵁浠诲姟鍙枫�佸綋鍓嶅湴鍧�鏌ヨ杈撻�佺嚎瀹屾垚鐨勪换鍔� @@ -84,8 +113,14 @@ /// <param name="taskNum">浠诲姟鍙�</param> /// <param name="currentAddress">褰撳墠鍦板潃</param> /// <returns></returns> - Dt_Task QueryCompletedConveyorLineTask(int taskNum, string currentAddress); + Dt_Task QueryCompletedConveyorLineTask(string Barcode, string currentAddress); + /// <summary> + /// 浜х嚎鏌ヨ鍑哄簱浠诲姟 + /// </summary> + /// <param name="NextAddIsNull">涓嬩竴鍦板潃鏄惁涓虹┖</param> + /// <returns></returns> + Dt_Task QuertOutProductionLineTask(bool NextAddIsNull); /// <summary> /// 鏍规嵁璁惧缂栧彿銆佷换鍔$被鍨嬪垎缁�(鍙��)鎸夌収浼樺厛绾т互鍙婂垱寤烘椂闂存帓搴忔煡璇换鍔℃睜鏂板鐨勪换鍔� /// </summary> @@ -101,6 +136,7 @@ /// <param name="currentAddress">褰撳墠鍦板潃</param> /// <returns>杩斿洖浠诲姟瀹炰綋瀵硅薄锛屽彲鑳戒负null</returns> Dt_Task QueryStackerCraneTask(string deviceNo, string currentAddress = ""); + Dt_Task QueryStackerCraneRelocationTask(string deviceNo, string currentAddress = ""); /// <summary> /// 鏍规嵁璁惧缂栧彿銆佸綋鍓嶅湴鍧�鎸夌収浼樺厛绾т互鍙婂垱寤烘椂闂存帓搴忔煡璇换鍔℃睜鍏ュ簱绫诲瀷鐨勬柊澧炵殑浠诲姟 @@ -117,6 +153,26 @@ /// <param name="currentAddress">褰撳墠鍦板潃</param> /// <returns>杩斿洖浠诲姟瀹炰綋瀵硅薄锛屽彲鑳戒负null</returns> Dt_Task QueryStackerCraneOutTask(string deviceNo, string currentAddress = ""); + /// <summary> + /// 鏌ヨ绌挎杞﹀嚭搴撳畬鎴愪换鍔� + /// </summary> + /// <returns></returns> + Dt_Task QueryCarOutFinish(); + + /// <summary> + /// 鏌ヨ绌挎杞﹀嚭鍏ュ簱浠诲姟 + /// </summary> + /// <param name="deviceNo">绌挎杞︾紪鍙�</param> + /// <param name="currentAddress">褰撳墠浣嶇疆</param> + /// <returns></returns> + Dt_Task QueryShuttleCarTask(string deviceNo, string currentAddress = ""); + /// <summary> + /// 鏌ヨ绌挎杞︾Щ搴撲换鍔� + /// </summary> + /// <param name="deviceNo"></param> + /// <param name="currentAddress"></param> + /// <returns></returns> + Dt_Task ShuttleCarRelocationTask(string deviceNo, string currentAddress = ""); /// <summary> /// 鏍规嵁璁惧缂栧彿銆佸綋鍓嶅湴鍧�鎸夌収浼樺厛绾т互鍙婂垱寤烘椂闂存帓搴忔煡璇换鍔℃睜鍑哄簱绫诲瀷鐨勬柊澧炵殑浠诲姟 @@ -181,5 +237,52 @@ /// <param name="taskNum">浠诲姟鍙�</param> /// <returns>杩斿洖澶勭悊缁撴灉</returns> WebResponseContent RollbackTaskStatusToLast(int taskNum); + + /// <summary> + /// 鏍规嵁浠诲姟鍙锋煡璇换鍔� + /// </summary> + /// <param name="taskNum"></param> + /// <returns></returns> + Dt_Task GetTaskInfo(int taskNum); + Dt_Task GetTaskInfo(int taskNum, int taskState); + + /// <summary> + /// 鏍规嵁浠诲姟鐘舵�併�佷换鍔$被鍨嬫煡璇换鍔� + /// </summary> + /// <param name="TaskState">浠诲姟鐘舵��</param> + /// <param name="TaskType">浠诲姟绫诲瀷</param> + /// <returns></returns> + Dt_Task GetTaskState(int TaskState = 0, int TaskType = 0); + + /// <summary> + /// 鍫嗗灈鏈虹敵璇峰叆搴� + /// </summary> + /// <param name="task"></param> + /// <returns></returns> + WebResponseContent StackerCraneRequestInbound(Dt_Task task); + /// <summary> + /// 娣诲姞鍘嗗彶浠诲姟 + /// </summary> + /// <param name="task"></param> + /// <param name="operateType"></param> + /// <returns></returns> + WebResponseContent AddTask_Hty(Dt_Task task, TaskOperateTypeEnum operateType); + /// <summary> + /// 绌挎杞︿换鍔″畬鎴� + /// </summary> + /// <param name="taskNum">浠诲姟鍙�</param> + /// <param name="TaskTypeComplete">瀹屾垚绫诲瀷</param> + /// <returns></returns> + WebResponseContent ShuttleCarTaskCompleted(int taskNum, short TaskTypeComplete); + + /// <summary> + /// AGV淇敼浠诲姟鐘舵�� + /// </summary> + /// <param name="saveModel"></param> + /// <returns></returns> + WebResponseContent AGVUpdateTaskState(AGVUpdateTaskDTO saveModel); + WebResponseContent OutTaskFinish(string address); + WebResponseContent ManualTask(SaveModel saveModel); + WebResponseContent ModifyBarcode(WMSTaskDTO taskDTO); } } -- Gitblit v1.9.3