From f2bc08e28dda7022202f07217f6a3c150f818af7 Mon Sep 17 00:00:00 2001
From: zhaowc <526854230@qq.com>
Date: 星期一, 20 一月 2025 08:32:16 +0800
Subject: [PATCH] Merge branch 'master' of https://gitee.com/liudongl/jc24-wms

---
 Wms/WMS.BLL/BllAsnServer/BllBoxInfoServer.cs |   78 +++++++++++++++++++++++++++++++++-----
 1 files changed, 67 insertions(+), 11 deletions(-)

diff --git a/Wms/WMS.BLL/BllAsnServer/BllBoxInfoServer.cs b/Wms/WMS.BLL/BllAsnServer/BllBoxInfoServer.cs
index 3448fe9..f9f6655 100644
--- a/Wms/WMS.BLL/BllAsnServer/BllBoxInfoServer.cs
+++ b/Wms/WMS.BLL/BllAsnServer/BllBoxInfoServer.cs
@@ -16,6 +16,9 @@
 using WMS.Entity.SysEntity;
 using WMS.IBLL.IBllAsnServer;
 using ZXing;
+using Model.ModelDto.BllCheckDto;
+using WMS.Entity.BllCheckEntity;
+using System.Data.SqlTypes;
 
 namespace WMS.BLL.BllAsnServer
 {
@@ -297,6 +300,7 @@
                         CreateTime = a.CreateTime,
                         UpdateTime = a.UpdateTime
                     })
+                    .OrderByDescending(a=>a.BoxNo)
                     .OrderByDescending(a => a.CreateTime)
                     .ToOffsetPage(model.Page, model.Limit, ref total);
                 count = total;
@@ -423,7 +427,9 @@
                 var data = GetAllWhereAsync(item)
                     .LeftJoin<SysUserInfor>((a, b) => a.CreateUser == b.Id)
                     .LeftJoin<SysUserInfor>((a, b, c) => a.UpdateUser == c.Id)
-                    .Select((a, b, c) => new BoxInfoDto()
+                    .LeftJoin<SysMaterials>((a, b, c,d) => a.SkuNo == d.SkuNo)
+                    .LeftJoin<SysUnit>((a, b, c, d,e) => d.UnitNo == e.UnitNo)
+                    .Select((a, b, c,d,e) => new BoxInfoDto()
                     {
                         Id = a.Id,
                         ASNNo = a.ASNNo,
@@ -441,6 +447,8 @@
 
                         LotNo = a.LotNo,
                         LotText = a.LotText,
+
+                        unit =  e.UnitName,
                         
                         Status = a.Status,
                         SupplierLot = a.SupplierLot,
@@ -464,7 +472,7 @@
                         CreateTime = a.CreateTime,
                         UpdateTime = a.UpdateTime
 
-                    }).OrderByDescending(a => a.CreateTime).OrderBy(a => a.BoxNo).ToOffsetPage(model.Page, model.Limit, ref total);
+                    }).OrderBy(a => a.BoxNo).OrderByDescending(a => a.CreateTime).ToOffsetPage(model.Page, model.Limit, ref total);
                 count = total;
                 return data;
             }
@@ -571,7 +579,7 @@
                 {
                     throw new Exception("鏈煡璇㈠埌鍗曟嵁鏄庣粏淇℃伅");
                 }
-                if (asnList.LotNo.Length != 10)
+                if (asnList.LotNo.Length != 10 && asnList.LotNo.Length != 11 && asnList.LotNo.Length != 12)
                 {
                     throw new Exception("鍗曟嵁杩涘巶缂栧彿浣嶆暟闀垮害閿欒");
                 }
@@ -721,7 +729,7 @@
                             //{
                             //    maxLotNoStr = toDayTime.Substring(2, 6) + "0001";
                             //}
-                            //maxBoxCode = label.Where(m => m.LotNo == maxLotNoStr).Max(a => a.BoxNo);
+                            maxBoxCode = label.Where(m => m.LotNo == maxLotNoStr).Max(a => a.BoxNo);
                         }
                         
                     }
