From c4885ceaf477654dc0d2c02c7235c6ca683e08d4 Mon Sep 17 00:00:00 2001
From: wangxinhui <wangxinhui@hnkhzn.com>
Date: 星期六, 15 十一月 2025 17:47:40 +0800
Subject: [PATCH] 字段优化,板材货位限制

---
 代码管理/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/TaskService_Outbound.cs |   13 ++++++++-----
 1 files changed, 8 insertions(+), 5 deletions(-)

diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/TaskService_Outbound.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/TaskService_Outbound.cs"
index a45e862..cd41e35 100644
--- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/TaskService_Outbound.cs"
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/TaskService_Outbound.cs"
@@ -185,7 +185,7 @@
         /// <param name="ProOutNo">鍑哄簱璁㈠崟鍙�</param>
         /// <param name="StationCode">绔欏彴鍦板潃</param>
         /// <returns></returns>
-        public async Task<WebResponseContent> OutProductTask(int[] keys, string StationCode, int Grade)
+        public async Task<WebResponseContent> OutProductTask(int[] keys, string StationCode, int Grade,bool isFineWorks=false)
         {
             WebResponseContent content = new WebResponseContent();
             try
@@ -207,7 +207,7 @@
                 List<Dt_OutProStockInfo> outProStockInfos = new List<Dt_OutProStockInfo>();
                 List<Dt_LocationInfo> locationInfos = new List<Dt_LocationInfo>();
                 (List<Dt_Task>, List<Dt_ProStockInfo>?, List<Dt_ProOutOrderDetail>?, List<Dt_OutProStockInfo>?, List<Dt_LocationInfo>?) result =
-                OutProductTaskDataHandle(_ProOutOrderDetails);
+                OutProductTaskDataHandle(_ProOutOrderDetails, isFineWorks);
                 if (result.Item2 != null && result.Item2.Count > 0)
                 {
                     proStockInfos.AddRange(result.Item2);
@@ -632,7 +632,7 @@
         /// 澶勭悊鎴愬搧鍑哄簱鏁版嵁
         /// </summary>
         /// <returns></returns>
-        public (List<Dt_Task>, List<Dt_ProStockInfo>?, List<Dt_ProOutOrderDetail>?, List<Dt_OutProStockInfo>?, List<Dt_LocationInfo>?) OutProductTaskDataHandle(List<Dt_ProOutOrderDetail> proOutOrderDetails)
+        public (List<Dt_Task>, List<Dt_ProStockInfo>?, List<Dt_ProOutOrderDetail>?, List<Dt_OutProStockInfo>?, List<Dt_LocationInfo>?) OutProductTaskDataHandle(List<Dt_ProOutOrderDetail> proOutOrderDetails, bool isFineWorks = false)
         {
             List<Dt_Task> tasks = new List<Dt_Task>();
             List<Dt_ProStockInfo> proStockInfos = new List<Dt_ProStockInfo>();
@@ -640,7 +640,7 @@
             List<Dt_OutProStockInfo> outProStockInfos=new List<Dt_OutProStockInfo>();
             List<Dt_LocationInfo> locationInfos = new List<Dt_LocationInfo>();
             //鍒嗛厤搴撳瓨
-            (List<Dt_ProStockInfo>, List<Dt_ProOutOrderDetail>, List<Dt_OutProStockInfo>, List<Dt_LocationInfo>) result = _outboundService.ProOutOrderDetailService.AssignProStockOut(proOutOrderDetails);
+            (List<Dt_ProStockInfo>, List<Dt_ProOutOrderDetail>, List<Dt_OutProStockInfo>, List<Dt_LocationInfo>) result = _outboundService.ProOutOrderDetailService.AssignProStockOut(proOutOrderDetails, isFineWorks);
             if (result.Item1!=null&&result.Item1.Count>0)
             {
                 //鑾峰彇鎴愬搧鍗�
@@ -754,7 +754,8 @@
                             WarehouseId = stockInfo.WarehouseId,
                             GroupId= groupId,
                             MaterielCode = stockInfo.proStockInfoDetails.Where(x => x.ProStockId == stockInfo.Id).FirstOrDefault()?.ProductCode,
-                            Quantity = (float)stockInfo.proStockInfoDetails.Where(x => x.ProStockId == stockInfo.Id).Sum(x=> x.StockPcsQty)
+                            Quantity = (float)stockInfo.proStockInfoDetails.Where(x => x.ProStockId == stockInfo.Id).Sum(x=> x.StockPcsQty),
+                            BatchNo = stockInfo.proStockInfoDetails.Where(x => x.ProStockId == stockInfo.Id).FirstOrDefault()?.LotNumber
                         };
                         tasks.Add(task);
                     }
@@ -800,6 +801,7 @@
                         {
                             task.MaterielCode = stockInfo.Details?.Where(x => x.StockId == stockInfo.Id).FirstOrDefault()?.MaterielCode;
                             task.Quantity = (float)stockInfo.Details?.Where(x => x.StockId == stockInfo.Id).Sum(x => x.StockQuantity);
+                            task.BatchNo = stockInfo.Details?.Where(x => x.StockId == stockInfo.Id).FirstOrDefault()?.BatchNo;
                         }
                         if (stockInfo.StockLength>0)
                         {
@@ -915,6 +917,7 @@
                         (int)OutOrderTypeEnum.Issue => TaskTypeEnum.Outbound,
                         (int)OutOrderTypeEnum.Allocate=> TaskTypeEnum.OutAllocate,
                         (int)OutOrderTypeEnum.Quality => TaskTypeEnum.OutQuality,
+                        (int)OutOrderTypeEnum.SaleOut => TaskTypeEnum.OutSale,
                         _ =>new TaskTypeEnum()
                     };
                     tasks = GetTasks(result.Item1, typeEnum);

--
Gitblit v1.9.3