From b88cbdbc97735732fe6406fbe5aa3228eaa1b551 Mon Sep 17 00:00:00 2001
From: wxw <Administrator@DESKTOP-5BIMHQ3>
Date: 星期一, 20 十月 2025 13:13:44 +0800
Subject: [PATCH] 修改包装管理,包装可输入小数

---
 Wms/WMS.BLL/BllPdaServer/PdaAsnServer.cs |   61 +++++++++++++++++++++---------
 1 files changed, 43 insertions(+), 18 deletions(-)

diff --git a/Wms/WMS.BLL/BllPdaServer/PdaAsnServer.cs b/Wms/WMS.BLL/BllPdaServer/PdaAsnServer.cs
index f854f15..0a3894e 100644
--- a/Wms/WMS.BLL/BllPdaServer/PdaAsnServer.cs
+++ b/Wms/WMS.BLL/BllPdaServer/PdaAsnServer.cs
@@ -151,8 +151,8 @@
                 {
                     throw new Exception("褰撳墠鐗╂枡鍖呰淇℃伅涓嶅瓨鍦紝璇锋牳瀹�!");
                 }
-                var pNum = 0;//鎵樼洏鐗╁搧鏁伴噺 
-                var bNum = 0;//绠辩爜鐗╁搧鏁伴噺 
+                var pNum = 0m;//鎵樼洏鐗╁搧鏁伴噺 
+                var bNum = 0m;//绠辩爜鐗╁搧鏁伴噺 
 
                 //鍏叡鏂规硶鑾峰彇鍖呰鏁伴噺
                 new Common().GetPackQtyInfo(sku.PackagNo, ref pNum, ref bNum);
@@ -325,6 +325,14 @@
                             CreateUser = 0,
                             CreateTime = comTime
                         };
+                        if (!string.IsNullOrEmpty(detail.Lot1))
+                        {
+                            sd1.ProductionTime = Convert.ToDateTime(detail.Lot1);//鐢熶骇鏃ユ湡
+                        }
+                        if (!string.IsNullOrEmpty(detail.Lot2))
+                        {
+                            sd1.ExpirationTime = Convert.ToDateTime(detail.Lot2);//鍒版湡鏃ユ湡
+                        }
                         var palletData = Db.Queryable<DataStockDetail>().First(w => w.IsDel == "0" && w.PalletNo == sd1.PalletNo && !string.IsNullOrEmpty(w.LocatNo));
                         if (palletData != null)
                         {
@@ -1188,7 +1196,15 @@
                     throw new Exception("鏈煡璇㈠埌鎵樼洏淇℃伅锛岃鏍稿疄锛�");
                 }
                 // 楠岃瘉鍏ュ簱鍗曟槑缁嗘槸鍚﹀瓨鍦�
-                var detail = Db.Queryable<BllArrivalNoticeDetail>().First(m => m.IsDel == "0" && m.Id == model.AsnDetailId && m.ASNNo == model.AsnNo && m.LotNo.Contains(model.LotNo));
+                var detail = new BllArrivalNoticeDetail();
+                if (string.IsNullOrEmpty(model.LotNo))
+                {
+                    detail = Db.Queryable<BllArrivalNoticeDetail>().First(m => m.IsDel == "0" && m.Id == model.AsnDetailId && m.ASNNo == model.AsnNo);
+                }
+                else
+                {
+                    detail = Db.Queryable<BllArrivalNoticeDetail>().First(m => m.IsDel == "0" && m.Id == model.AsnDetailId && m.ASNNo == model.AsnNo && m.LotNo.Contains(model.LotNo));
+                }
                 if (detail == null)
                 {
                     throw new Exception("褰撳墠鐗╂枡鍙婃壒娆′笌鍗曟嵁鏃犲叧鑱旓紝璇锋牳瀹�!");
@@ -1219,8 +1235,8 @@
                     throw new Exception("鏈煡璇㈠埌璇ョ墿鏂欏寘瑁呬俊鎭紝璇锋牳瀹烇紒");
                 }
 
-                var pNum = 0;//鎵樼洏鐗╁搧鏁伴噺 
-                var bNum = 0;//绠辩爜鐗╁搧鏁伴噺 
+                var pNum = 0m;//鎵樼洏鐗╁搧鏁伴噺 
+                var bNum = 0m;//绠辩爜鐗╁搧鏁伴噺 
                 //鍏叡鏂规硶鑾峰彇鍖呰鏁伴噺
                 new Common().GetPackQtyInfo(sku.PackagNo, ref pNum, ref bNum);
                  
@@ -1327,14 +1343,23 @@
                     throw new Exception("褰撳墠鎵樼洏鍚湁璐存爣鐗╂枡淇℃伅锛屼笉鑳界粍鎵�");
                 }
                 // 鍒ゆ柇搴撳瓨鏄庣粏鏄惁宸叉湁姝ゆ墭鐩樹俊鎭�  
