From c32b4de8d50baf1a9aab7138fb9846b3cf99795d Mon Sep 17 00:00:00 2001 From: Administrator <Administrator@DESKTOP-5BIMHQ3> Date: 星期四, 07 三月 2024 11:49:27 +0800 Subject: [PATCH] PDA标签拣货出库修改 --- Pda/View/SoSetting/productOut.html | 26 +++++++++++++ Wms/Wms/Controllers/PdaSoController.cs | 2 Wms/WMS.BLL/BllPdaServer/PdaSoServer.cs | 51 ++++++++++++++++++++++--- Wms/WMS.IBLL/IPdaServer/IPdaSoServer.cs | 2 Wms/WMS.BLL/BllPdaServer/PdaAsnServer.cs | 2 5 files changed, 74 insertions(+), 9 deletions(-) diff --git a/Pda/View/SoSetting/productOut.html b/Pda/View/SoSetting/productOut.html index 78e1a8b..0e49687 100644 --- a/Pda/View/SoSetting/productOut.html +++ b/Pda/View/SoSetting/productOut.html @@ -295,6 +295,17 @@ </div> </div> </td> + </tr> + <tr class="divPickQty1"> + <td> + <div class="layui-form-item layout-input" style="margin-top: 6px;"> + <label class="layui-form-label lableWidth">鎷h揣鏁伴噺锛�</label> + <div class="layui-input-block"> + <input id="pickQty1" type="number" placeholder="璇疯緭鍏ユ嫞璐ф暟閲�"autocomplete="off" + class="layui-input" oninput="value=value.replace(/^(0+)|[^\d]+/g,'')"> + </div> + </div> + </td> </tr> </table> </div> @@ -943,6 +954,20 @@ }); return; } + if(($('#boxNo3').val() != "" && ($('#pickQty1').val() != "" || $('#pickQty1').val() != 0))){ + layer.msg("杩芥函鏉$爜鍜屾嫞璐ф暟閲忎笉鑳藉悓鏃惰緭鍏ワ紒", { + icon: 2, + time: 2000 //2绉掑叧闂紙濡傛灉涓嶉厤缃紝榛樿鏄�3绉掞級 + }); + return; + } + if($('#pickQty1').val() != "" && $('#pickQty1').val()>parseInt($('#pickQty').val())){ + layer.msg("鎷h揣鏁伴噺涓嶈兘澶т簬寰呮嫞鏁伴噺锛�", { + icon: 2, + time: 2000 //2绉掑叧闂紙濡傛灉涓嶉厤缃紝榛樿鏄�3绉掞級 + }); + return; + } } // let boxQty = parseInt($('#boxQty').val()) // let qty = parseInt($('#qty').val()) @@ -976,6 +1001,7 @@ "PalletNo": $('#palletNo').val(), "BoxNo": $('#boxNo').val(), "BoxNo3": $('#boxNo3').val(), + "PickQty":$('#pickQty1').val() } sendData(IP + "/PdaSo/SoSetPick", param, 'post', function (res) { //console.log(res); diff --git a/Wms/WMS.BLL/BllPdaServer/PdaAsnServer.cs b/Wms/WMS.BLL/BllPdaServer/PdaAsnServer.cs index 1e4095d..1d8d751 100644 --- a/Wms/WMS.BLL/BllPdaServer/PdaAsnServer.cs +++ b/Wms/WMS.BLL/BllPdaServer/PdaAsnServer.cs @@ -1894,7 +1894,7 @@ throw new Exception("璇ユ墭鐩樻湭鍦ㄥ簱澶栵紝璇锋牳瀹烇紒"); } // 楠岃瘉鍏ュ簱鍗曟槑缁嗘槸鍚﹀瓨鍦� - var detail = Db.Queryable<BllArrivalNoticeDetail>().First(m => m.IsDel == "0" && m.Id == model.AsnDetailId && m.ASNNo == model.AsnNo && model.LotNo.Contains(m.LotNo)); + var 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("-1:褰撳墠鐗╂枡鍙婃壒娆′笌鍗曟嵁鏃犲叧鑱旓紝璇锋牳瀹�!"); diff --git a/Wms/WMS.BLL/BllPdaServer/PdaSoServer.cs b/Wms/WMS.BLL/BllPdaServer/PdaSoServer.cs index a2bdd98..80ea062 100644 --- a/Wms/WMS.BLL/BllPdaServer/PdaSoServer.cs +++ b/Wms/WMS.BLL/BllPdaServer/PdaSoServer.cs @@ -345,7 +345,7 @@ } //鍑哄簱pda鎷h揣 - public void SoSetPick(string soNo, string soDetailId, string palletNo, string boxNo, string boxNo3, int userId) + public void SoSetPick(string soNo, string soDetailId, string palletNo, string boxNo, string boxNo3, string pickQty1, int userId) { Db.BeginTran(); try @@ -363,6 +363,10 @@ if (string.IsNullOrWhiteSpace(palletNo)) { throw new Exception("鎵樼洏鐮佷笉鑳戒负绌�"); + } + if (!string.IsNullOrEmpty(boxNo3) && (!string.IsNullOrEmpty(pickQty1) || int.Parse(pickQty1) > 0)) + { + throw new Exception("杩芥函鏉$爜鍜屾嫞璐ф暟閲忎笉鑳藉悓鏃惰緭鍏�"); } //鍑哄簱鍗� @@ -503,7 +507,7 @@ } else { - var biaoShi = "0";//0锛氭暣绠辨嫞璐с��1锛氭暎鏀嫞璐� + var biaoShi = "0";//0锛氭暣绠辨嫞璐с��1锛氭暎鏀嫞璐с��2锛氭暟閲忔嫞璐� List<DataBoxInfo> boxInfos; var boxInfo = Db.Queryable<DataBoxInfo>().Where(m => m.IsDel == "0" && m.BoxNo == boxNo); if (boxInfo.Count() == 0) @@ -536,6 +540,24 @@ biaoShi = "1"; } + else if (!string.IsNullOrEmpty(pickQty1) && int.Parse(pickQty1) > 0)//鏁伴噺鎷h揣 + { + if (boxInfo.Count() > 1) + { + throw new Exception("璇ョ鐮佸唴瀛樺湪鏀爜涓嶈兘杩涜鏁伴噺鎷h揣"); + } + int boxQty = boxInfo.First().Qty; + if (Convert.ToInt32(pickQty1) > boxQty) + { + throw new Exception("鎷h揣鏁伴噺涓嶈兘澶т簬绠卞唴鏁伴噺"); + } + if (Convert.ToInt32(pickQty1) > needQty) + { + throw new Exception("鎷h揣鏁伴噺涓嶈兘澶т簬鍓╀綑寰呮嫞鏁伴噺"); + } + + biaoShi = "2"; + } else //鏁寸鎷h揣 { if (boxInfo.Count() == 0) @@ -557,7 +579,7 @@ var comList = new List<BllCompleteDetail>(); foreach (var item in boxInfos) { - if (comDetailList.Any(m => m.BoxNo3 == item.BoxNo3)) + if (biaoShi != "2" && comDetailList.Any(m => m.BoxNo3 == item.BoxNo3)) { throw new Exception($"褰撳墠{item.BoxNo}涓瓄item.BoxNo3}宸叉嫞璐у畬鎴愶紝璇峰嬁閲嶅鎷h揣"); } @@ -579,14 +601,31 @@ SkuName = allot.SkuName, Standard = allot.Standard, PalletNo = palletNo, - CompleteQty = item.Qty, + CompleteQty = biaoShi == "2" ? int.Parse(pickQty1) : item.Qty, CreateUser = userId }; comList.Add(completeDetail); - //鍒犻櫎搴撳瓨绠辩爜鏄庣粏 - Db.Deleteable(item).ExecuteCommand(); + if (biaoShi != "2") + { + //鍒犻櫎搴撳瓨绠辩爜鏄庣粏 + Db.Deleteable(item).ExecuteCommand(); + } + else//鏁伴噺鎷h揣 + { + if (int.Parse(pickQty1) == item.Qty) + { + //鍒犻櫎搴撳瓨绠辩爜鏄庣粏 + Db.Deleteable(item).ExecuteCommand(); + } + else + { + item.Qty -= int.Parse(pickQty1); + item.BitBoxMark = "1";//闆剁鏍囪瘑 + Db.Updateable(item).ExecuteCommand(); + } + } pickQty += item.Qty; } //鏀瑰彉搴撳唴绠辩爜鏄惁闆剁淇℃伅 diff --git a/Wms/WMS.IBLL/IPdaServer/IPdaSoServer.cs b/Wms/WMS.IBLL/IPdaServer/IPdaSoServer.cs index 62a070b..fd73bd2 100644 --- a/Wms/WMS.IBLL/IPdaServer/IPdaSoServer.cs +++ b/Wms/WMS.IBLL/IPdaServer/IPdaSoServer.cs @@ -75,7 +75,7 @@ /// <param name="boxNo2">鐩掔爜</param> /// <param name="boxNo3">鏀�/琚嬬爜</param> /// <param name="userId">鎿嶄綔浜�</param> - void SoSetPick(string soNo, string soDetailId, string palletNo, string boxNo, string boxNo3, int userId); + void SoSetPick(string soNo, string soDetailId, string palletNo, string boxNo, string boxNo3, string PickQty, int userId); /// <summary> /// 鍑哄簱pda鎷h揣 diff --git a/Wms/Wms/Controllers/PdaSoController.cs b/Wms/Wms/Controllers/PdaSoController.cs index de7edbc..cc41c9c 100644 --- a/Wms/Wms/Controllers/PdaSoController.cs +++ b/Wms/Wms/Controllers/PdaSoController.cs @@ -203,7 +203,7 @@ return Ok(new { code = 1, msg = "鏈幏鍙栧埌褰撳墠鎿嶄綔浜轰俊鎭�" }); } - _pdaSoSvc.SoSetPick(model.SoNo, model.SoDetailId, model.PalletNo, model.BoxNo, model.BoxNo3, int.Parse(userId)); + _pdaSoSvc.SoSetPick(model.SoNo, model.SoDetailId, model.PalletNo, model.BoxNo, model.BoxNo3,model.PickQty ,int.Parse(userId)); return Ok(new { code = 0, msg = "鎷h揣瀹屾垚", data = "" }); } -- Gitblit v1.8.0