@@ -738,7 +746,7 @@
                             var timeStr = toDayTime.Substring(2, 6);
                             if (lotStr == timeStr)
                             {
-                                maxLotNoStr = toDayTime.Substring(2, 6) + (int.Parse(maxCode.Substring(6, 4)) + 1).ToString().PadLeft(4, '0');
+                                maxLotNoStr = toDayTime.Substring(2, 6) + (int.Parse(maxCode.Substring(maxCode.Length - 4, 4)) + 1).ToString().PadLeft(4, '0');
                             }
                             else
                             {
@@ -782,7 +790,7 @@
                         }
                         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'); 
                         } 
                         
                         // 灏嗘潯鐮佷繚瀛樺埌鍘熸枡鏉$爜琛�
@@ -893,8 +901,8 @@
                             //{
                             //    maxCodestr2 = toDayTime2.Substring(2, 6) + "0001";
                             //}
-                            //maxboxcode2 = label.Where(m => m.LotNo == maxCodestr2).Max(a => a.BoxNo);//绠卞彿;
-                            //maxboxcode3 = label.Where(m => m.LotNo == maxCodestr2).Max(a => a.BoxNo3);//鏀彿;
+                            maxboxcode2 = label.Where(m => m.LotNo == maxCodestr2).Max(a => a.BoxNo);//绠卞彿;
+                            maxboxcode3 = label.Where(m => m.LotNo == maxCodestr2).Max(a => a.BoxNo3);//鏀彿;
                         }
                         
                     }
@@ -955,7 +963,7 @@
                         }
                         else
                         {
-                            maxboxcode2 = maxboxcode2.Substring(0, 11) + (int.Parse(maxboxcode2.Substring(11, 6)) + 1).ToString().PadLeft(6, '0'); 
+                            maxboxcode2 = maxboxcode2.Substring(0, maxboxcode2.Length - 6) + (int.Parse(maxboxcode2.Substring(maxboxcode2.Length-6, 6)) + 1).ToString().PadLeft(6, '0'); 
                         }
                         //鑾峰彇绠卞唴鏀爣绛炬暟閲�
                         if (i == labelNum2)
@@ -999,7 +1007,7 @@
                             }
                             else
                             {
-                                maxboxcode3 = maxboxcode3.Substring(0, 11) + (int.Parse(maxboxcode3.Substring(11, 4)) + 1).ToString().PadLeft(4, '0'); 
+                                maxboxcode3 = maxboxcode3.Substring(0, maxboxcode3.Length - 4) + (int.Parse(maxboxcode3.Substring(maxboxcode3.Length - 4, 4)) + 1).ToString().PadLeft(4, '0'); 
                             }
 
                             //var ssss = d.ToString("0");
@@ -1086,6 +1094,8 @@
                 //List<WmsLabelPrintLog> printlog = new List<WmsLabelPrintLog>();
                 //鏍囩琛ㄦ暟鎹俊鎭�
                 var list = Db.Queryable<BllBoxInfo>().Where(m => m.IsDel == "0" && m.Origin == "WMS鐢熸垚").ToList();
+                
+
 
                 #region MyRegion
 
@@ -1106,6 +1116,9 @@
                             {
                                 throw new Exception($"鏈煡璇㈠埌{boxNo}淇℃伅");
                             }
+                            //鍗曚綅
+                            var sqlString = "select a.UnitName as unit from  SysUnit a left join SysMaterials b on a.UnitNo = b.UnitNo where b.SkuNo = '" + data.SkuNo + "'";
+                            var unitname = Db.Ado.SqlQuery<BoxInfoDto>(sqlString).FirstOrDefault() ;
                             // 鐗╂枡鏉$爜淇℃伅璧嬪��
                             BoxInfoDto model = new BoxInfoDto();
                             model.SkuNo = data.SkuNo;
@@ -1119,6 +1132,7 @@
                             model.StoreTime = data.StoreTime;                     // 鍌ㄥ瓨鏈熻嚦 
 
                             model.Qty = dataList.Sum(m=>m.Qty);// 鏁伴噺
+                            model.unit = unitname.unit;
 
                             model.BoxNo = data.BoxNo;                 // 绠卞彿     
 
@@ -1161,6 +1175,9 @@
                                 {
                                     throw new Exception($"鏈煡璇㈠埌{item}淇℃伅");
                                 }
