From 4b4db960821387e8e29151ca15a1a7a2825f5f6f Mon Sep 17 00:00:00 2001
From: Administrator <Administrator@DESKTOP-JIE70N9>
Date: 星期五, 20 六月 2025 16:31:10 +0800
Subject: [PATCH] Merge branch 'master' of http://47.95.120.53:8083/r/JC34WMS

---
 Wms/WMS.BLL/BllAsnServer/BllBoxInfoServer.cs |   68 +++++++++++++++++++++++-----------
 1 files changed, 46 insertions(+), 22 deletions(-)

diff --git a/Wms/WMS.BLL/BllAsnServer/BllBoxInfoServer.cs b/Wms/WMS.BLL/BllAsnServer/BllBoxInfoServer.cs
index f6d72cd..57e902e 100644
--- a/Wms/WMS.BLL/BllAsnServer/BllBoxInfoServer.cs
+++ b/Wms/WMS.BLL/BllAsnServer/BllBoxInfoServer.cs
@@ -597,9 +597,13 @@
                 {
                     throw new Exception("鍗曟嵁鏁伴噺涓嶈兘灏忎簬绛変簬0");
                 }
-                if (string.IsNullOrWhiteSpace(asnList.LotNo))
+                //if (string.IsNullOrWhiteSpace(asnList.LotNo))
+                //{
+                //    throw new Exception("鍗曟嵁鎵规鍙蜂笉鑳戒负绌�");
+                //}
+                if (string.IsNullOrWhiteSpace(asnList.BoxCodeStr))
                 {
-                    throw new Exception("鍗曟嵁鎵规鍙蜂笉鑳戒负绌�");
+                    throw new Exception("鍗曟嵁绠辩爜甯稿�间笉鑳戒负绌�");
                 }
                 var asn = Db.Queryable<BllArrivalNotice>().First(m => m.ASNNo == asnList.ASNNo && m.IsDel == "0");
                 if (asn == null)
@@ -657,7 +661,7 @@
                 {
                     if (pack.L2Name != "鎵�")
                     {
-                        packLevel = 2;
+                        packLevel = 1;//JC34椤圭洰鍙湁涓�绾ф爣绛�
                         bNum = Convert.ToInt32(pack.L2Num);
                     }
                 }
@@ -710,22 +714,29 @@
                     #endregion
 
                     int labelNum = 1; //鐢熶骇鏉$爜鏁伴噺
-                    if (zNum > 0)
-                    {
-                        labelNum = int.Parse(Math.Ceiling(qty / zNum).ToString());//鏍囩鏁伴噺
-                    }
-                    else
-                    {
-                        throw new Exception("褰撳墠鍗曟嵁鐗╂枡鏄竴绾у寘瑁咃紝鏈煡璇㈠埌涓�绾у寘瑁呬俊鎭�");
-                    }
+                    //if (zNum > 0)
+                    //{
+                        labelNum = int.Parse(Math.Ceiling(qty / bNum).ToString());//鏍囩鏁伴噺
+                    //}
+                    //else
+                    //{
+                    //    throw new Exception("褰撳墠鍗曟嵁鐗╂枡鏄竴绾у寘瑁咃紝鏈煡璇㈠埌涓�绾у寘瑁呬俊鎭�");
+                    //}
 
                     #region 鑾峰彇/鐢熸垚鎵规鍙�
 
                     string maxLotNoStr = ""; //鎵规鍙�
                     string maxBoxCode = ""; //绠辩爜鍙�
-                    
-                    maxLotNoStr = asnList.LotNo;
-                    maxBoxCode = label.Where(m => m.LotNo == maxLotNoStr).Max(a => a.BoxNo);
+
+                    maxLotNoStr = asnList.BoxCodeStr;//asnList.LotNo;
+                    if (string.IsNullOrEmpty(asnList.LotNo))
+                    {
+                        maxBoxCode = label.Where(m => m.ASNDetailNo == asnList.Id).Max(a => a.BoxNo);
+                    }
+                    else
+                    {
+                        maxBoxCode = label.Where(m => m.LotNo == maxLotNoStr).Max(a => a.BoxNo);
+                    }
                     #endregion
 
                     for (int i = 1; i <= labelNum; i++)
