From b371ec4d997f37d2a0ca8012e9e876f792328dce Mon Sep 17 00:00:00 2001
From: wangxinhui <wangxinhui@hnkhzn.com>
Date: 星期日, 12 一月 2025 00:18:13 +0800
Subject: [PATCH] 更新油墨,修改密码

---
 代码管理/WMS/WIDESEA_WMSServer/WIDESEA_OutboundService/OutboundOrderService.cs |   51 ++++++++++++++++++++++++++++-----------------------
 1 files changed, 28 insertions(+), 23 deletions(-)

diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_OutboundService/OutboundOrderService.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_OutboundService/OutboundOrderService.cs"
index 483ba11..efc8049 100644
--- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_OutboundService/OutboundOrderService.cs"
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_OutboundService/OutboundOrderService.cs"
@@ -157,7 +157,6 @@
                         };
                         Dt_OutboundOrder outboundOrder = new Dt_OutboundOrder()
                         {
-                            OrderNo = model.OrderNo,
                             UpperOrderNo = model.OrderNo,
                             OrderStatus = OutOrderStatusEnum.鏈紑濮�.ObjToInt(),
                             OrderType = OutOrderTypeEnum.Issue.ObjToInt(),
@@ -240,31 +239,37 @@
                 //娴嬭瘯鏋跺簱缁橢RP涓婃姤鍑哄簱瀹屾垚
                 if (warehouse.WarehouseCode == WarehouseEnum.HA64.ToString())
                 {
-                    stockInfos = TestOutStocksUpdate(warehouse).Data as List<Dt_StockInfo> ?? new List<Dt_StockInfo>();
-                    List<ERPPickItemModel> eRPOutPick = new List<ERPPickItemModel>();
-                    for (int i = 0; i < stockInfos.Count; i++)
+                    List<ERPPickModel> eRPPicks = new List<ERPPickModel>();
+                    foreach (var item in outboundOrder.Details)
                     {
-                        ERPPickItemModel pickItemModel = new ERPPickItemModel()
+                        if (item.OrderDetailStatus == OrderDetailStatusEnum.Over.ObjToInt()) continue;
+                        stockInfos = TestOutStocksUpdate(warehouse, item).Data as List<Dt_StockInfo> ?? null;
+                        if (stockInfos == null) continue;
+                        List<ERPPickItemModel> eRPOutPick = new List<ERPPickItemModel>();
+                        for (int i = 0; i < stockInfos.Count; i++)
                         {
-                            Lotno = stockInfos[i].Details[0].BatchNo,
-                            Qty = stockInfos[i].Details[0].StockQuantity.ObjToInt().ToString(),
-                            Location = warehouse.WarehouseCode
+                            ERPPickItemModel pickItemModel = new ERPPickItemModel()
+                            {
+                                Lotno = stockInfos[i].Details[0].BatchNo,
+                                Qty = stockInfos[i].Details[0].StockQuantity.ObjToInt().ToString(),
+                                Location = warehouse.WarehouseCode
+                            };
+                            eRPOutPick.Add(pickItemModel);
+                        }
+
+                        ERPPickModel pickModel = new ERPPickModel()
+                        {
+                            Rowindex = item.RowNo,
+                            Material = item.MaterielCode,
+                            Qty = (item.OrderQuantity.ObjToInt()).ToString(),
+                            Dataitem = eRPOutPick
                         };
-                        eRPOutPick.Add(pickItemModel);
+                        eRPPicks.Add(pickModel);
                     }
-
-                    ERPPickModel pickModel = new ERPPickModel()
-                    {
-                        Rowindex = outboundOrder.Details[0].RowNo,
-                        Material = outboundOrder.Details[0].MaterielCode,
-                        Qty = (outboundOrder.Details[0].OrderQuantity.ObjToInt()).ToString(),
-                        Dataitem = eRPOutPick
-                    };
-
                     ERPIssueItemModel issueItemModel = new ERPIssueItemModel()
                     {
                         Pickcode = outboundOrder.UpperOrderNo,
-                        PickList = new List<ERPPickModel>() { pickModel }
+                        PickList = eRPPicks
                     };
                     issueModel = new ERPIssueModel()
                     {
@@ -316,7 +321,7 @@
                     issueModel = new ERPIssueModel()
                     {
                         UniqueTag = id.ToString(),
-                        Code = outboundOrder.OrderNo,//娴嬭瘯
+                        Code = outboundOrder.OrderNo,
                         WarehouseCode = warehouse.WarehouseCode,
                         Docremark = "",
                         Deptno = outboundOrder.DepartmentCode,
@@ -350,15 +355,15 @@
         /// <param name="warehouse"></param>
         /// <param name="model"></param>
         /// <returns></returns>
-        public WebResponseContent TestOutStocksUpdate(Dt_Warehouse warehouse)
+        public WebResponseContent TestOutStocksUpdate(Dt_Warehouse warehouse,Dt_OutboundOrderDetail outboundOrderDetails)
         {
             try
             {
                 //鑾峰彇鍑哄簱鍗曞簱瀛�
-                List<Dt_StockInfo> stockInfos = _stockInfoRepository.Db.Queryable<Dt_StockInfo>().Where(x => x.WarehouseId == warehouse.WarehouseId).Includes(x => x.Details).ToList();
+                List<Dt_StockInfo> stockInfos = _stockInfoRepository.Db.Queryable<Dt_StockInfo>().Where(x => x.WarehouseId == warehouse.WarehouseId).Includes(x => x.Details).Where(x=>x.Details.Any(j=>j.MaterielCode== outboundOrderDetails.MaterielCode)).Take((int)outboundOrderDetails.OrderQuantity).ToList();
                 if (stockInfos.Count <= 0)
                 {
-                    return WebResponseContent.Instance.Error($"搴撳瓨涓嶈冻");
+                    return WebResponseContent.Instance.OK();
                 }
                 //鏇存敼鐘舵��
                 stockInfos.ForEach(x =>

--
Gitblit v1.9.3