From 86985a3e211ab4cc1e94a696c15a6f77d21c462a Mon Sep 17 00:00:00 2001 From: chengsc <Demo@DESKTOP-CPA90BF> Date: 星期二, 15 十月 2024 18:36:51 +0800 Subject: [PATCH] 修改出库单据问题 --- Wms/WMS.BLL/BllPdaServer/PdaSoServer.cs | 88 ++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 80 insertions(+), 8 deletions(-) diff --git a/Wms/WMS.BLL/BllPdaServer/PdaSoServer.cs b/Wms/WMS.BLL/BllPdaServer/PdaSoServer.cs index 594ae57..7ccaf70 100644 --- a/Wms/WMS.BLL/BllPdaServer/PdaSoServer.cs +++ b/Wms/WMS.BLL/BllPdaServer/PdaSoServer.cs @@ -520,6 +520,7 @@ Db.Updateable(pallet).ExecuteCommand(); //淇敼鍑哄簱鍗曟槑缁嗘嫞璐ф暟閲� noticeDetail.CompleteQty += pickQty; + noticeDetail.Status = "2"; Db.Updateable(noticeDetail).ExecuteCommand(); var num = Db.Queryable<BllExportNoticeDetail>() @@ -527,7 +528,10 @@ if (num <= 0) { notice.Status = "4"; //鏇存敼涓烘墽琛屽畬鎴� + noticeDetail.Status = "3"; + Db.Updateable(noticeDetail).ExecuteCommand(); } + //淇敼鍑哄簱鍗曚俊鎭� Db.Updateable(notice).ExecuteCommand(); } @@ -739,6 +743,7 @@ } //淇敼鍑哄簱鍗曟槑缁嗘嫞璐ф暟閲� noticeDetail.CompleteQty += pickQty; + noticeDetail.Status = "2"; Db.Updateable(noticeDetail).ExecuteCommand(); var num = Db.Queryable<BllExportNoticeDetail>() @@ -746,6 +751,9 @@ if (num <= 0) { notice.Status = "4"; //鏇存敼涓烘墽琛屽畬鎴� + + noticeDetail.Status = "3"; + Db.Updateable(noticeDetail).ExecuteCommand(); } //淇敼鍑哄簱鍗曚俊鎭� Db.Updateable(notice).ExecuteCommand(); @@ -940,6 +948,7 @@ //淇敼鍑哄簱鍗曟槑缁嗘嫞璐ф暟閲� noticeDetail.CompleteQty += int.Parse(PickQty); + noticeDetail.Status = "2"; Db.Updateable(noticeDetail).ExecuteCommand(); var num = Db.Queryable<BllExportNoticeDetail>() @@ -947,6 +956,8 @@ if (num <= 0) { notice.Status = "4"; //鏇存敼涓烘墽琛屽畬鎴� + noticeDetail.Status = "3"; + Db.Updateable(noticeDetail).ExecuteCommand(); } //淇敼鍑哄簱鍗曚俊鎭� Db.Updateable(notice).ExecuteCommand(); @@ -3857,10 +3868,14 @@ { throw new Exception("鏈煡璇㈠埌璇ュ嚭搴撳崟鐨勪俊鎭�"); } - if (notice.Status != "3") + if (notice.Type != "1" && notice.Type != "2" && notice.Type != "3") { - throw new Exception("鍑哄簱鍗曠殑鐘舵�佷笉鏄鍦ㄦ墽琛岋紝涓嶈兘鎷h揣"); + if (notice.Status != "3") + { + throw new Exception("鍑哄簱鍗曠殑鐘舵�佷笉鏄鍦ㄦ墽琛岋紝涓嶈兘鎷h揣"); + } } + //鍑哄簱鍗曟槑缁� var noticeDetail = Db.Queryable<BllExportNoticeDetail>() .First(m => m.IsDel == "0" && m.Id == int.Parse(soDetailId)); @@ -3897,7 +3912,7 @@ #region 鎷兼墭淇℃伅 var sdId = 0; bool isNew = false; - var pinStockDetail = Db.Queryable<DataStockDetail>().First(m => m.IsDel == "0" && m.PalletNo == palletNoNew && m.SkuNo == allot.SkuNo && m.LotNo == allot.LotNo); + var pinStockDetail = Db.Queryable<DataStockDetail>().First(m => m.IsDel == "0" && m.PalletNo == palletNoNew); if (pinStockDetail != null) { if (palletNo != palletNoNew)//闈炴暣鎵樻嫞璐� @@ -4068,6 +4083,7 @@ //淇敼鍑哄簱鍗曟槑缁嗘嫞璐ф暟閲� noticeDetail.CompleteQty += pickQty; + noticeDetail.Status = "2"; Db.Updateable(noticeDetail).ExecuteCommand(); var num = Db.Queryable<BllExportNoticeDetail>() @@ -4075,6 +4091,8 @@ if (num <= 0) { notice.Status = "4"; //鏇存敼涓烘墽琛屽畬鎴� + noticeDetail.Status = "3"; + Db.Updateable(noticeDetail).ExecuteCommand(); } //淇敼鍑哄簱鍗曚俊鎭� Db.Updateable(notice).ExecuteCommand(); @@ -4083,7 +4101,7 @@ { var biaoShi = "0";//0锛氭暣绠辨嫞璐с��1锛氭暎鏀嫞璐с��2锛氭暟閲忔嫞璐� List<DataBoxInfo> boxInfos; - var boxInfo = Db.Queryable<DataBoxInfo>().Where(m => m.IsDel == "0" && m.BoxNo == boxNo); + var boxInfo = Db.Queryable<DataBoxInfo>().Where(m => m.IsDel == "0" && m.BoxNo == boxNo && m.StockDetailId == stockDetail.Id); if (boxInfo.Count() == 0) { throw new Exception("鏈煡璇㈠埌璇ョ鐮佸強杩芥函鐮佺殑淇℃伅"); @@ -4220,6 +4238,8 @@ } else//鏁伴噺鎷h揣 { + var boxInfo2 = Db.Queryable<DataBoxInfo>().First(m => m.IsDel == "0" && m.BoxNo == boxNo && m.StockDetailId == sdId); + if (decimal.Parse(pickQty1) == item.Qty) { //淇敼搴撳瓨绠辩爜鏄庣粏 @@ -4231,9 +4251,53 @@ } else { + if (boxInfo2 == null) + { + var dataBoxInfo = new DataBoxInfo() + { + StockDetailId = sdId, + BindNo = item.BindNo, + BoxNo = item.BoxNo, + BoxNo2 = item.BoxNo2, + BoxNo3 = item.BoxNo3, + PalletNo = item.PalletNo, + PalletNo2 = item.PalletNo2, + PalletNo3 = item.PalletNo3, + Qty = decimal.Parse(pickQty1), + FullQty = item.FullQty, + Status = "4", + LotNo = item.LotNo, + LotText = item.LotText, + SkuNo = item.SkuNo, + SkuName = item.SkuName, + Standard = item.Standard, + ProductionTime = item.ProductionTime, + SupplierLot = item.SupplierLot, + InspectMark = item.InspectMark, + BitBoxMark = "1", + InspectStatus = item.InspectStatus, + InspectTime = item.InspectTime, + }; + + Db.Insertable(dataBoxInfo).ExecuteCommand(); + } + else + { + boxInfo2.Qty += decimal.Parse(pickQty1); + item.BitBoxMark = boxInfo2.Qty>= boxInfo2.FullQty? "0":"1" ;//闆剁鏍囪瘑 + Db.Updateable(boxInfo2).ExecuteCommand(); + } item.Qty -= decimal.Parse(pickQty1); item.BitBoxMark = "1";//闆剁鏍囪瘑 - Db.Updateable(item).ExecuteCommand(); + if (item.Qty<=0) + { + Db.Deleteable(item).ExecuteCommand(); + } + else + { + Db.Updateable(item).ExecuteCommand(); + } + } pickQty += int.Parse(pickQty1); @@ -4300,6 +4364,7 @@ } //淇敼鍑哄簱鍗曟槑缁嗘嫞璐ф暟閲� noticeDetail.CompleteQty += pickQty; + noticeDetail.Status = "2"; Db.Updateable(noticeDetail).ExecuteCommand(); var num = Db.Queryable<BllExportNoticeDetail>() @@ -4307,17 +4372,21 @@ if (num <= 0) { notice.Status = "4"; //鏇存敼涓烘墽琛屽畬鎴� + noticeDetail.Status = "3"; + Db.Updateable(noticeDetail).ExecuteCommand(); } + //淇敼鍑哄簱鍗曚俊鎭� Db.Updateable(notice).ExecuteCommand(); } if (isNew) { - sd.Qty = pickQty; - sd.LockQty = pickQty; + var sd2 = Db.Queryable<DataStockDetail>().First(m=>m.Id == sdId); + sd2.Qty = pickQty; + sd2.LockQty = pickQty; - Db.Updateable(sd).ExecuteCommand(); + Db.Updateable(sd2).ExecuteCommand(); } else { @@ -4633,6 +4702,7 @@ //淇敼鍑哄簱鍗曟槑缁嗘嫞璐ф暟閲� noticeDetail.CompleteQty += int.Parse(PickQty); + noticeDetail.Status = "2"; Db.Updateable(noticeDetail).ExecuteCommand(); var num = Db.Queryable<BllExportNoticeDetail>() @@ -4640,6 +4710,8 @@ if (num <= 0) { notice.Status = "4"; //鏇存敼涓烘墽琛屽畬鎴� + noticeDetail.Status = "3"; + Db.Updateable(noticeDetail).ExecuteCommand(); } //淇敼鍑哄簱鍗曚俊鎭� Db.Updateable(notice).ExecuteCommand(); -- Gitblit v1.8.0