From 0d0ab647110b34bbe002db2c749f7cf5ab9d73ee Mon Sep 17 00:00:00 2001 From: yuyou_x <2336760928@qq.com> Date: 星期五, 02 二月 2024 15:04:34 +0800 Subject: [PATCH] 1 --- Wms/WMS.BLL/BllPdaServer/PdaAsnServer.cs | 112 +++++++++++++++++++++++++++++++------------------------ 1 files changed, 63 insertions(+), 49 deletions(-) diff --git a/Wms/WMS.BLL/BllPdaServer/PdaAsnServer.cs b/Wms/WMS.BLL/BllPdaServer/PdaAsnServer.cs index b3b186d..f691ddc 100644 --- a/Wms/WMS.BLL/BllPdaServer/PdaAsnServer.cs +++ b/Wms/WMS.BLL/BllPdaServer/PdaAsnServer.cs @@ -1638,7 +1638,7 @@ PalletNo = model.PalletNo, PalletNo2 = "", PalletNo3 = "", - Qty = 0, + Qty = model.SkuQty, FullQty = pNum, Status = "0", Type = "0", @@ -1666,69 +1666,75 @@ #region 绠辩爜淇℃伅 var msgStr = $"绠卞彿涓簕model.BoxNo}"; var boxInfoList = new List<BllBoxInfo>(); - //棣栫 - var boxInfo = Db.Queryable<BllBoxInfo>().Where(m => m.IsDel == "0" && m.BoxNo == model.BoxNo && m.Status == "0").ToList(); - if (boxInfo.Count == 0) + if (model.SkuQty == 0) { - throw new Exception("-1:绠辩爜淇℃伅涓嶅瓨鍦�!"); - } - boxInfoList.AddRange(boxInfo); - //鏄惁杩炵画缁勬墭 - if (model.IsContinue == "1") - { - //灏剧 - var boxInfo2 = Db.Queryable<BllBoxInfo>().Where(m => m.IsDel == "0" && m.BoxNo == model.TailBoxNo && m.Status == "0").ToList(); - if (boxInfo2.Count == 0) + //棣栫 + var boxInfo = Db.Queryable<BllBoxInfo>().Where(m => m.IsDel == "0" && m.BoxNo == model.BoxNo && m.Status == "0").ToList(); + if (boxInfo.Count == 0) { - throw new Exception("-1:灏剧鐮佷俊鎭笉瀛樺湪!"); + throw new Exception("-1:绠辩爜淇℃伅涓嶅瓨鍦�!"); } - boxInfoList.AddRange(boxInfo2); - var sql = $"select * from BllBoxInfo where IsDel = '0' and Status = '0' and boxNo>'{model.BoxNo}' and boxNo<'{model.TailBoxNo}'; "; - var list = Db.Ado.SqlQuery<BllBoxInfo>(sql); - boxInfoList.AddRange(list); - msgStr += $"灏剧鍙蜂负{model.TailBoxNo}"; + boxInfoList.AddRange(boxInfo); + //鏄惁杩炵画缁勬墭 + if (model.IsContinue == "1") + { + //灏剧 + var boxInfo2 = Db.Queryable<BllBoxInfo>().Where(m => m.IsDel == "0" && m.BoxNo == model.TailBoxNo && m.Status == "0").ToList(); + if (boxInfo2.Count == 0) + { + throw new Exception("-1:灏剧鐮佷俊鎭笉瀛樺湪!"); + } + boxInfoList.AddRange(boxInfo2); + var sql = $"select * from BllBoxInfo where IsDel = '0' and Status = '0' and boxNo>'{model.BoxNo}' and boxNo<'{model.TailBoxNo}'; "; + var list = Db.Ado.SqlQuery<BllBoxInfo>(sql); + boxInfoList.AddRange(list); + msgStr += $"灏剧鍙蜂负{model.TailBoxNo}"; + } } #endregion // 鏇存敼绠辨敮鍏崇郴琛� decimal factQty = 0.00m;//鎵樼洏鎬绘暟閲� - var boxGroup = boxInfoList.GroupBy(m => m.BoxNo).ToList(); - foreach (var g in boxGroup) + if (model.SkuQty == 0) { - var boxFullQty = 0;//绠卞唴鎬绘暟閲� - foreach (var box in g) + var boxGroup = boxInfoList.GroupBy(m => m.BoxNo).ToList(); + foreach (var g in boxGroup) { - if (box.BindNo != null && box.BindNo != 0) + var boxFullQty = 0;//绠卞唴鎬绘暟閲� + foreach (var box in g) { - continue; + if (box.BindNo != null && box.BindNo != 0) + { + continue; + } + //绠卞唴鐗╂枡鎵规涓庡崟鎹槑缁嗕笉绗﹀悎 + if (box.SkuNo != detail.SkuNo || box.LotNo != detail.LotNo) + { + throw new Exception($"-1:{box.BoxNo}绠卞唴鐗╂枡鍙婃壒娆′笌鍗曟嵁涓嶄竴鑷达紝璇锋牳瀹�!"); + } + + box.ASNNo = model.AsnNo; + box.ASNDetailNo = model.AsnDetailId; + box.BindNo = bindId; + box.PalletNo = model.PalletNo; + box.Status = "1"; + box.CompleteTime = DateTime.Now; + box.UpdateTime = DateTime.Now; + box.UpdateUser = userId; + + factQty += box.Qty; + boxFullQty += box.Qty; } - //绠卞唴鐗╂枡鎵规涓庡崟鎹槑缁嗕笉绗﹀悎 - if (box.SkuNo != detail.SkuNo || box.LotNo != detail.LotNo) + if (boxFullQty > bNum) { - throw new Exception($"-1:{box.BoxNo}绠卞唴鐗╂枡鍙婃壒娆′笌鍗曟嵁涓嶄竴鑷达紝璇锋牳瀹�!"); + throw new Exception($"缁戝畾澶辫触锛寋g.Key}绠辩爜缁戝畾鏁伴噺澶т簬璇ョ墿鍝佸寘瑁呮暟閲忥紒"); } - - box.ASNNo = model.AsnNo; - box.ASNDetailNo = model.AsnDetailId; - box.BindNo = bindId; - box.PalletNo = model.PalletNo; - box.Status = "1"; - box.CompleteTime = DateTime.Now; - box.UpdateTime = DateTime.Now; - box.UpdateUser = userId; - - factQty += box.Qty; - boxFullQty += box.Qty; } - if (boxFullQty > bNum) - { - throw new Exception($"缁戝畾澶辫触锛寋g.Key}绠辩爜缁戝畾鏁伴噺澶т簬璇ョ墿鍝佸寘瑁呮暟閲忥紒"); - } + Db.Updateable(boxInfoList).ExecuteCommand(); + + // 鏇存柊鎵樼洏缁戝畾琛� + bind.Qty += factQty; } - Db.Updateable(boxInfoList).ExecuteCommand(); - - // 鏇存柊鎵樼洏缁戝畾琛� - bind.Qty += factQty; if (bind.FullQty < bind.Qty) { throw new Exception("鎵樼洏缁戝畾鏁伴噺宸茶秴鍑鸿鐗╂枡鍖呰鏁伴噺"); @@ -1742,7 +1748,15 @@ // 鏇存敼鍏ュ簱鍗曟槑缁嗗凡缁勬暟閲� var sqlString = string.Empty; - sqlString += $"update BllArrivalNoticeDetail set FactQty = FactQty + '{factQty}' where id = '{model.AsnDetailId}';"; + if (factQty == 0) + { + sqlString += $"update BllArrivalNoticeDetail set FactQty = FactQty + '{bind.Qty}' where id = '{model.AsnDetailId}';"; + } + else + { + sqlString += $"update BllArrivalNoticeDetail set FactQty = FactQty + '{factQty}' where id = '{model.AsnDetailId}';"; + } + Db.Ado.ExecuteCommand(sqlString); // 鏇存敼鍏ュ簱鍗曞強鍏ュ簱鏄庣粏鐘舵�� -- Gitblit v1.8.0