From b367d8d20a1b46e9a17a772f2b7b557dd3c6395c Mon Sep 17 00:00:00 2001
From: huangxiaoqiang <huangxiaoqiang@hnkhzn.com>
Date: 星期一, 03 十一月 2025 13:53:45 +0800
Subject: [PATCH] 1

---
 项目代码/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs |   20 ++++++++++++++++++++
 1 files changed, 20 insertions(+), 0 deletions(-)

diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs"
index 14f5eda..1a84cf0 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs"
@@ -105,6 +105,13 @@
             {
                 WriteLog.GetLog("鎺ユ敹WMS浠诲姟").Write(JsonConvert.SerializeObject(taskDTOs), "鎺ユ敹WMS浠诲姟");
                 Dt_Task task =null;
+
+                if (BaseDal.QueryFirst(x => x.PalletCode == taskDTOs.TPbarcode && (TaskOutboundTypes.Contains(x.TaskType) || (TaskInboundTypes.Contains(x.TaskType) && x.TaskState > (int)TaskInStatusEnum.RGV_InAwaitWMS))) != null)
+                {
+                    return content.Error($"鎵樼洏鏉$爜{taskDTOs.TPbarcode}閲嶅");
+                }
+
+
                 // 鍒ゆ柇浠诲姟绫诲瀷鏄惁涓哄嚭搴撲换鍔�
                 if (taskDTOs.TaskType == "2")
                 {
@@ -331,6 +338,10 @@
                         TargetAddress = taskDTOs.EndPoint,
 
                         Grade = 3,
+
+                        TaskNum = BaseDal.GetTaskNo().Result,
+
+                        PalletCode= taskDTOs.TPbarcode,
 
                     };
                     BaseDal.AddData(task);
@@ -618,6 +629,15 @@
         {
             return BaseDal.QueryFirst(x => x.Roadway == deviceNo && x.TaskType == (int)TaskRelocationTypeEnum.Relocation && x.TaskState == (int)TaskRelocationStatusEnum.RelocationNew);
         }
+        public bool QueryStackerTask(string deviceNo)
+        {
+            var task= BaseDal.QueryFirst(x => x.Roadway == deviceNo && (x.TaskState == (int)TaskInStatusEnum.SC_InExecuting || x.TaskState == (int)TaskOutStatusEnum.SC_OutExecuting || x.TaskState == (int)TaskRelocationStatusEnum.Relocation_Executing));
+            if (task == null)
+            {
+                return true;
+            }
+            return false;
+        }
 
         /// <summary>
         /// 鏍规嵁璁惧缂栧彿銆佹帓闄ょ殑浠诲姟銆佸綋鍓嶅湴鍧�鎸夌収浼樺厛绾т互鍙婂垱寤烘椂闂存帓搴忔煡璇换鍔℃睜鍑哄簱绫诲瀷鐨勬柊澧炵殑鎵�鏈変换鍔�

--
Gitblit v1.9.3