From 24ea35cb1a3a43dc137d15009cbbcb0904759c85 Mon Sep 17 00:00:00 2001 From: Demo <Demo@DESKTOP-CPA90BF> Date: 星期六, 16 三月 2024 16:57:08 +0800 Subject: [PATCH] 修改BUG问题 --- Wms/WMS.BLL/BllAsnServer/BllBoxInfoServer.cs | 2 HTML/views/SOSetting/ExportAllot.html | 46 ++++++---- Wms/WMS.BLL/BllSoServer/ExportNoticeServer.cs | 74 ++++++++++++------ Wms/WMS.BLL/Logic/AllotSku.cs | 54 +++++++++++++ Wms/Model/ModelDto/DataDto/StockDetailDto.cs | 5 + Wms/WMS.BLL/BllPdaServer/PdaSoServer.cs | 8 ++ 6 files changed, 141 insertions(+), 48 deletions(-) diff --git a/HTML/views/SOSetting/ExportAllot.html b/HTML/views/SOSetting/ExportAllot.html index 7651448..611e0be 100644 --- a/HTML/views/SOSetting/ExportAllot.html +++ b/HTML/views/SOSetting/ExportAllot.html @@ -829,25 +829,33 @@ console.log(obj); if (obj.event === 'del') { layer.confirm('纭畾鎾ら攢閫変腑鐨勫垎閰嶄俊鎭悧锛�', function (index) { - var param = { - Id: parseInt(obj.data.Id) - }; - sendData(IP + "/BllSo/DelExportAllot", param, 'post', function (res) { - console.log(res); - if (res.code == 0) { //鎴愬姛 - layer.msg(res.msg, { - icon: 1, - time: 1000 //2绉掑叧闂紙濡傛灉涓嶉厤缃紝榛樿鏄�3绉掞級 - }, function () { - refreshTable(); - }); - } else { //涓嶆垚鍔� - layer.msg(res.msg, { - icon: 2, - time: 2000 //2绉掑叧闂紙濡傛灉涓嶉厤缃紝榛樿鏄�3绉掞級 - }, function () { }); - } - }); + if (doing) { + doing = false; + + var param = { + Id: parseInt(obj.data.Id) + }; + sendData(IP + "/BllSo/DelExportAllot", param, 'post', function (res) { + console.log(res); + if (res.code == 0) { //鎴愬姛 + layer.msg(res.msg, { + icon: 1, + time: 1000 //2绉掑叧闂紙濡傛灉涓嶉厤缃紝榛樿鏄�3绉掞級 + }, function () { + refreshTable(); + doing = true; + }); + } else { //涓嶆垚鍔� + layer.msg(res.msg, { + icon: 2, + time: 2000 //2绉掑叧闂紙濡傛灉涓嶉厤缃紝榛樿鏄�3绉掞級 + }, function () { + doing = true; + }); + } + }); + } + }); } }); diff --git a/Wms/Model/ModelDto/DataDto/StockDetailDto.cs b/Wms/Model/ModelDto/DataDto/StockDetailDto.cs index e2b0d12..fff1025 100644 --- a/Wms/Model/ModelDto/DataDto/StockDetailDto.cs +++ b/Wms/Model/ModelDto/DataDto/StockDetailDto.cs @@ -199,5 +199,10 @@ /// Nullable:True /// </summary> public string Demo { get; set; } + + /// <summary> + /// 鍌ㄤ綅娣卞害 + /// </summary> + public int Dept { get; set; } } } diff --git a/Wms/WMS.BLL/BllAsnServer/BllBoxInfoServer.cs b/Wms/WMS.BLL/BllAsnServer/BllBoxInfoServer.cs index 9b74c1f..8a69d15 100644 --- a/Wms/WMS.BLL/BllAsnServer/BllBoxInfoServer.cs +++ b/Wms/WMS.BLL/BllAsnServer/BllBoxInfoServer.cs @@ -768,7 +768,7 @@ SupplierLot = supplierLot, InspectMark = "0", BitBoxMark = bNum > boxQty ? "1":"0", - InspectStatus = "", + InspectStatus = "0", ProductionTime = DateTime.Parse(productionTime), StoreTime = DateTime.Parse(storeTime), diff --git a/Wms/WMS.BLL/BllPdaServer/PdaSoServer.cs b/Wms/WMS.BLL/BllPdaServer/PdaSoServer.cs index c340e8b..6d8448d 100644 --- a/Wms/WMS.BLL/BllPdaServer/PdaSoServer.cs +++ b/Wms/WMS.BLL/BllPdaServer/PdaSoServer.cs @@ -469,6 +469,7 @@ //淇敼鍑哄簱鍒嗛厤淇℃伅 allot.CompleteQty += pickQty; allot.Status = allot.Qty == allot.CompleteQty ? "5" : "3"; + allot.UpdateTime = DateTime.Now; Db.Updateable(allot).ExecuteCommand(); //鍒犻櫎搴撳瓨鏄庣粏 Db.Deleteable(stockDetail).ExecuteCommand(); @@ -642,6 +643,7 @@ //淇敼鍑哄簱鍒嗛厤淇℃伅 allot.CompleteQty += pickQty; allot.Status = allot.Qty == allot.CompleteQty ? "5" : "3"; + allot.UpdateTime = DateTime.Now; if (allot.Status == "5") { //鍒ゆ柇璇ユ墭鐩樻槸鍚﹁繕瀛樺湪鐗╂枡 瀛樺湪鏀逛负寰呭洖搴� 寰呭洖搴撳畬鎴愬悗鏀逛负宸插畬鎴� @@ -841,6 +843,7 @@ //淇敼鍑哄簱鍒嗛厤淇℃伅 allot.CompleteQty += int.Parse(PickQty); allot.Status = allot.Qty == allot.CompleteQty ? "5" : "3"; + allot.UpdateTime = DateTime.Now; Db.Updateable(allot).ExecuteCommand(); int isDel = 0; @@ -1503,6 +1506,7 @@ OutMode = "",//鍑哄簱鍙� CreateUser = userId, + UpdateTime = DateTime.Now }; var fp = Db.Insertable(addAllot).ExecuteReturnEntity(); @@ -1887,6 +1891,7 @@ //淇敼鍑哄簱鍒嗛厤淇℃伅 allot.CompleteQty += pickQty; allot.Status = allot.Qty == allot.CompleteQty ? "5" : "3"; + allot.UpdateTime = DateTime.Now; if (allot.Status == "5") { //鍒ゆ柇璇ユ墭鐩樻槸鍚﹁繕瀛樺湪鐗╂枡 瀛樺湪鏀逛负寰呭洖搴� 寰呭洖搴撳畬鎴愬悗鏀逛负宸插畬鎴� @@ -2108,6 +2113,7 @@ OutMode = "",//鍑哄簱鍙� CreateUser = userId, + UpdateTime = DateTime.Now }; var fp = Db.Insertable(addAllot).ExecuteReturnEntity(); @@ -2351,6 +2357,8 @@ //淇敼鍑哄簱鍒嗛厤淇℃伅 allot.CompleteQty += int.Parse(PickQty); allot.Status = allot.Qty == allot.CompleteQty ? "5" : "3"; + + allot.UpdateTime = DateTime.Now; Db.Updateable(allot).ExecuteCommand(); int isDel = 0; 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"; diff --git a/Wms/WMS.BLL/Logic/AllotSku.cs b/Wms/WMS.BLL/Logic/AllotSku.cs index 3b600fd..37dc98c 100644 --- a/Wms/WMS.BLL/Logic/AllotSku.cs +++ b/Wms/WMS.BLL/Logic/AllotSku.cs @@ -2,6 +2,8 @@ using System.Collections.Generic; using System.Linq; using System.Text; +using Model.ModelDto.DataDto; +using SqlSugar; using WMS.Entity.Context; using WMS.Entity.DataEntity; using WMS.Entity.SysEntity; @@ -54,8 +56,10 @@ decimal qty = 0; //鍒嗛厤鐨勬�绘暟閲� var ztNum = needQty / fullPalletQty;//闇�瑕佹暣鎵樻暟 - var zps = palletList.Where(s => s.Qty >= fullPalletQty).ToList();//鏁存墭 - var sps = palletList.Where(s => s.Qty < fullPalletQty).ToList();//鏁f墭(鏈夊彲鑳芥槸琚攣瀹氫簡鏁伴噺鐨�) + var list = GetDataListOrderByDept(palletList); + + var zps = list.Where(s => s.Qty >= fullPalletQty).ToList();//鏁存墭 + var sps = list.Where(s => s.Qty < fullPalletQty).ToList();//鏁f墭(鏈夊彲鑳芥槸琚攣瀹氫簡鏁伴噺鐨�) if (allotSet == 0)//浼樺厛闆剁锛堝嚭瀹岄浂绠卞嚭鏁寸锛� { @@ -218,6 +222,7 @@ //-------------------------------------------------------------------------------------------------------------- + #region MyRegion ///// <summary> ///// 鑾峰緱鑳屽寘鎵块噸w锛岃璐х墿o锛屼粠绗琸浠跺悜鍚庤�冭檻锛屽緱鍒扮殑鏈�澶т环鍊� @@ -260,5 +265,50 @@ // return a > b ? a : b; //} + #endregion + + + private List<StockDetailDto> GetDataListOrderByDept(List<DataStockDetail> palletList) + { + try + { + var Db = DataContext.Db; + var data = new List<StockDetailDto>(); + + //搴撳鎵樼洏 + var detail1 = palletList.Where(m => string.IsNullOrWhiteSpace(m.LocatNo)).ToList(); + //骞冲簱鍐呮墭鐩� + var detail2 = palletList.Where(m => m.WareHouseNo == "W02").ToList(); + //绔嬪簱鍐呮墭鐩� + var detail3 = palletList.Where(m => m.WareHouseNo == "W01").ToList(); + + var data1 = detail1.Select(m => new StockDetailDto()).ToList(); + var data2 = detail2.Select(m => new StockDetailDto()).ToList(); + var data3 = detail3.Select(m => new StockDetailDto()).ToList(); + foreach (var item in data2) + { + var dept = item.LocatNo.Substring(5,2); + + item.Dept = int.Parse(dept); + } + foreach (var item in data3) + { + var dept = item.LocatNo.Substring(6, 2); + + item.Dept = int.Parse(dept); + } + data.AddRange(data1); + data.AddRange(data2.OrderBy(m => m.Dept).ToList()); + data.AddRange(data3.OrderBy(m => m.Dept).ToList()); + + return data; + } + catch (Exception e) + { + throw new Exception(e.Message); + } + } + + } } -- Gitblit v1.8.0