From 7f4b5fb7a89052f1fbd2e00b34e60e1b55f73ab3 Mon Sep 17 00:00:00 2001
From: Demo <Demo@DESKTOP-CPA90BF>
Date: 星期六, 16 三月 2024 16:58:40 +0800
Subject: [PATCH] Merge branch 'csc'

---
 Wms/WMS.BLL/BllSoServer/ExportNoticeServer.cs |   74 ++++++++++++++++++++++++-------------
 1 files changed, 48 insertions(+), 26 deletions(-)

diff --git a/Wms/WMS.BLL/BllSoServer/ExportNoticeServer.cs b/Wms/WMS.BLL/BllSoServer/ExportNoticeServer.cs
index e49379c..6cf26c6 100644
--- a/Wms/WMS.BLL/BllSoServer/ExportNoticeServer.cs
+++ b/Wms/WMS.BLL/BllSoServer/ExportNoticeServer.cs
@@ -392,6 +392,15 @@
                 {
                     throw new Exception("鏈煡鍒板搴斿嚭搴撶被鍨嬬殑鐗╂枡");
                 }
+
+                if (type!="8")
+                {
+                    skuList = skuList.Where(m => m != "100088").ToList();
+                }
+                else
+                {
+                    skuList = skuList.Where(m => m == "100088").ToList();
+                }
                 //skuList = sku.Select(m => m.SkuNo).ToList();
                 var stockRst = new StockServer();
                 var stockDetailRst = new StockDetailServer();
@@ -3013,6 +3022,8 @@
                 //搴撳瓨鏄庣粏
                 var stockList = Db.Queryable<DataStockDetail>().Where(a => stockIds.Contains(a.Id)).ToList();
 
+                //鍒嗛厤淇℃伅
+                var allots = Db.Queryable<BllExportAllot>().Where(m => m.IsDel == "0" && m.SODetailNo == detail.Id && m.Status == "0").ToList();
 
                 //搴撳瓨鎬昏〃
                 //var stockz = Db.Queryable<DataStock>().First(d => d.IsDel == "0" && d.SkuNo == detail.SkuNo && d.LotNo == detail.LotNo);
@@ -3030,33 +3041,44 @@
                     {
                         throw new Exception("鎿嶄綔澶辫触锛屽嚭搴撴暟閲忚秴鍑哄簱瀛樻暟閲忥紒");
                     }
-                    //娣诲姞鍒嗛厤琛ㄤ俊鎭�
-                    var allot = new BllExportAllot
-                    {
-                        SONo = notice.SONo,
-                        WaveNo = "",
-                        SODetailNo = detail.Id,
-                        StockId = st.StockId,
-                        LotNo = stock.LotNo,
-                        LotText = stock.LotText,
-                        SupplierLot = stock.SupplierLot,
-                        SkuNo = stock.SkuNo,
-                        SkuName = stock.SkuName,
-                        Standard = stock.Standard,
-                        PalletNo = stock.PalletNo,
-                        IsBale = stock.IsBale,
-                        IsBelt = stock.IsBelt,
-                        Qty = st.Qty,
-                        CompleteQty = 0,
-                        Status = "0",
-                        LogisticsId = notice.LogisticsId,
-                        IsAdvance = "0",
-                        OutMode = "",//鍑哄簱鍙�
 
-                        CreateUser = userId,
-                        CreateTime = DateTime.Now
-                    };
-                    allotList.Add(allot);
+                    var bl = allots.FirstOrDefault(m => m.StockId == st.StockId);
+                    if (bl == null)
+                    {
+                        //娣诲姞鍒嗛厤琛ㄤ俊鎭�
+                        var allot = new BllExportAllot
+                        {
+                            SONo = notice.SONo,
+                            WaveNo = "",
+                            SODetailNo = detail.Id,
+                            StockId = st.StockId,
+                            LotNo = stock.LotNo,
+                            LotText = stock.LotText,
+                            SupplierLot = stock.SupplierLot,
+                            SkuNo = stock.SkuNo,
+                            SkuName = stock.SkuName,
+                            Standard = stock.Standard,
+                            PalletNo = stock.PalletNo,
+                            IsBale = stock.IsBale,
+                            IsBelt = stock.IsBelt,
+                            Qty = st.Qty,
+                            CompleteQty = 0,
+                            Status = "0",
+                            LogisticsId = notice.LogisticsId,
+                            IsAdvance = "0",
+                            OutMode = "",//鍑哄簱鍙�
+
+                            CreateUser = userId,
+                            CreateTime = DateTime.Now
+                        };
+                        allotList.Add(allot);
+                    }
+                    else
+                    {
+                        bl.Qty += st.Qty;
+                        Db.Updateable(bl).ExecuteCommand();
+                    }
+                    
                     //搴撳瓨鏄庣粏
                     stock.LockQty += st.Qty;
                     stock.Status = stock.LockQty == stock.Qty ? "2" : "1";

--
Gitblit v1.8.0