@@ -734,32 +745,33 @@
                         if (i == labelNum)
                         {
                             // 鏈�鍚庝竴涓潯鐮�
-                            var s = zNum * (i - 1);
-                            if (zNum > qty - s)
+                            var s = bNum * (i - 1);
+                            if (bNum > qty - s)
                             {
                                 boxQty = qty - s;// 鏁伴噺
                             }
                             else
                             {
-                                boxQty = zNum;// 鏁伴噺
+                                boxQty = bNum;// 鏁伴噺
                             }
                         }
                         else
                         {
-                            boxQty = zNum;         // 鏁伴噺
+                            boxQty = bNum;         // 鏁伴噺
                         }
 
                         //鑾峰彇绠辩爜
                         if (string.IsNullOrWhiteSpace(maxBoxCode))
                         {
-                            var str = "B" + maxLotNoStr + "000001"; //鎵瑰彿+ 娴佹按  2302010001000001
+                            var str = "B" + maxLotNoStr + "000001"; //鎵瑰彿+ 娴佹按  B 230201 0001  000001
                             maxBoxCode = str;
                         }
                         else
                         {
-                            maxBoxCode = maxBoxCode.Substring(0, 11) + (int.Parse(maxBoxCode.Substring(11, 6)) + 1).ToString().PadLeft(6, '0');
+                            maxBoxCode = maxBoxCode.Substring(0, maxBoxCode.Length-6) + (int.Parse(maxBoxCode.Substring(maxBoxCode.Length - 6, 6)) + 1).ToString().PadLeft(6, '0');
                         }
 