+                                //鍗曚綅
+                                var sqlString = "select a.UnitName as unit from  SysUnit a left join SysMaterials b on a.UnitNo = b.UnitNo where b.SkuNo = '" + data.SkuNo + "'";
+                                var unitname = Db.Ado.SqlQuery<BoxInfoDto>(sqlString).FirstOrDefault();
                                 // 鐗╂枡鏉$爜淇℃伅璧嬪��
                                 BoxInfoDto model = new BoxInfoDto();
                                 model.SkuNo = data.SkuNo;
@@ -1174,6 +1191,7 @@
                                 model.StoreTime = data.StoreTime;                     // 鍌ㄥ瓨鏈熻嚦 
 
                                 model.Qty = data1.Sum(m => m.Qty);// 鏁伴噺
+                                model.unit = unitname.unit;
 
                                 model.BoxNo = data.BoxNo;                 // 绠卞彿     
 
@@ -1213,6 +1231,9 @@
                             {
                                 throw new Exception($"鏈煡璇㈠埌{boxNo2}淇℃伅");
                             }
+                            //鍗曚綅
+                            var sqlString = "select a.UnitName as unit from  SysUnit a left join SysMaterials b on a.UnitNo = b.UnitNo where b.SkuNo = '" + data.SkuNo + "'";
+                            var unitname = Db.Ado.SqlQuery<BoxInfoDto>(sqlString).FirstOrDefault();
                             // 鐗╂枡鏉$爜淇℃伅璧嬪��
                             BoxInfoDto model = new BoxInfoDto();
                             model.SkuNo = data.SkuNo;
@@ -1226,6 +1247,7 @@
                             model.StoreTime = data.StoreTime;                     // 鍌ㄥ瓨鏈熻嚦 
 
                             model.Qty = data.Qty;// 鏁伴噺
+                            model.unit = unitname.unit;
 
                             model.BoxNo = data.BoxNo3;                 // 鏀彿     
 