-                var sd1 = Db.Queryable<DataStockDetail>()
-                    .First(m => m.IsDel == "0" && m.ASNDetailNo == bind.ASNDetailNo && m.PalletNo == model.PalletNo && m.SkuNo == detail.SkuNo && m.LotNo == bind.LotNo);
+                var sd1 = new DataStockDetail();
+                if (!string.IsNullOrEmpty(bind.LotNo))
+                {
+                    sd1 = Db.Queryable<DataStockDetail>()
+                    .First(m => m.IsDel == "0" && m.PalletNo == model.PalletNo && m.SkuNo == detail.SkuNo && m.LotNo == bind.LotNo);//&& m.ASNDetailNo == bind.ASNDetailNo
+                }
+                else
+                {
+                    sd1 = Db.Queryable<DataStockDetail>()
+                    .First(m => m.IsDel == "0" && m.PalletNo == model.PalletNo && m.SkuNo == detail.SkuNo);// && m.ASNDetailNo == bind.ASNDetailNo
+                }
                 var sdId1 = 0;
                 if (sd1 != null)
                 {
                     sdId1 = sd1.Id;
                     // 搴撳瓨宸插瓨鍦� 鏇存柊鏁版嵁
-                    sd1.Qty = bind.Qty;
+                    sd1.Qty += bind.Qty;
                     sd1.CompleteTime = comTime;
                     sd1.UpdateUser = userId;
                     sd1.UpdateTime = comTime;
@@ -1961,8 +1986,8 @@
                         var addComBox = Db.Queryable<BllCompleteDetail>().Where(m => m.IsDel == "0" && m.ExportAllotId == allotId).ToList();
                         var addComList = addComBox.GroupBy(m => m.BoxNo).ToList();
                         var sku = Db.Queryable<SysMaterials>().First(m => m.SkuNo == addComBox.First().SkuNo);
-                        var pNum = 0;
-                        var bNum = 0;
+                        var pNum = 0m;
+                        var bNum = 0m;
                         new Common().GetPackQtyInfo(sku.PackagNo, ref pNum, ref bNum);
                         var boxList = new List<BllBoxInfo>();
                         foreach (var com in addComList)
@@ -2236,8 +2261,8 @@
                     throw new Exception($"鏈煡璇㈠埌鐗╂枡{obj.Data.SkuNo}淇℃伅");
                 }
 
-                var pNum = 0;//鎵樼洏鐗╁搧鏁伴噺 
-                var bNum = 0;//绠辩爜鐗╁搧鏁伴噺 
+                var pNum = 0m;//鎵樼洏鐗╁搧鏁伴噺 
+                var bNum = 0m;//绠辩爜鐗╁搧鏁伴噺 
                 //鑾峰彇鍖呰淇℃伅
                 new Common().GetPackQtyInfo(sku.PackagNo, ref pNum, ref bNum);
                 if (pNum == 0 || bNum == 0)
@@ -2667,8 +2692,8 @@
                 var sku = Db.Queryable<SysMaterials>().First(m => m.IsDel == "0" && m.SkuNo == boxInfoOne.SkuNo);
                 var pack = Db.Queryable<SysPackag>().First(m => m.IsDel == "0" && m.PackagNo == sku.PackagNo);
 
-                var pNum = 0;//鎵樼洏鐗╁搧鏁伴噺 
-                var bNum = 0;//绠辩爜鐗╁搧鏁伴噺 
+                var pNum = 0m;//鎵樼洏鐗╁搧鏁伴噺 
+                var bNum = 0m;//绠辩爜鐗╁搧鏁伴噺 
 
                 //鍏叡鏂规硶鑾峰彇鍖呰鏁伴噺
                 new Common().GetPackQtyInfo(pack.PackagNo, ref pNum, ref bNum);
@@ -2933,8 +2958,8 @@
                  
                 var pack = Db.Queryable<SysPackag>().First(m => m.IsDel == "0" && m.PackagNo == skuInfo.PackagNo);
 
-                var pNum = 0;//鎵樼洏鐗╁搧鏁伴噺 
-                var bNum = 0;//绠辩爜鐗╁搧鏁伴噺 
+                var pNum = 0m;//鎵樼洏鐗╁搧鏁伴噺 
+                var bNum = 0m;//绠辩爜鐗╁搧鏁伴噺 
 
                 //鍏叡鏂规硶鑾峰彇鍖呰鏁伴噺
                 new Common().GetPackQtyInfo(pack.PackagNo, ref pNum, ref bNum);
@@ -3280,8 +3305,8 @@
                 }
                 //鑾峰彇鎵樼洏淇℃伅
                 var sku = Db.Queryable<SysMaterials>().First(m => m.IsDel == "0" && m.SkuNo == "100099");
-                var pNum = 0;
-                var bNum = 0;
+                var pNum = 0m;
+                var bNum = 0m;
 
                 new Common().GetPackQtyInfo(sku.PackagNo, ref pNum, ref bNum);
 

--
Gitblit v1.8.0