From 8fcd7a67e4391a5f1fbdb590c2a3f913aeb2a0a0 Mon Sep 17 00:00:00 2001
From: helongyang <647556386@qq.com>
Date: 星期二, 31 三月 2026 14:11:23 +0800
Subject: [PATCH] PP平库功能上线,PDA优化,部分问题点优化

---
 代码管理/WMS/WIDESEA_WMSServer/WIDESEA_OutboundService/OutStockLockInfoService.cs |   60 ++++++++++++++++++++++++++++++++++++++++++++++++++++--------
 1 files changed, 52 insertions(+), 8 deletions(-)

diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_OutboundService/OutStockLockInfoService.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_OutboundService/OutStockLockInfoService.cs"
index 2e84bab..fe82a8b 100644
--- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_OutboundService/OutStockLockInfoService.cs"
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_OutboundService/OutStockLockInfoService.cs"
@@ -52,7 +52,10 @@
                     OriginalQuantity = item.Details.Where(x => x.MaterielCode == outboundOrderDetail.MaterielCode).Sum(x => x.StockQuantity),
                     Status = taskNum == null ? OutLockStockStatusEnum.宸插垎閰�.ObjToInt() : OutLockStockStatusEnum.鍑哄簱涓�.ObjToInt(),
                     StockId = item.Id,
-                    TaskNum = taskNum
+                    TaskNum = taskNum,
+                    ProductionDate = item.Details.Where(x => x.MaterielCode == outboundOrderDetail.MaterielCode).FirstOrDefault()?.ProductionDate,
+                    EffectiveDate = item.Details.Where(x => x.MaterielCode == outboundOrderDetail.MaterielCode).FirstOrDefault()?.EffectiveDate
+
                 };
                 outStockLockInfos.Add(outStockLockInfo);
             }
@@ -80,6 +83,8 @@
                 TaskNum = taskNum,
                 OrderQuantity = outboundOrderDetail.OrderQuantity,
                 Unit = outboundOrderDetail.Unit,
+                ProductionDate = outStock.Details.Where(x => x.MaterielCode == outboundOrderDetail.MaterielCode).FirstOrDefault()?.ProductionDate,
+                EffectiveDate = outStock.Details.Where(x => x.MaterielCode == outboundOrderDetail.MaterielCode).FirstOrDefault()?.EffectiveDate
             };
 
             return outStockLockInfo;
@@ -111,7 +116,10 @@
                 StockId = outStock.Id,
                 TaskNum = taskNum,
                 OrderQuantity = mesOutboundOrder.OrderQuantity,
-                Unit = mesOutboundOrder.Unit
+                Unit = mesOutboundOrder.Unit,
+                ProductionDate = outStock.Details.Where(x => x.MaterielCode == mesOutboundOrder.MaterialCode).FirstOrDefault()?.ProductionDate,
+                EffectiveDate = outStock.Details.Where(x => x.MaterielCode == mesOutboundOrder.MaterialCode).FirstOrDefault()?.EffectiveDate
+
             };
 
             return outStockLockInfo;
@@ -124,6 +132,34 @@
         /// <param name="assignQuantity"></param>
         /// <param name="taskNum"></param>
         /// <returns></returns>
