From 482ece71c06bcc49c38b0dc5d747b37a60d227fd Mon Sep 17 00:00:00 2001
From: wangxinhui <wangxinhui@hnkhzn.com>
Date: 星期三, 11 二月 2026 17:25:04 +0800
Subject: [PATCH] 托盘半成品呼叫流程

---
 项目代码/WMS/WMSServices/WIDESEA_TaskInfoService/TaskService.cs |   43 ++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 38 insertions(+), 5 deletions(-)

diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_TaskInfoService/TaskService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_TaskInfoService/TaskService.cs"
index 517040a..e98dcbd 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_TaskInfoService/TaskService.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_TaskInfoService/TaskService.cs"
@@ -136,6 +136,28 @@
             }
         }
         /// <summary>
+        /// 浠诲姟淇℃伅鎺ㄩ�佽嚦WCS
+        /// </summary>
+        /// <returns></returns>
+        public List<string> ExistRoadwaysError()
+        {
+            try
+            {
+                string url = AppSettings.Get("WCS");
+                if (string.IsNullOrEmpty(url))
+                {
+                    return null;
+                }
+                string response = HttpHelper.Get($"{url}/api/Task/ExistRoadwaysError");
+
+                return JsonConvert.DeserializeObject<List<string>>(response) ?? throw new Exception("杩斿洖閿欒");
+            }
+            catch (Exception ex)
+            {
+                return null;
+            }
+        }
+        /// <summary>
         /// 鏀捐揣瀹屾垚
         /// </summary>
         /// <param name="code"></param>
@@ -172,13 +194,24 @@
                     {
                         return content;
                     }
-                    List<int> ints = _outboundRepository.OutSGOrderDetailRepository.QueryData(x=>x.Id>outDetailId).Select(x=>x.Id).ToList();
-                    int[] reseponse= new int[ints.Count];
-                    for (int i = 0; i < ints.Count; i++)
+                    //鑾峰彇鎵�鏈夌殑鍑哄簱璇︽儏鍒ゆ柇鏄惁婊¤冻鍑哄簱閲忓皬浜�5涓囦笖灏忎簬17鍗�
+                    List<Dt_OutStockLockInfo> outStockLockInfos = _outboundRepository.OutStockLockInfoRepository.QueryData(x=>x.OrderType==OutOrderTypeEnum.OutSGPick.ObjToInt() && x.Status<=OutLockStockStatusEnum.鍏抽棴.ObjToInt());
+                    decimal sumAssignQty = outStockLockInfos.Sum(x => x.AssignQuantity);
+                    int outCount= outStockLockInfos.Select(x=>x.PalletCode).Distinct().Count();
+                    if (sumAssignQty < AppSettings.Get("OutSGLength").ObjToInt() && outCount < AppSettings.Get("OutSGCount").ObjToInt())
                     {
-                        reseponse[i] = ints[i];
+                        List<int> ints = _outboundRepository.OutSGOrderDetailRepository.QueryData(x => x.Id > outDetailId).Select(x => x.Id).ToList();
+                        int[] reseponse = new int[ints.Count];
+                        for (int i = 0; i < ints.Count; i++)
+                        {
+                            reseponse[i] = ints[i];
+                        }
+                        content.Message = CreateSGOutboundTasks(reseponse).Message;
                     }
-                    content.Message = CreateSGOutboundTasks(reseponse).Message;
+                    else
+                    {
+                        return content.Error($"褰撳墠鍑哄簱閲忥細{sumAssignQty},褰撳墠鍑哄簱鍗锋暟锛歿outCount},涓嶆弧瓒冲皬浜�5涓囦笖灏忎簬17鍗峰嚭搴撴潯浠�");
+                    }
                 }
 
             }

--
Gitblit v1.9.3