From a1795465c5b51eb53d83d9a874c7923c9f5bfa85 Mon Sep 17 00:00:00 2001
From: dengjunjie <dengjunjie@hnkhzn.com>
Date: 星期二, 10 三月 2026 16:05:06 +0800
Subject: [PATCH] 优化WMS任务下发接口

---
 代码管理/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs |   74 +++++++++++++++++++++++++++++++------
 1 files changed, 62 insertions(+), 12 deletions(-)

diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs"
index 7249ad0..6a3b7df 100644
--- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs"
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs"
@@ -89,49 +89,99 @@
             WebResponseContent content = new WebResponseContent();
             try
             {
+                List<object> objects = new List<object>();
                 foreach (var item in taskDTOs)
                 {
                     foreach (var task in item.tasks)
                     {
+                        #region 鍒ゆ柇
                         content = TaskHelpMethods.isOkTaskInfo(task, true, true);
-                        if (!content.Status) throw new Exception(content.Message);
+                        if (!content.Status)
+                        {
+                            objects.Add(new
+                            {
+                                taskCode = task.taskCode,
+                                Message = $"浠诲姟鍙枫�恵task.taskCode}銆憑content.Message}"
+                            });
+                            continue;
+                            //throw new Exception(content.Message);
+                        }
                         if (BaseDal.QueryFirst(x => x.WMSTaskNum == task.taskCode) != null)
-                            throw new Exception($"浠诲姟鍙枫�恵task.taskCode}銆戝凡瀛樺湪浠诲姟");
+                        {
+                            objects.Add(new
+                            {
+                                taskCode = task.taskCode,
+                                Message = $"浠诲姟鍙枫�恵task.taskCode}銆戝凡瀛樺湪浠诲姟"
+                            });
+                            continue;
+                            //throw new Exception($"浠诲姟鍙枫�恵task.taskCode}銆戝凡瀛樺湪浠诲姟");
+                        }
                         if (BaseDal.QueryFirst(x => x.PalletCode == task.containerCode) != null)
-                            throw new Exception($"鎵樼洏鍙枫�恵task.containerCode}銆戝凡瀛樺湪浠诲姟");
+                        {
+                            objects.Add(new
+                            {
+                                taskCode = task.taskCode,
+                                Message = $"鎵樼洏鍙枫�恵task.containerCode}銆戝凡瀛樺湪浠诲姟"
+                            });
+                            continue;
+                            //throw new Exception($"鎵樼洏鍙枫�恵task.containerCode}銆戝凡瀛樺湪浠诲姟");
+                        }
                         if (BaseDal.QueryFirst(x => x.SourceAddress == task.fromLocationCode) != null)
-                            throw new Exception($"璧风偣浣嶇疆銆恵task.containerCode}銆戝凡瀛樺湪浠诲姟");
+                        {
+                            objects.Add(new
+                            {
+                                taskCode = task.taskCode,
+                                Message = $"璧风偣浣嶇疆銆恵task.containerCode}銆戝凡瀛樺湪浠诲姟"
+                            });
+                            continue;
+                            //throw new Exception($"璧风偣浣嶇疆銆恵task.containerCode}銆戝凡瀛樺湪浠诲姟");
+                        }
+                        #endregion
                         switch (item.taskType)
                         {
                             case (int)TaskTypeEnum.MLInbound:
-                                CreateKLSNewInTask(task, item.taskType);
+                                content = CreateKLSNewInTask(task, item.taskType);
+                                objects.Add(content.Data);
                                 break;
                             case (int)TaskTypeEnum.MLOutbound:
-                                CreateKLSNewOutTask(task, item.taskType);
+                                content = CreateKLSNewOutTask(task, item.taskType);
+                                objects.Add(content.Data);
                                 break;
                             case (int)TaskTypeEnum.CPInbound:
-                                CreateRGVNewInTask(task, item.taskType);
+                                content= CreateRGVNewInTask(task, item.taskType);
+                                objects.Add(content.Data);
                                 break;
                             case (int)TaskTypeEnum.CPOutbound:
-                                CreateRGVNewOutTask(task, item.taskType);
+                                content= CreateRGVNewOutTask(task, item.taskType);
+                                objects.Add(content.Data);
                                 break;
                             case (int)TaskTypeEnum.CJInbound:
-                                CreateHKNewInTask(task, item.taskType);
+                                content = CreateHKNewInTask(task, item.taskType);
+                                objects.Add(content.Data);
                                 break;
                             case (int)TaskTypeEnum.CJOutbound:
-                                CreateHKNewOutTask(task, item.taskType);
+                                content = CreateHKNewOutTask(task, item.taskType);
+                                objects.Add(content.Data);
                                 break;
                             case (int)TaskTypeEnum.Carry:
-                                CarryTask(task, item.taskType);
+                                content = CarryTask(task, item.taskType);
+                                objects.Add(content.Data);
                                 break;
                             case (int)TaskTypeEnum.CJCarry:
-                                CJCarryTaske(task, item.taskType);
+                                content = CJCarryTaske(task, item.taskType);
+                                objects.Add(content.Data);
                                 break;
                             default:
+                                objects.Add(new
+                                {
+                                    taskCode = task.taskCode,
+                                    Message = $"鏈畾涔夌殑浠诲姟绫诲瀷"
+                                });
                                 break;
                         }
                     }
                 }
+                content.Data = objects;
             }
             catch (Exception ex)
             {

--
Gitblit v1.9.3