+                        DateTime? storeTime2 = null;
                         // 灏嗘潯鐮佷繚瀛樺埌鍘熸枡鏉$爜琛�
                         var labelModel = new BllBoxInfo()
                         {
@@ -771,7 +783,7 @@
                             Status = "0",
                             SkuNo = asnList.SkuNo,
                             SkuName = asnList.SkuName,
-                            LotNo = maxLotNoStr,
+                            LotNo = asnList.LotNo,//maxLotNoStr,
                             Standard = asnList.Standard,
                             PackageStandard = packStr,
                             SupplierLot = supplierLot,
@@ -780,7 +792,7 @@
                             InspectStatus = "0",
 
                             ProductionTime = DateTime.Parse(productionTime),
-                            StoreTime = DateTime.Parse(storeTime),
+                            StoreTime = string.IsNullOrWhiteSpace(storeTime) ? storeTime2 : DateTime.Parse(storeTime ),
                             ExpirationTime = DateTime.Parse(expirationTime),
 
                             Origin = "WMS鐢熸垚",
@@ -1026,6 +1038,7 @@
 
                             model.ExpirationTime = data.ExpirationTime;                  // 鏈夋晥鏈熻嚦
                             model.StoreTime = data.StoreTime;                     // 鍌ㄥ瓨鏈熻嚦 
+                            model.ProductionTime = data.ProductionTime;//鐢熶骇鏃ユ湡
 
                             model.Qty = dataList.Sum(m => m.Qty);// 鏁伴噺
 
@@ -1081,6 +1094,7 @@
 
                                 model.ExpirationTime = data.ExpirationTime;                  // 鏈夋晥鏈熻嚦
                                 model.StoreTime = data.StoreTime;                     // 鍌ㄥ瓨鏈熻嚦 
+                                model.ProductionTime = data.ProductionTime;//鐢熶骇鏃ユ湡
 
                                 model.Qty = data1.Sum(m => m.Qty);// 鏁伴噺
 
@@ -1133,6 +1147,7 @@
 
                             model.ExpirationTime = data.ExpirationTime;                  // 鏈夋晥鏈熻嚦
                             model.StoreTime = data.StoreTime;                     // 鍌ㄥ瓨鏈熻嚦 
+                            model.ProductionTime = data.ProductionTime;//鐢熶骇鏃ユ湡
 
                             model.Qty = data.Qty;// 鏁伴噺
 
@@ -1185,6 +1200,7 @@
 
                                 model.ExpirationTime = data.ExpirationTime;                  // 鏈夋晥鏈熻嚦
                                 model.StoreTime = data.StoreTime;                     // 鍌ㄥ瓨鏈熻嚦 
+                                model.ProductionTime = data.ProductionTime;//鐢熶骇鏃ユ湡
 
                                 model.Qty = data.Qty;// 鏁伴噺
 
@@ -1251,6 +1267,7 @@
 
                                     model1.ExpirationTime = data.ExpirationTime;                  // 鏈夋晥鏈熻嚦
                                     model1.StoreTime = data.StoreTime;                     // 鍌ㄥ瓨鏈熻嚦 
+                                    model1.ProductionTime = data.ProductionTime;//鐢熶骇鏃ユ湡
                                     model1.Qty = dataList.Sum(m => m.Qty);// 鏁伴噺
                                     model1.BoxNo = data.BoxNo;                 // 绠卞彿     
 
@@ -1270,6 +1287,7 @@
 
                                     model.ExpirationTime = data.ExpirationTime;                  // 鏈夋晥鏈熻嚦
                                     model.StoreTime = data.StoreTime;                     // 鍌ㄥ瓨鏈熻嚦 
+                                    model.ProductionTime = data.ProductionTime;//鐢熶骇鏃ユ湡
                                     model.Qty = data.Qty;// 鏁伴噺
                                     model.BoxNo = data.BoxNo3;                 // 鏀彿     
 
@@ -1317,6 +1335,7 @@
 
                                     model.ExpirationTime = boxData.ExpirationTime;                  // 鏈夋晥鏈熻嚦
                                     model.StoreTime = boxData.StoreTime;                     // 鍌ㄥ瓨鏈熻嚦 
+                                    model.ProductionTime = boxData.ProductionTime;//鐢熶骇鏃ユ湡
                                     model.Qty = data.Sum(m => m.Qty);     // 鏁伴噺
                                     model.BoxNo = boxData.BoxNo;                 // 鏀彿     
 
@@ -1339,6 +1358,7 @@
 
                                         model1.ExpirationTime = item.ExpirationTime;                  // 鏈夋晥鏈熻嚦
                                         model1.StoreTime = item.StoreTime;                     // 鍌ㄥ瓨鏈熻嚦 
+                                        model1.ProductionTime = item.ProductionTime;//鐢熶骇鏃ユ湡
                                         model1.Qty = item.Qty;// 鏁伴噺
                                         model1.BoxNo = item.BoxNo3;                 // 鏀彿     
 
@@ -1385,6 +1405,7 @@
 
                                 model.ExpirationTime = boxData.ExpirationTime;                  // 鏈夋晥鏈熻嚦
                                 model.StoreTime = boxData.StoreTime;                     // 鍌ㄥ瓨鏈熻嚦 
+                                model.ProductionTime = boxData.ProductionTime;//鐢熶骇鏃ユ湡
                                 model.Qty = data.Sum(m => m.Qty);     // 鏁伴噺
                                 model.BoxNo = boxData.BoxNo;                 // 鏀彿     
 
@@ -1409,6 +1430,7 @@
 
                                         model1.ExpirationTime = item.ExpirationTime;                  // 鏈夋晥鏈熻嚦
                                         model1.StoreTime = item.StoreTime;                     // 鍌ㄥ瓨鏈熻嚦 
+                                        model.ProductionTime = item.ProductionTime;//鐢熶骇鏃ユ湡
                                         model1.Qty = item.Qty;     // 鏁伴噺
                                         model1.BoxNo = item.BoxNo3;                 // 鏀彿     
 
@@ -1477,6 +1499,7 @@
 
                                 model.ExpirationTime = boxData.ExpirationTime;                  // 鏈夋晥鏈熻嚦
                                 model.StoreTime = boxData.StoreTime;                     // 鍌ㄥ瓨鏈熻嚦 
+                                model.ProductionTime = boxData.ProductionTime;//鐢熶骇鏃ユ湡
                                 model.Qty = data.Sum(m => m.Qty);     // 鏁伴噺
                                 model.BoxNo = boxData.BoxNo;                 // 鏀彿     
 
@@ -1505,6 +1528,7 @@
 
                                         model1.ExpirationTime = item.ExpirationTime;                  // 鏈夋晥鏈熻嚦
                                         model1.StoreTime = item.StoreTime;                     // 鍌ㄥ瓨鏈熻嚦 
+                                        model.ProductionTime = item.ProductionTime;//鐢熶骇鏃ユ湡
                                         model1.Qty = item.Qty;// 鏁伴噺
                                         model1.BoxNo = item.BoxNo3;                 // 鏀彿     
 

--
Gitblit v1.8.0