+        public Dt_OutStockLockInfo GetOutStockLockInfos(Dt_MesPPCutOutboundOrder mesPPCutOutboundOrder, Dt_MesPPCutOutboundOrderDetail mesPPCutOutboundOrderDetail, Dt_StockInfo outStock, int? taskNum = null)
+        {
+
+                Dt_OutStockLockInfo outStockLockInfo = new Dt_OutStockLockInfo()
+                {
+                    PalletCode = outStock.PalletCode,
+                    AssignQuantity = outStock.Details.Where(x => x.MaterielCode == mesPPCutOutboundOrderDetail.MaterialCode).Sum(x => x.OutboundQuantity),
+                    MaterielCode = mesPPCutOutboundOrderDetail.MaterialCode,
+                    BatchNo = outStock.Details.FirstOrDefault().BatchNo,
+                    LocationCode = outStock.LocationCode,
+                    MaterielName = mesPPCutOutboundOrderDetail.MaterialName,
+                    OrderDetailId = mesPPCutOutboundOrderDetail.Id,
+                    OrderNo = mesPPCutOutboundOrder.OrderNo,
+                    OrderType = mesPPCutOutboundOrder.OrderType,
+                    OriginalQuantity = outStock.Details.Where(x => x.MaterielCode == mesPPCutOutboundOrderDetail.MaterialCode).Sum(x => x.StockQuantity),
+                    Status = taskNum == null ? OutLockStockStatusEnum.宸插垎閰�.ObjToInt() : OutLockStockStatusEnum.鍑哄簱涓�.ObjToInt(),
+                    StockId = outStock.Id,
+                    TaskNum = taskNum,
+                    OrderQuantity = mesPPCutOutboundOrderDetail.OrderQuantity,
+                    Unit = mesPPCutOutboundOrderDetail.Unit,
+                    ProductionDate = outStock.Details.Where(x => x.MaterielCode == mesPPCutOutboundOrderDetail.MaterialCode).FirstOrDefault()?.ProductionDate,
+                    EffectiveDate = outStock.Details.Where(x => x.MaterielCode == mesPPCutOutboundOrderDetail.MaterialCode).FirstOrDefault()?.EffectiveDate
+                };
+
+
+            return outStockLockInfo;
+        }
+
         public List<Dt_OutStockLockInfo> GetOutStockLockInfos(Dt_MesPPCutOutboundOrder mesPPCutOutboundOrder, Dt_MesPPCutOutboundOrderDetail mesPPCutOutboundOrderDetail, List<Dt_StockInfo> outStock, int? taskNum = null)
         {
             List<Dt_OutStockLockInfo> outStockLockInfos = new List<Dt_OutStockLockInfo>();
@@ -133,20 +169,22 @@
                 Dt_OutStockLockInfo outStockLockInfo = new Dt_OutStockLockInfo()
                 {
                     PalletCode = item.PalletCode,
-                    AssignQuantity = item.Details.Where(x => x.MaterielCode == mesPPCutOutboundOrderDetail.MaterielCode).Sum(x => x.OutboundQuantity),
-                    MaterielCode = mesPPCutOutboundOrderDetail.MaterielCode,
+                    AssignQuantity = item.Details.Where(x => x.MaterielCode == mesPPCutOutboundOrderDetail.MaterialCode).Sum(x => x.OutboundQuantity),
+                    MaterielCode = mesPPCutOutboundOrderDetail.MaterialCode,
                     BatchNo = item.Details.FirstOrDefault().BatchNo,
                     LocationCode = item.LocationCode,
-                    MaterielName = mesPPCutOutboundOrderDetail.MaterielName,
+                    MaterielName = mesPPCutOutboundOrderDetail.MaterialName,
                     OrderDetailId = mesPPCutOutboundOrderDetail.Id,
                     OrderNo = mesPPCutOutboundOrder.OrderNo,
                     OrderType = mesPPCutOutboundOrder.OrderType,
-                    OriginalQuantity = item.Details.Where(x => x.MaterielCode == mesPPCutOutboundOrderDetail.MaterielCode).Sum(x => x.StockQuantity),
+                    OriginalQuantity = item.Details.Where(x => x.MaterielCode == mesPPCutOutboundOrderDetail.MaterialCode).Sum(x => x.StockQuantity),
                     Status = taskNum == null ? OutLockStockStatusEnum.宸插垎閰�.ObjToInt() : OutLockStockStatusEnum.鍑哄簱涓�.ObjToInt(),
                     StockId = item.Id,
                     TaskNum = taskNum,
                     OrderQuantity = mesPPCutOutboundOrderDetail.OrderQuantity,
-                    Unit = mesPPCutOutboundOrderDetail.Unit
+                    Unit = mesPPCutOutboundOrderDetail.Unit,
+                    ProductionDate = item.Details.Where(x => x.MaterielCode == mesPPCutOutboundOrderDetail.MaterialCode).FirstOrDefault()?.ProductionDate,
+                    EffectiveDate = item.Details.Where(x => x.MaterielCode == mesPPCutOutboundOrderDetail.MaterialCode).FirstOrDefault()?.EffectiveDate
                 };
                 outStockLockInfos.Add(outStockLockInfo);
             }
@@ -173,7 +211,9 @@
                 StockId = outStock.Id,
                 TaskNum = taskNum,
                 OrderQuantity = mesPPOutboundOrder.OrderQuantity,
-                Unit = mesPPOutboundOrder.Unit
+                Unit = mesPPOutboundOrder.Unit,
+                ProductionDate = outStock.Details.Where(x => x.MaterielCode == mesPPOutboundOrder.MaterialCode).FirstOrDefault()?.ProductionDate,
+                EffectiveDate = outStock.Details.Where(x => x.MaterielCode == mesPPOutboundOrder.MaterialCode).FirstOrDefault()?.EffectiveDate
             };
 
             return outStockLockInfo;
@@ -188,6 +228,10 @@
         {
             return BaseDal.QueryData(x => x.OrderDetailId == orderDetailId && outStockStatus == null ? true : x.Status == outStockStatus.ObjToInt());
         }
+        public List<Dt_OutStockLockInfo> GetByMesOrderDetail(string taskNo)
+        {
+            return BaseDal.QueryData(x => x.OrderNo == taskNo);
+        }
 
         public List<Dt_OutStockLockInfo> GetStockOutboundOrder(SaveModel saveModel)
         {

--
Gitblit v1.9.3