@@ -1265,6 +1287,9 @@
                             var i = 0;
                             foreach (var data in data2)
                             {
+                                //鍗曚綅
+                                var sqlString = "select a.UnitName as unit from  SysUnit a left join SysMaterials b on a.UnitNo = b.UnitNo where b.SkuNo = '" + data.SkuNo + "'";
+                                var unitname = Db.Ado.SqlQuery<BoxInfoDto>(sqlString).FirstOrDefault();
                                 // 鐗╂枡鏉$爜淇℃伅璧嬪��
                                 BoxInfoDto model = new BoxInfoDto();
                                 model.SkuNo = data.SkuNo;
@@ -1278,6 +1303,7 @@
                                 model.StoreTime = data.StoreTime;                     // 鍌ㄥ瓨鏈熻嚦 
 
                                 model.Qty = data.Qty;// 鏁伴噺
+                                model.unit = unitname.unit;
 
                                 model.BoxNo = data.BoxNo3;                 // 绠卞彿     
 
@@ -1329,8 +1355,10 @@
                                     {
                                         throw new Exception($"褰撳墠鏀爜涓嶆槸绠辩爜鍐�");
                                     }
-                                    
 
+                                    //鍗曚綅
+                                    var sqlString = "select a.UnitName as unit from  SysUnit a left join SysMaterials b on a.UnitNo = b.UnitNo where b.SkuNo = '" + data.SkuNo + "'";
+                                    var unitname = Db.Ado.SqlQuery<BoxInfoDto>(sqlString).FirstOrDefault();
                                     // 鐗╂枡鏉$爜淇℃伅璧嬪�� 绠辩爜
                                     BoxInfoDto model1 = new BoxInfoDto();
                                     model1.SkuNo = data.SkuNo;
@@ -1343,6 +1371,7 @@
                                     model1.ExpirationTime = data.ExpirationTime;                  // 鏈夋晥鏈熻嚦
                                     model1.StoreTime = data.StoreTime;                     // 鍌ㄥ瓨鏈熻嚦 
                                     model1.Qty = dataList.Sum(m=>m.Qty);// 鏁伴噺
+                                    model1.unit = unitname.unit;
                                     model1.BoxNo = data.BoxNo;                 // 绠卞彿     
 
                                     model1.ImgStr = BarcodeHelper.GetCodeBarBase64(model1.BoxNo, 160, 40, false);
@@ -1362,6 +1391,7 @@
                                     model.ExpirationTime = data.ExpirationTime;                  // 鏈夋晥鏈熻嚦
                                     model.StoreTime = data.StoreTime;                     // 鍌ㄥ瓨鏈熻嚦 
                                     model.Qty = data.Qty;// 鏁伴噺
+                                    model.unit = unitname.unit;
                                     model.BoxNo = data.BoxNo3;                 // 鏀彿     
 
                                     model.ImgStr = BarcodeHelper.GetCodeBarBase64(model.BoxNo, 160, 40, false);
@@ -1397,6 +1427,9 @@
 
                                     var data = list.Where(m => m.BoxNo == boxNo);
                                     var boxData = data2.FirstOrDefault();
+                                    //鍗曚綅
+                                    var sqlString = "select a.UnitName as unit from  SysUnit a left join SysMaterials b on a.UnitNo = b.UnitNo where b.SkuNo = '" + boxData.SkuNo + "'";
+                                    var unitname = Db.Ado.SqlQuery<BoxInfoDto>(sqlString).FirstOrDefault();
                                     // 鐗╂枡鏉$爜淇℃伅璧嬪��
                                     BoxInfoDto model = new BoxInfoDto();
                                     model.SkuNo = boxData.SkuNo;
@@ -1409,6 +1442,7 @@
                                     model.ExpirationTime = boxData.ExpirationTime;                  // 鏈夋晥鏈熻嚦
                                     model.StoreTime = boxData.StoreTime;                     // 鍌ㄥ瓨鏈熻嚦 
                                     model.Qty = data.Sum(m => m.Qty);     // 鏁伴噺
+                                    model.unit = unitname.unit;
                                     model.BoxNo = boxData.BoxNo;                 // 鏀彿     
 
                                     model.ImgStr = BarcodeHelper.GetCodeBarBase64(model.BoxNo, 160, 40, false);
@@ -1419,6 +1453,9 @@
                                     var i = 0;
                                     foreach (var item in data2)
                                     {
+                                        //鍗曚綅
+                                        sqlString = "select a.UnitName as unit from  SysUnit a left join SysMaterials b on a.UnitNo = b.UnitNo where b.SkuNo = '" + item.SkuNo + "'";
+                                        unitname = Db.Ado.SqlQuery<BoxInfoDto>(sqlString).FirstOrDefault();
                                         // 鐗╂枡鏉$爜淇℃伅璧嬪��
                                         BoxInfoDto model1 = new BoxInfoDto();
                                         model1.SkuNo = item.SkuNo;
@@ -1431,6 +1468,7 @@
                                         model1.ExpirationTime = item.ExpirationTime;                  // 鏈夋晥鏈熻嚦
                                         model1.StoreTime = item.StoreTime;                     // 鍌ㄥ瓨鏈熻嚦 
                                         model1.Qty = item.Qty;// 鏁伴噺
+                                        model1.unit = unitname.unit;
                                         model1.BoxNo = item.BoxNo3;                 // 鏀彿     
 
                                         model.ImgStr = BarcodeHelper.GetCodeBarBase64(model1.BoxNo, 160, 40, false);
@@ -1465,6 +1503,9 @@
                                 {
                                     throw new Exception($"鏈煡璇㈠埌{boxNo}绠辩爜淇℃伅");
                                 }
+                                //鍗曚綅
+                                var sqlString = "select a.UnitName as unit from  SysUnit a left join SysMaterials b on a.UnitNo = b.UnitNo where b.SkuNo = '" + boxData.SkuNo + "'";
+                                var unitname = Db.Ado.SqlQuery<BoxInfoDto>(sqlString).FirstOrDefault();
                                 // 鐗╂枡鏉$爜淇℃伅璧嬪��
                                 BoxInfoDto model = new BoxInfoDto();
                                 model.SkuNo = boxData.SkuNo;
@@ -1477,6 +1518,7 @@
                                 model.ExpirationTime = boxData.ExpirationTime;                  // 鏈夋晥鏈熻嚦
                                 model.StoreTime = boxData.StoreTime;                     // 鍌ㄥ瓨鏈熻嚦 
                                 model.Qty = data.Sum(m => m.Qty);     // 鏁伴噺
+                                model.unit = unitname.unit;
                                 model.BoxNo = boxData.BoxNo;                 // 鏀彿     
 
                                 model.ImgStr = BarcodeHelper.GetCodeBarBase64(model.BoxNo, 160, 40, false);
@@ -1489,6 +1531,9 @@
                                     var i = 0;
                                     foreach (var item in data)
                                     {
+                                        //鍗曚綅
+                                        sqlString = "select a.UnitName as unit from  SysUnit a left join SysMaterials b on a.UnitNo = b.UnitNo where b.SkuNo = '" + item.SkuNo + "'";
+                                        unitname = Db.Ado.SqlQuery<BoxInfoDto>(sqlString).FirstOrDefault();
                                         // 鐗╂枡鏉$爜淇℃伅璧嬪��
                                         BoxInfoDto model1 = new BoxInfoDto();
                                         model1.SkuNo = item.SkuNo;
@@ -1501,6 +1546,7 @@
                                         model1.ExpirationTime = item.ExpirationTime;                  // 鏈夋晥鏈熻嚦
                                         model1.StoreTime = item.StoreTime;                     // 鍌ㄥ瓨鏈熻嚦 
                                         model1.Qty = item.Qty;     // 鏁伴噺
+                                        model1.unit = unitname.unit;
                                         model1.BoxNo = item.BoxNo3;                 // 鏀彿     
 
                                         model1.ImgStr = BarcodeHelper.GetCodeBarBase64(model1.BoxNo, 160, 40, false);
@@ -1557,6 +1603,9 @@
                                 {
                                     throw new Exception($"鏈煡璇㈠埌{demo}绠辩爜淇℃伅");
                                 }
+                                //鍗曚綅
+                                var sqlString = "select a.UnitName as unit from  SysUnit a left join SysMaterials b on a.UnitNo = b.UnitNo where b.SkuNo = '" + boxData.SkuNo + "'";
+                                var unitname = Db.Ado.SqlQuery<BoxInfoDto>(sqlString).FirstOrDefault();
                                 // 鐗╂枡鏉$爜淇℃伅璧嬪��
                                 BoxInfoDto model = new BoxInfoDto();
                                 model.SkuNo = boxData.SkuNo;
@@ -1569,6 +1618,7 @@
                                 model.ExpirationTime = boxData.ExpirationTime;                  // 鏈夋晥鏈熻嚦
                                 model.StoreTime = boxData.StoreTime;                     // 鍌ㄥ瓨鏈熻嚦 
                                 model.Qty = data.Sum(m => m.Qty);     // 鏁伴噺
+                                model.unit = unitname.unit;
                                 model.BoxNo = boxData.BoxNo;                 // 鏀彿     
 
                                 model.ImgStr = BarcodeHelper.GetCodeBarBase64(model.BoxNo, 160, 40, false);
@@ -1585,6 +1635,9 @@
                                 {
                                     foreach (var item in data.OrderBy(m => m.BoxNo3).ToList())
                                     {
+                                        //鍗曚綅
+                                        sqlString = "select a.UnitName as unit from  SysUnit a left join SysMaterials b on a.UnitNo = b.UnitNo where b.SkuNo = '" + item.SkuNo + "'";
+                                        unitname = Db.Ado.SqlQuery<BoxInfoDto>(sqlString).FirstOrDefault();
                                         // 鐗╂枡鏉$爜淇℃伅璧嬪��
                                         BoxInfoDto model1 = new BoxInfoDto();
                                         model1.SkuNo = item.SkuNo;
@@ -1597,6 +1650,7 @@
                                         model1.ExpirationTime = item.ExpirationTime;                  // 鏈夋晥鏈熻嚦
                                         model1.StoreTime = item.StoreTime;                     // 鍌ㄥ瓨鏈熻嚦 
                                         model1.Qty = item.Qty;// 鏁伴噺
+                                        model1.unit = unitname.unit;
                                         model1.BoxNo = item.BoxNo3;                 // 鏀彿     
 
                                         model1.ImgStr = BarcodeHelper.GetCodeBarBase64(model1.BoxNo, 160, 40, false);
@@ -1629,6 +1683,8 @@
                 }
 
                 #endregion
+                 
+                
 
                 return printModelList;
             }

--
Gitblit v1.8.0