From e85e1603b2d1c013be767a393a27ff4f2b97be81 Mon Sep 17 00:00:00 2001 From: hwh <332078369@qq.com> Date: 星期一, 05 八月 2024 16:59:44 +0800 Subject: [PATCH] pda优化异步 --- Wms/WMS.BLL/BllPdaServer/PdaSoServer.cs | 589 ++++++++++++++++++++++++++++------------------------------ 1 files changed, 281 insertions(+), 308 deletions(-) diff --git a/Wms/WMS.BLL/BllPdaServer/PdaSoServer.cs b/Wms/WMS.BLL/BllPdaServer/PdaSoServer.cs index d3b7475..3ab3a17 100644 --- a/Wms/WMS.BLL/BllPdaServer/PdaSoServer.cs +++ b/Wms/WMS.BLL/BllPdaServer/PdaSoServer.cs @@ -2029,56 +2029,56 @@ } //鍙栨牱鍑哄簱鎷h揣(鏃犳爣绛�) - public void SampleSoSetQtyPick(string soType, string soNo, string soDetailId, string palletNo, string PickQty, string asnNo, int userId) + public async Task SampleSoSetQtyPick(string soType, string soNo, string soDetailId, string palletNo, string PickQty, string asnNo, int userId) { Db.BeginTran(); try { if (string.IsNullOrWhiteSpace(soType)) { - throw new Exception("鍙栨牱鏍囪瘑涓嶈兘涓虹┖"); + throw Oops.Bah("鍙栨牱鏍囪瘑涓嶈兘涓虹┖"); } if (soType == "1") { if (string.IsNullOrWhiteSpace(asnNo)) { - throw new Exception("鍏ュ簱鍗曟嵁涓嶈兘涓虹┖"); + throw Oops.Bah("鍏ュ簱鍗曟嵁涓嶈兘涓虹┖"); } if (string.IsNullOrWhiteSpace(palletNo)) { - throw new Exception("鎵樼洏鐮佷笉鑳戒负绌�"); + throw Oops.Bah("鎵樼洏鐮佷笉鑳戒负绌�"); } //鍏堝垽鏂槸鍚︽槸搴撳鍙栨牱鎵樼洏 - var allot = Db.Queryable<BllExportAllot>().First(m => + var allot = await Db.Queryable<BllExportAllot>().FirstAsync(m => m.IsDel == "0" && m.PalletNo == palletNo && m.Status != "5" && m.Status != "6"); if (allot != null) { - throw new Exception("褰撳墠鎵樼洏涓嶅睘浜庡簱鍓嶅彇鏍�"); + throw Oops.Bah("褰撳墠鎵樼洏涓嶅睘浜庡簱鍓嶅彇鏍�"); } //搴撳瓨鏄庣粏 - var stockDetail = Db.Queryable<DataStockDetail>().First(m => m.IsDel == "0" && m.ASNNo == asnNo && m.PalletNo == palletNo); + var stockDetail = await Db.Queryable<DataStockDetail>().FirstAsync(m => m.IsDel == "0" && m.ASNNo == asnNo && m.PalletNo == palletNo); if (stockDetail == null) { - throw new Exception("鏈煡璇㈠埌璇ユ墭鐩樼殑搴撳瓨鏄庣粏淇℃伅锛�"); + throw Oops.Bah("鏈煡璇㈠埌璇ユ墭鐩樼殑搴撳瓨鏄庣粏淇℃伅锛�"); } - var sku = Db.Queryable<SysMaterials>().First(m => m.IsDel == "0" && m.SkuNo == stockDetail.SkuNo); + var sku = await Db.Queryable<SysMaterials>().FirstAsync(m => m.IsDel == "0" && m.SkuNo == stockDetail.SkuNo); if (sku == null) { - throw new Exception("鏈煡璇㈠埌褰撳墠鎵樼洏涓婄殑鐗╂枡淇℃伅"); + throw Oops.Bah("鏈煡璇㈠埌褰撳墠鎵樼洏涓婄殑鐗╂枡淇℃伅"); } //搴撳瓨鎬昏〃 - var stock = Db.Queryable<DataStock>().First(a => a.IsDel == "0" && a.SkuNo == stockDetail.SkuNo && a.LotNo == stockDetail.LotNo); + var stock = await Db.Queryable<DataStock>().FirstAsync(a => a.IsDel == "0" && a.SkuNo == stockDetail.SkuNo && a.LotNo == stockDetail.LotNo); if (stock == null) { - throw new Exception("鏈煡璇㈠埌璇ユ墭鐩樺垎閰嶇殑搴撳瓨淇℃伅锛�"); + throw Oops.Bah("鏈煡璇㈠埌璇ユ墭鐩樺垎閰嶇殑搴撳瓨淇℃伅锛�"); } //鍑哄簱鍗� - var notice = Db.Queryable<BllExportNotice>().First(m => m.IsDel == "0" && m.AsnSampleNo == asnNo); + var notice = await Db.Queryable<BllExportNotice>().FirstAsync(m => m.IsDel == "0" && m.AsnSampleNo == asnNo); //鍒涘缓鍑哄簱鍗� if (notice == null || notice.Status == "6") { @@ -2089,7 +2089,7 @@ //鑾峰彇鑷鍗曟嵁鍙� billNo = new Common().GetMaxNo("SO"); var no = billNo; - bl = Db.Queryable<BllExportNotice>().Any(m => m.SONo == no); + bl = await Db.Queryable<BllExportNotice>().AnyAsync(m => m.SONo == no); } while (bl); var addNotice = new BllExportNotice() @@ -2106,12 +2106,12 @@ CreateUser = userId, }; - var n = Db.Insertable(addNotice).ExecuteReturnEntity(); + var n = await Db.Insertable(addNotice).ExecuteReturnEntityAsync(); notice = n; } //鍒涘缓鍑哄簱鍗曟槑缁� - var noticeDetail = Db.Queryable<BllExportNoticeDetail>().First(m => m.IsDel == "0" && m.SONo == notice.SONo && m.SkuNo == stockDetail.SkuNo && m.LotNo.Contains(stockDetail.LotNo)); + var noticeDetail = await Db.Queryable<BllExportNoticeDetail>().FirstAsync(m => m.IsDel == "0" && m.SONo == notice.SONo && m.SkuNo == stockDetail.SkuNo && m.LotNo.Contains(stockDetail.LotNo)); if (noticeDetail == null) { var addNoticeDetail = new BllExportNoticeDetail() @@ -2139,11 +2139,11 @@ CreateUser = userId, }; - var m = Db.Insertable(addNoticeDetail).ExecuteReturnEntity(); + var m = await Db.Insertable(addNoticeDetail).ExecuteReturnEntityAsync(); noticeDetail = m; } //鍑哄簱鍒嗛厤淇℃伅 - var allot2 = Db.Queryable<BllExportAllot>().First(m => m.IsDel == "0" && m.Status == "5" && m.SONo == notice.SONo && m.PalletNo == palletNo); + var allot2 = await Db.Queryable<BllExportAllot>().FirstAsync(m => m.IsDel == "0" && m.Status == "5" && m.SONo == notice.SONo && m.PalletNo == palletNo); if (allot2 == null) { //娣诲姞鍒嗛厤琛ㄤ俊鎭� @@ -2175,12 +2175,12 @@ UpdateTime = DateTime.Now }; - var fp = Db.Insertable(addAllot).ExecuteReturnEntity(); + var fp = await Db.Insertable(addAllot).ExecuteReturnEntityAsync(); allot2 = fp; } //鑾峰彇褰撳墠鎵樼洏鎷h揣鏄庣粏 - var complete = Db.Queryable<BllCompleteDetail>().First(a => a.IsDel == "0" && a.PalletNo == palletNo && a.SONo == notice.SONo && a.ExportAllotId == allot2.Id && a.StockId == stockDetail.Id); + var complete = await Db.Queryable<BllCompleteDetail>().FirstAsync(a => a.IsDel == "0" && a.PalletNo == palletNo && a.SONo == notice.SONo && a.ExportAllotId == allot2.Id && a.StockId == stockDetail.Id); //鍒よ鏄惁瀛樺湪鎷h揣鏄庣粏 int isComplete = 0; @@ -2219,7 +2219,7 @@ comList.Add(completeDetail); //娣诲姞鎷h揣鏄庣粏 - Db.Insertable(comList).ExecuteCommand(); + await Db.Insertable(comList).ExecuteCommandAsync(); } else if (isComplete == 1) { @@ -2227,7 +2227,7 @@ complete.UpdateUser = userId; complete.UpdateTime = Db.GetDate(); - Db.Updateable(complete).ExecuteCommand(); + await Db.Updateable(complete).ExecuteCommandAsync(); } @@ -2235,7 +2235,7 @@ //淇敼鍑哄簱鍒嗛厤淇℃伅 allot2.Qty += int.Parse(PickQty); allot2.CompleteQty += int.Parse(PickQty); - Db.Updateable(allot2).ExecuteCommand(); + await Db.Updateable(allot2).ExecuteCommandAsync(); int isDel = 0; @@ -2257,36 +2257,36 @@ } if (stockDetail.Qty <= 0) { - Db.Deleteable(stockDetail).ExecuteCommand(); + await Db.Deleteable(stockDetail).ExecuteCommandAsync(); } else { isDel = 1; - Db.Updateable(stockDetail).ExecuteCommand(); + await Db.Updateable(stockDetail).ExecuteCommandAsync(); } //鍒犻櫎鎴栦慨鏀瑰簱瀛� stock.Qty -= int.Parse(PickQty); if (stock.Qty <= 0) { - Db.Deleteable(stock).ExecuteCommand(); + await Db.Deleteable(stock).ExecuteCommandAsync(); } else { - Db.Updateable(stock).ExecuteCommand(); + await Db.Updateable(stock).ExecuteCommandAsync(); } //鏀瑰彉鎵樼洏鐘舵�佷负锛氭湭浣跨敤 - var pallet = Db.Queryable<SysPallets>().First(m => m.PalletNo == palletNo && m.IsDel == "0"); + var pallet = await Db.Queryable<SysPallets>().FirstAsync(m => m.PalletNo == palletNo && m.IsDel == "0"); if (pallet == null) { - throw new Exception("鏈湪鎵樼洏琛ㄤ腑鏌ヨ鍒版墭鐩樹俊鎭�"); + throw Oops.Bah("鏈湪鎵樼洏琛ㄤ腑鏌ヨ鍒版墭鐩樹俊鎭�"); } //鍒ゆ柇鎵樼洏涓婄墿鏂欐槸鍚︽嫞璐у畬姣� if (isDel == 0) { pallet.Status = "0"; - Db.Updateable(pallet).ExecuteCommand(); + await Db.Updateable(pallet).ExecuteCommandAsync(); } //淇敼鍑哄簱鍗曟槑缁嗘嫞璐ф暟閲� @@ -2295,7 +2295,7 @@ noticeDetail.FactQty += int.Parse(PickQty); noticeDetail.CompleteQty += int.Parse(PickQty); noticeDetail.Money = string.IsNullOrWhiteSpace(sku.Price.ToString()) ? null : sku.Price * noticeDetail.Qty; - Db.Updateable(noticeDetail).ExecuteCommand(); + await Db.Updateable(noticeDetail).ExecuteCommandAsync(); } else if (soType == "0") @@ -2304,7 +2304,7 @@ if (string.IsNullOrWhiteSpace(soNo)) { - throw new Exception("鍑哄簱鍗曟嵁涓嶈兘涓虹┖"); + throw Oops.Bah("鍑哄簱鍗曟嵁涓嶈兘涓虹┖"); } //if (string.IsNullOrWhiteSpace(soDetailId)) //{ @@ -2312,56 +2312,56 @@ //} if (string.IsNullOrWhiteSpace(palletNo)) { - throw new Exception("鎵樼洏鐮佷笉鑳戒负绌�"); + throw Oops.Bah("鎵樼洏鐮佷笉鑳戒负绌�"); } //鍑哄簱鍗� var notice = Db.Queryable<BllExportNotice>().First(m => m.IsDel == "0" && m.SONo == soNo); if (notice == null) { - throw new Exception("鏈煡璇㈠埌璇ュ嚭搴撳崟鐨勪俊鎭�"); + throw Oops.Bah("鏈煡璇㈠埌璇ュ嚭搴撳崟鐨勪俊鎭�"); } if (notice.Status != "3") { - throw new Exception("鍑哄簱鍗曠殑鐘舵�佷笉鏄鍦ㄦ墽琛岋紝涓嶈兘鎷h揣"); + throw Oops.Bah("鍑哄簱鍗曠殑鐘舵�佷笉鏄鍦ㄦ墽琛岋紝涓嶈兘鎷h揣"); } //鍑哄簱鍗曟槑缁� var noticeDetail = Db.Queryable<BllExportNoticeDetail>() .First(m => m.IsDel == "0" && m.Id == int.Parse(soDetailId)); if (noticeDetail == null) { - throw new Exception("鏈煡璇㈠埌璇ュ嚭搴撳崟鏄庣粏鐨勪俊鎭�"); + throw Oops.Bah("鏈煡璇㈠埌璇ュ嚭搴撳崟鏄庣粏鐨勪俊鎭�"); } //鍑哄簱鍒嗛厤淇℃伅 - var allot = Db.Queryable<BllExportAllot>().First(m => + var allot = await Db.Queryable<BllExportAllot>().FirstAsync(m => m.IsDel == "0" && (m.Status == "2" || m.Status == "3") && m.SONo == soNo && m.SODetailNo == int.Parse(soDetailId) && m.PalletNo == palletNo); if (allot == null) { - throw new Exception("鏈煡璇㈠埌璇ユ墭鐩樼殑鍒嗛厤淇℃伅"); + throw Oops.Bah("鏈煡璇㈠埌璇ユ墭鐩樼殑鍒嗛厤淇℃伅"); } //鍓╀綑鎷h揣鏁伴噺锛堝緟鎷e噺鍘诲凡鎷o級 var needQty = allot.Qty - allot.CompleteQty; if (int.Parse(PickQty) > needQty) { - throw new Exception("鎷h揣鏁伴噺涓嶈兘澶т簬鎵樺唴鍓╀綑寰呮嫞鏁伴噺"); + throw Oops.Bah("鎷h揣鏁伴噺涓嶈兘澶т簬鎵樺唴鍓╀綑寰呮嫞鏁伴噺"); } //搴撳瓨鏄庣粏 - var stockDetail = Db.Queryable<DataStockDetail>().First(m => m.IsDel == "0" && m.Id == allot.StockId); + var stockDetail = await Db.Queryable<DataStockDetail>().FirstAsync(m => m.IsDel == "0" && m.Id == allot.StockId); if (stockDetail == null) { - throw new Exception("鏈煡璇㈠埌璇ユ墭鐩樺垎閰嶇殑搴撳瓨鏄庣粏淇℃伅锛�"); + throw Oops.Bah("鏈煡璇㈠埌璇ユ墭鐩樺垎閰嶇殑搴撳瓨鏄庣粏淇℃伅锛�"); } //搴撳瓨鎬昏〃 - var stock = Db.Queryable<DataStock>().First(a => a.IsDel == "0" && a.SkuNo == stockDetail.SkuNo && a.LotNo == stockDetail.LotNo); + var stock = await Db.Queryable<DataStock>().FirstAsync(a => a.IsDel == "0" && a.SkuNo == stockDetail.SkuNo && a.LotNo == stockDetail.LotNo); if (stock == null) { - throw new Exception("鏈煡璇㈠埌璇ユ墭鐩樺垎閰嶇殑搴撳瓨淇℃伅锛�"); + throw Oops.Bah("鏈煡璇㈠埌璇ユ墭鐩樺垎閰嶇殑搴撳瓨淇℃伅锛�"); } #endregion //鑾峰彇褰撳墠鎵樼洏鎷h揣鏄庣粏 - var complete = Db.Queryable<BllCompleteDetail>().First(a => a.IsDel == "0" && a.PalletNo == palletNo && a.SONo == notice.SONo && a.SODetailNo == noticeDetail.Id && a.ExportAllotId == allot.Id && a.StockId == stockDetail.Id); + var complete = await Db.Queryable<BllCompleteDetail>().FirstAsync(a => a.IsDel == "0" && a.PalletNo == palletNo && a.SONo == notice.SONo && a.SODetailNo == noticeDetail.Id && a.ExportAllotId == allot.Id && a.StockId == stockDetail.Id); //鍒よ鏄惁瀛樺湪鎷h揣鏄庣粏 int isComplete = 0; @@ -2400,7 +2400,7 @@ comList.Add(completeDetail); //娣诲姞鎷h揣鏄庣粏 - Db.Insertable(comList).ExecuteCommand(); + await Db.Insertable(comList).ExecuteCommandAsync(); } else if (isComplete == 1) { @@ -2408,7 +2408,7 @@ complete.UpdateUser = userId; complete.UpdateTime = Db.GetDate(); - Db.Updateable(complete).ExecuteCommand(); + await Db.Updateable(complete).ExecuteCommandAsync(); } @@ -2418,7 +2418,7 @@ allot.Status = allot.Qty == allot.CompleteQty ? "5" : "3"; allot.UpdateTime = DateTime.Now; - Db.Updateable(allot).ExecuteCommand(); + await Db.Updateable(allot).ExecuteCommandAsync(); int isDel = 0; @@ -2441,12 +2441,12 @@ } if (stockDetail.Qty <= 0) { - Db.Deleteable(stockDetail).ExecuteCommand(); + await Db.Deleteable(stockDetail).ExecuteCommandAsync(); } else { isDel = 1; - Db.Updateable(stockDetail).ExecuteCommand(); + await Db.Updateable(stockDetail).ExecuteCommandAsync(); } //鍒犻櫎鎴栦慨鏀瑰簱瀛� stock.Qty -= int.Parse(PickQty); @@ -2454,39 +2454,39 @@ stock.IsSampling = "1"; //鏄惁鍙栨牱 if (stock.Qty <= 0) { - Db.Deleteable(stock).ExecuteCommand(); + await Db.Deleteable(stock).ExecuteCommandAsync(); } else { - Db.Updateable(stock).ExecuteCommand(); + await Db.Updateable(stock).ExecuteCommandAsync(); } //鏀瑰彉鎵樼洏鐘舵�佷负锛氭湭浣跨敤 - var pallet = Db.Queryable<SysPallets>().First(m => m.PalletNo == palletNo && m.IsDel == "0"); + var pallet = await Db.Queryable<SysPallets>().FirstAsync(m => m.PalletNo == palletNo && m.IsDel == "0"); if (pallet == null) { - throw new Exception("鏈湪鎵樼洏琛ㄤ腑鏌ヨ鍒版墭鐩樹俊鎭�"); + throw Oops.Bah("鏈湪鎵樼洏琛ㄤ腑鏌ヨ鍒版墭鐩樹俊鎭�"); } //鍒ゆ柇鎵樼洏涓婄墿鏂欐槸鍚︽嫞璐у畬姣� if (isDel == 0) { pallet.Status = "0"; - Db.Updateable(pallet).ExecuteCommand(); + await Db.Updateable(pallet).ExecuteCommandAsync(); } //淇敼鍑哄簱鍗曟槑缁嗘嫞璐ф暟閲� noticeDetail.CompleteQty += int.Parse(PickQty); - Db.Updateable(noticeDetail).ExecuteCommand(); + await Db.Updateable(noticeDetail).ExecuteCommandAsync(); - var num = Db.Queryable<BllExportNoticeDetail>() - .Count(m => m.IsDel == "0" && m.SONo == soNo && m.CompleteQty < m.Qty); + var num = await Db.Queryable<BllExportNoticeDetail>() + .CountAsync(m => m.IsDel == "0" && m.SONo == soNo && m.CompleteQty < m.Qty); if (num <= 0) { notice.Status = "4"; //鏇存敼涓烘墽琛屽畬鎴� } //淇敼鍑哄簱鍗曚俊鎭� - Db.Updateable(notice).ExecuteCommand(); + await Db.Updateable(notice).ExecuteCommandAsync(); } @@ -2497,7 +2497,6 @@ catch (Exception e) { Db.RollbackTran(); - throw new Exception(e.Message); } } @@ -2513,7 +2512,7 @@ /// <param name="pickQty1"></param> /// <param name="palletNoNew"></param> /// <param name="userId"></param> - public void SoSetPinPick(string soNo, string soDetailId, string palletNo, string boxNo, string boxNo3, string pickQty1, string palletNoNew, int userId) + public async Task SoSetPinPick(string soNo, string soDetailId, string palletNo, string boxNo, string boxNo3, string pickQty1, string palletNoNew, int userId) { Db.BeginTran(); try @@ -2523,71 +2522,71 @@ if (string.IsNullOrWhiteSpace(soNo)) { - throw new Exception("鍑哄簱鍗曟嵁涓嶈兘涓虹┖"); + throw Oops.Bah("鍑哄簱鍗曟嵁涓嶈兘涓虹┖"); } if (string.IsNullOrWhiteSpace(soDetailId)) { - throw new Exception("鍑哄簱鐗╂枡-鎵规涓嶈兘涓虹┖"); + throw Oops.Bah("鍑哄簱鐗╂枡-鎵规涓嶈兘涓虹┖"); } if (string.IsNullOrWhiteSpace(palletNo)) { - throw new Exception("鎵樼洏鐮佷笉鑳戒负绌�"); + throw Oops.Bah("鎵樼洏鐮佷笉鑳戒负绌�"); } if (!string.IsNullOrEmpty(boxNo3) && !string.IsNullOrEmpty(pickQty1) && int.Parse(pickQty1) > 0) { - throw new Exception("杩芥函鏉$爜鍜屾嫞璐ф暟閲忎笉鑳藉悓鏃惰緭鍏�"); + throw Oops.Bah("杩芥函鏉$爜鍜屾嫞璐ф暟閲忎笉鑳藉悓鏃惰緭鍏�"); } if (string.IsNullOrWhiteSpace(palletNoNew)) { - throw new Exception("鏂版墭鐩樼爜涓嶈兘涓虹┖"); + throw Oops.Bah("鏂版墭鐩樼爜涓嶈兘涓虹┖"); } if (palletNo == palletNoNew)//鍘熸墭鐩樹笌鏂版墭鐩樹竴鑷� { if (!string.IsNullOrEmpty(boxNo)) { - throw new Exception("鍘熸墭鐩樹笌鏂版墭鐩樹竴鑷达紝璇烽�夋嫨鏁存墭鍑哄簱"); + throw Oops.Bah("鍘熸墭鐩樹笌鏂版墭鐩樹竴鑷达紝璇烽�夋嫨鏁存墭鍑哄簱"); } } //鍑哄簱鍗� - var notice = Db.Queryable<BllExportNotice>().First(m => m.IsDel == "0" && m.SONo == soNo); + var notice = await Db.Queryable<BllExportNotice>().FirstAsync(m => m.IsDel == "0" && m.SONo == soNo); if (notice == null) { - throw new Exception("鏈煡璇㈠埌璇ュ嚭搴撳崟鐨勪俊鎭�"); + throw Oops.Bah("鏈煡璇㈠埌璇ュ嚭搴撳崟鐨勪俊鎭�"); } if (notice.Status != "3") { - throw new Exception("鍑哄簱鍗曠殑鐘舵�佷笉鏄鍦ㄦ墽琛岋紝涓嶈兘鎷h揣"); + throw Oops.Bah("鍑哄簱鍗曠殑鐘舵�佷笉鏄鍦ㄦ墽琛岋紝涓嶈兘鎷h揣"); } //鍑哄簱鍗曟槑缁� - var noticeDetail = Db.Queryable<BllExportNoticeDetail>() - .First(m => m.IsDel == "0" && m.Id == int.Parse(soDetailId)); + var noticeDetail = await Db.Queryable<BllExportNoticeDetail>() + .FirstAsync(m => m.IsDel == "0" && m.Id == int.Parse(soDetailId)); if (noticeDetail == null) { - throw new Exception("鏈煡璇㈠埌璇ュ嚭搴撳崟鏄庣粏鐨勪俊鎭�"); + throw Oops.Bah("鏈煡璇㈠埌璇ュ嚭搴撳崟鏄庣粏鐨勪俊鎭�"); } //鍑哄簱鍒嗛厤淇℃伅 - var allot = Db.Queryable<BllExportAllot>().First(m => + var allot = await Db.Queryable<BllExportAllot>().FirstAsync(m => m.IsDel == "0" && (m.Status == "2" || m.Status == "3") && m.SONo == soNo && m.SODetailNo == int.Parse(soDetailId) && m.PalletNo == palletNo); if (allot == null) { - throw new Exception("鏈煡璇㈠埌璇ユ墭鐩樼殑鍒嗛厤淇℃伅"); + throw Oops.Bah("鏈煡璇㈠埌璇ユ墭鐩樼殑鍒嗛厤淇℃伅"); } //鍓╀綑鎷h揣鏁伴噺锛堝緟鎷e噺鍘诲凡鎷o級 var needQty = allot.Qty - allot.CompleteQty; //搴撳瓨鏄庣粏 - var stockDetail = Db.Queryable<DataStockDetail>().First(m => m.IsDel == "0" && m.Id == allot.StockId); + var stockDetail = await Db.Queryable<DataStockDetail>().FirstAsync(m => m.IsDel == "0" && m.Id == allot.StockId); if (stockDetail == null) { - throw new Exception("鏈煡璇㈠埌璇ユ墭鐩樺垎閰嶇殑搴撳瓨鏄庣粏淇℃伅锛�"); + throw Oops.Bah("鏈煡璇㈠埌璇ユ墭鐩樺垎閰嶇殑搴撳瓨鏄庣粏淇℃伅锛�"); } //搴撳瓨鎬昏〃 - var stock = Db.Queryable<DataStock>().First(a => a.IsDel == "0" && a.SkuNo == stockDetail.SkuNo && a.LotNo == stockDetail.LotNo); + var stock = await Db.Queryable<DataStock>().FirstAsync(a => a.IsDel == "0" && a.SkuNo == stockDetail.SkuNo && a.LotNo == stockDetail.LotNo); if (stock == null) { - throw new Exception("鏈煡璇㈠埌璇ユ墭鐩樺垎閰嶇殑搴撳瓨淇℃伅锛�"); + throw Oops.Bah("鏈煡璇㈠埌璇ユ墭鐩樺垎閰嶇殑搴撳瓨淇℃伅锛�"); } #endregion @@ -2595,14 +2594,14 @@ #region 鎷兼墭淇℃伅 var sdId = 0; bool isNew = false; - var pinStockDetail = Db.Queryable<DataStockDetail>().First(m => m.IsDel == "0" && m.PalletNo == palletNoNew); + var pinStockDetail = await Db.Queryable<DataStockDetail>().FirstAsync(m => m.IsDel == "0" && m.PalletNo == palletNoNew); if (pinStockDetail != null) { if (palletNo != palletNoNew)//闈炴暣鎵樻嫞璐� { if (pinStockDetail.SONo != notice.SONo) { - throw new Exception("鎷兼墭鎵樼洏涓婂彧鑳芥斁鍚屼竴涓嚭搴撳崟涓嬬殑鐗╂枡锛�"); + throw Oops.Bah("鎷兼墭鎵樼洏涓婂彧鑳芥斁鍚屼竴涓嚭搴撳崟涓嬬殑鐗╂枡锛�"); } if (pinStockDetail.SkuName != stockDetail.SkuName || pinStockDetail.LotNo != stockDetail.LotNo) { @@ -2615,14 +2614,14 @@ { isNew = true; - var newPalletInfo = Db.Queryable<SysPallets>().First(m => m.IsDel == "0" && m.PalletNo == palletNoNew && m.Status == "0"); + var newPalletInfo = await Db.Queryable<SysPallets>().FirstAsync(m => m.IsDel == "0" && m.PalletNo == palletNoNew && m.Status == "0"); if (newPalletInfo == null) { - throw new Exception("鏂版墭鐩樹俊鎭笉瀛樺湪鎴栧凡琚娇鐢紒"); + throw Oops.Bah("鏂版墭鐩樹俊鎭笉瀛樺湪鎴栧凡琚娇鐢紒"); } //淇敼鏂版墭鐩樼姸鎬� newPalletInfo.Status = "1"; - Db.Updateable(newPalletInfo).ExecuteCommand(); + await Db.Updateable(newPalletInfo).ExecuteCommandAsync(); } var sd = new DataStockDetail(); if (isNew) @@ -2668,7 +2667,7 @@ sd.CreateTime = nowDate; //鏂板鎷兼墭搴撳瓨鏄庣粏淇℃伅 - sdId = Db.Insertable(sd).ExecuteReturnIdentity(); + sdId = await Db.Insertable(sd).ExecuteReturnIdentityAsync(); } #endregion @@ -2677,28 +2676,28 @@ { List<DataBoxInfo> boxInfos; var boxInfo = Db.Queryable<DataBoxInfo>().Where(m => m.IsDel == "0" && m.PalletNo == palletNo);//鎵惧埌鎵樼洏涓婃墍鏈夌鐮� - boxInfos = boxInfo.ToList(); + boxInfos = await boxInfo.ToListAsync(); if (boxInfo.Count() <= 0) { - throw new Exception("璇ユ墭鐩樹笂娌℃湁鍙嫞璐х殑绠卞瓙"); + throw Oops.Bah("璇ユ墭鐩樹笂娌℃湁鍙嫞璐х殑绠卞瓙"); } - var boxQty = boxInfo.GroupBy(m => m.PalletNo).Select(m => SqlFunc.AggregateSum(m.Qty)).ToList(); + var boxQty = await boxInfo.GroupBy(m => m.PalletNo).Select(m => SqlFunc.AggregateSum(m.Qty)).ToListAsync(); if (boxQty[0] > needQty) { - throw new Exception("鎷h揣鏁伴噺涓嶈兘澶т簬绠卞唴鍓╀綑寰呮嫞鏁伴噺"); + throw Oops.Bah("鎷h揣鏁伴噺涓嶈兘澶т簬绠卞唴鍓╀綑寰呮嫞鏁伴噺"); } - var comDetailList = Db.Queryable<BllCompleteDetail>().Where(m => m.IsDel == "0" && m.ExportAllotId == allot.Id && m.PalletNo == palletNo).ToList(); + var comDetailList = await Db.Queryable<BllCompleteDetail>().Where(m => m.IsDel == "0" && m.ExportAllotId == allot.Id && m.PalletNo == palletNo).ToListAsync(); var comList = new List<BllCompleteDetail>(); foreach (var item in boxInfos) { if (comDetailList.Any(m => m.BoxNo3 == item.BoxNo3)) { - throw new Exception($"褰撳墠{item.BoxNo}涓瓄item.BoxNo3}宸叉嫞璐у畬鎴愶紝璇峰嬁閲嶅鎷h揣"); + throw Oops.Bah($"褰撳墠{item.BoxNo}涓瓄item.BoxNo3}宸叉嫞璐у畬鎴愶紝璇峰嬁閲嶅鎷h揣"); } if (item.SkuNo != allot.SkuNo || item.LotNo != allot.LotNo) { - throw new Exception("褰撳墠鎵樼洏涓婃湁鍏朵粬涓嶅悓鐗╂枡鎵规锛屾嫞璐уけ璐�"); + throw Oops.Bah("褰撳墠鎵樼洏涓婃湁鍏朵粬涓嶅悓鐗╂枡鎵规锛屾嫞璐уけ璐�"); } //娣诲姞鎷h揣鏄庣粏 var completeDetail = new BllCompleteDetail() @@ -2732,41 +2731,41 @@ } item.Status = "5";//绠辨敮鐘舵�侊紝0锛氭湭缁勬墭 1锛氬凡缁勬墭 2锛氬凡鍏ュ簱 3锛氬凡鍑哄簱 4:宸插垎閰� 5锛氬凡鎷h揣 //淇敼搴撳瓨绠辩爜鏄庣粏 - Db.Updateable(item).ExecuteCommand(); + await Db.Updateable(item).ExecuteCommandAsync(); pickQty += item.Qty; } //娣诲姞鎷h揣鏄庣粏 - Db.Insertable(comList).ExecuteCommand(); + await Db.Insertable(comList).ExecuteCommandAsync(); //淇敼鍑哄簱鍒嗛厤淇℃伅 allot.CompleteQty += pickQty; allot.Status = allot.Qty == allot.CompleteQty ? "5" : "3"; allot.UpdateTime = DateTime.Now; - Db.Updateable(allot).ExecuteCommand(); + await Db.Updateable(allot).ExecuteCommandAsync(); if (palletNo != palletNoNew) { //鍒犻櫎鍘熸墭鐩樺簱瀛樻槑缁� - Db.Deleteable(stockDetail).ExecuteCommand(); + await Db.Deleteable(stockDetail).ExecuteCommandAsync(); //鏀瑰彉鍘熸墭鐩樼姸鎬佷负锛氭湭浣跨敤 - var pallet = Db.Queryable<SysPallets>().First(m => m.PalletNo == palletNo && m.IsDel == "0"); + var pallet = await Db.Queryable<SysPallets>().FirstAsync(m => m.PalletNo == palletNo && m.IsDel == "0"); if (pallet == null) { - throw new Exception("鏈湪鎵樼洏琛ㄤ腑鏌ヨ鍒版墭鐩樹俊鎭�"); + throw Oops.Bah("鏈湪鎵樼洏琛ㄤ腑鏌ヨ鍒版墭鐩樹俊鎭�"); } pallet.Status = "0"; - Db.Updateable(pallet).ExecuteCommand(); + await Db.Updateable(pallet).ExecuteCommandAsync(); } else { stockDetail.SONo = soNo; - Db.Updateable(stockDetail).ExecuteCommand(); + await Db.Updateable(stockDetail).ExecuteCommandAsync(); } //淇敼鍑哄簱鍗曟槑缁嗘嫞璐ф暟閲� noticeDetail.CompleteQty += pickQty; - Db.Updateable(noticeDetail).ExecuteCommand(); + await Db.Updateable(noticeDetail).ExecuteCommandAsync(); var num = Db.Queryable<BllExportNoticeDetail>() .Count(m => m.IsDel == "0" && m.SONo == soNo && m.CompleteQty < m.Qty); @@ -2775,48 +2774,48 @@ notice.Status = "4"; //鏇存敼涓烘墽琛屽畬鎴� } //淇敼鍑哄簱鍗曚俊鎭� - Db.Updateable(notice).ExecuteCommand(); + await Db.Updateable(notice).ExecuteCommandAsync(); } else { 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) + if (await boxInfo.CountAsync() == 0) { - throw new Exception("鏈煡璇㈠埌璇ョ鐮佸強杩芥函鐮佺殑淇℃伅"); + throw Oops.Bah("鏈煡璇㈠埌璇ョ鐮佸強杩芥函鐮佺殑淇℃伅"); } - boxInfos = boxInfo.ToList(); + boxInfos = await boxInfo.ToListAsync(); - var comDetailList = Db.Queryable<BllCompleteDetail>().Where(m => m.IsDel == "0" && m.ExportAllotId == allot.Id && m.PalletNo == palletNo).ToList(); + var comDetailList = await Db.Queryable<BllCompleteDetail>().Where(m => m.IsDel == "0" && m.ExportAllotId == allot.Id && m.PalletNo == palletNo).ToListAsync(); if (!string.IsNullOrWhiteSpace(boxNo3)) //鏁f敮鎷h揣 { boxInfos = boxInfos.Where(m => m.BoxNo3 == boxNo3).ToList(); if (boxInfos.Count() == 0) { - throw new Exception("鏈煡璇㈠埌璇ョ鐮佸強杩芥函鐮佺殑淇℃伅"); + throw Oops.Bah("鏈煡璇㈠埌璇ョ鐮佸強杩芥函鐮佺殑淇℃伅"); } if (boxInfos.Count() > 1) { - throw new Exception("璇ヨ拷婧敮鐮佺殑淇℃伅澶т簬1鏉★紝淇℃伅閿欒锛岃鏍稿疄锛�"); + throw Oops.Bah("璇ヨ拷婧敮鐮佺殑淇℃伅澶т簬1鏉★紝淇℃伅閿欒锛岃鏍稿疄锛�"); } if (boxInfos.Any(m => m.PalletNo != palletNo)) { - throw new Exception("璇ユ墭鐩樹笌绠辩爜娌℃湁缁戝畾鍏崇郴"); + throw Oops.Bah("璇ユ墭鐩樹笌绠辩爜娌℃湁缁戝畾鍏崇郴"); } var boxQty = boxInfos.First().Qty; if (boxQty > needQty) { - throw new Exception("鎷h揣鏁伴噺涓嶈兘澶т簬鍓╀綑寰呮嫞鏁伴噺"); + throw Oops.Bah("鎷h揣鏁伴噺涓嶈兘澶т簬鍓╀綑寰呮嫞鏁伴噺"); } foreach (var item in boxInfos) { if (biaoShi != "2" && comDetailList.Any(m => m.BoxNo3 == item.BoxNo3)) { - throw new Exception($"褰撳墠{item.BoxNo}涓瓄item.BoxNo3}宸叉嫞璐у畬鎴愶紝璇峰嬁閲嶅鎷h揣"); + throw Oops.Bah($"褰撳墠{item.BoxNo}涓瓄item.BoxNo3}宸叉嫞璐у畬鎴愶紝璇峰嬁閲嶅鎷h揣"); } } @@ -2826,16 +2825,16 @@ { if (boxInfo.Count() > 1) { - throw new Exception("璇ョ鐮佸唴瀛樺湪鏀爜涓嶈兘杩涜鏁伴噺鎷h揣"); + throw Oops.Bah("璇ョ鐮佸唴瀛樺湪鏀爜涓嶈兘杩涜鏁伴噺鎷h揣"); } decimal boxQty = boxInfo.First().Qty; if (Convert.ToInt32(pickQty1) > boxQty) { - throw new Exception("鎷h揣鏁伴噺涓嶈兘澶т簬绠卞唴鏁伴噺"); + throw Oops.Bah("鎷h揣鏁伴噺涓嶈兘澶т簬绠卞唴鏁伴噺"); } if (Convert.ToInt32(pickQty1) > needQty) { - throw new Exception("鎷h揣鏁伴噺涓嶈兘澶т簬鍓╀綑寰呮嫞鏁伴噺"); + throw Oops.Bah("鎷h揣鏁伴噺涓嶈兘澶т簬鍓╀綑寰呮嫞鏁伴噺"); } biaoShi = "2"; @@ -2844,23 +2843,23 @@ { if (boxInfo.Count() == 0) { - throw new Exception("鏈煡璇㈠埌璇ョ鐮佺殑淇℃伅"); + throw Oops.Bah("鏈煡璇㈠埌璇ョ鐮佺殑淇℃伅"); } if (boxInfo.Any(m => m.PalletNo != palletNo)) { - throw new Exception("璇ユ墭鐩樹笌绠辩爜娌℃湁缁戝畾鍏崇郴"); + throw Oops.Bah("璇ユ墭鐩樹笌绠辩爜娌℃湁缁戝畾鍏崇郴"); } - var boxQty = boxInfo.GroupBy(m => m.BoxNo).Select(m => SqlFunc.AggregateSum(m.Qty)).ToList(); + var boxQty = await boxInfo.GroupBy(m => m.BoxNo).Select(m => SqlFunc.AggregateSum(m.Qty)).ToListAsync(); if (boxQty[0] > needQty) { - throw new Exception("鎷h揣鏁伴噺涓嶈兘澶т簬绠卞唴鍓╀綑寰呮嫞鏁伴噺"); + throw Oops.Bah("鎷h揣鏁伴噺涓嶈兘澶т簬绠卞唴鍓╀綑寰呮嫞鏁伴噺"); } foreach (var item in boxInfos) { if (biaoShi != "2" && comDetailList.Any(m => m.BoxNo == item.BoxNo)) { - throw new Exception($"褰撳墠{item.BoxNo}宸叉嫞璐у畬鎴愶紝璇峰嬁閲嶅鎷h揣"); + throw Oops.Bah($"褰撳墠{item.BoxNo}宸叉嫞璐у畬鎴愶紝璇峰嬁閲嶅鎷h揣"); } } } @@ -2899,7 +2898,7 @@ item.BindNo = null;//鎵樼洏缁戝畾鍙� item.PalletNo = palletNoNew; item.Status = "5";//绠辨敮鐘舵�侊紝0锛氭湭缁勬墭 1锛氬凡缁勬墭 2锛氬凡鍏ュ簱 3锛氬凡鍑哄簱 4:宸插垎閰� 5锛氬凡鎷h揣 - Db.Updateable(item).ExecuteCommand(); + await Db.Updateable(item).ExecuteCommandAsync(); pickQty += item.Qty; } @@ -2912,7 +2911,7 @@ item.BoxNo = item.BoxNo3;//灏嗘敮鐮佽祴缁欑鐮� item.BitBoxMark = "1";//闆剁鏍囪 item.Status = "5";//绠辨敮鐘舵�侊紝0锛氭湭缁勬墭 1锛氬凡缁勬墭 2锛氬凡鍏ュ簱 3锛氬凡鍑哄簱 4:宸插垎閰� 5锛氬凡鎷h揣 - Db.Updateable(item).ExecuteCommand(); + await Db.Updateable(item).ExecuteCommandAsync(); pickQty += item.Qty; } @@ -2925,13 +2924,13 @@ item.BindNo = null;//鎵樼洏缁戝畾鍙� item.PalletNo = palletNoNew; item.Status = "5";//绠辨敮鐘舵�侊紝0锛氭湭缁勬墭 1锛氬凡缁勬墭 2锛氬凡鍏ュ簱 3锛氬凡鍑哄簱 4:宸插垎閰� 5锛氬凡鎷h揣 - Db.Updateable(item).ExecuteCommand(); + await Db.Updateable(item).ExecuteCommandAsync(); } else { item.Qty -= decimal.Parse(pickQty1); item.BitBoxMark = "1";//闆剁鏍囪瘑 - Db.Updateable(item).ExecuteCommand(); + await Db.Updateable(item).ExecuteCommandAsync(); } pickQty += int.Parse(pickQty1); @@ -2944,11 +2943,11 @@ foreach (var item in boxSurplusList) { item.BitBoxMark = "1"; - Db.Updateable(item).ExecuteCommand(); + await Db.Updateable(item).ExecuteCommandAsync(); } } - Db.Insertable(comList).ExecuteCommand(); + await Db.Insertable(comList).ExecuteCommandAsync(); //淇敼鍑哄簱鍒嗛厤淇℃伅 allot.CompleteQty += pickQty; allot.Status = allot.Qty == allot.CompleteQty ? "5" : "3"; @@ -2957,7 +2956,7 @@ { //鍒ゆ柇璇ユ墭鐩樻槸鍚﹁繕瀛樺湪鐗╂枡 瀛樺湪鏀逛负寰呭洖搴� 寰呭洖搴撳畬鎴愬悗鏀逛负宸插畬鎴� } - Db.Updateable(allot).ExecuteCommand(); + await Db.Updateable(allot).ExecuteCommandAsync(); //鍒犻櫎鎴栦慨鏀瑰簱瀛樻槑缁� stockDetail.BitPalletMark = "1";//淇敼涓洪浂鎵樻爣璇� @@ -2978,36 +2977,36 @@ if (stockDetail.Qty <= 0) { - Db.Deleteable(stockDetail).ExecuteCommand(); + await Db.Deleteable(stockDetail).ExecuteCommandAsync(); } else { - Db.Updateable(stockDetail).ExecuteCommand(); + await Db.Updateable(stockDetail).ExecuteCommandAsync(); } - var num2 = Db.Queryable<DataStockDetail>().Count(m => m.IsDel == "0" && m.PalletNo == palletNo); + var num2 = await Db.Queryable<DataStockDetail>().CountAsync(m => m.IsDel == "0" && m.PalletNo == palletNo); if (num2 <= 0) { //鏀瑰彉鎵樼洏鐘舵�� - var pallet = Db.Queryable<SysPallets>().First(m => m.PalletNo == palletNo && m.IsDel == "0"); + var pallet = await Db.Queryable<SysPallets>().FirstAsync(m => m.PalletNo == palletNo && m.IsDel == "0"); if (pallet == null) { - throw new Exception("鏈湪鎵樼洏琛ㄤ腑鏌ヨ鍒版墭鐩樹俊鎭�"); + throw Oops.Bah("鏈湪鎵樼洏琛ㄤ腑鏌ヨ鍒版墭鐩樹俊鎭�"); } pallet.Status = "0"; - Db.Updateable(pallet).ExecuteCommand(); + await Db.Updateable(pallet).ExecuteCommandAsync(); } //淇敼鍑哄簱鍗曟槑缁嗘嫞璐ф暟閲� noticeDetail.CompleteQty += pickQty; - Db.Updateable(noticeDetail).ExecuteCommand(); + await Db.Updateable(noticeDetail).ExecuteCommandAsync(); - var num = Db.Queryable<BllExportNoticeDetail>() - .Count(m => m.IsDel == "0" && m.SONo == soNo && m.CompleteQty < m.Qty); + var num = await Db.Queryable<BllExportNoticeDetail>() + .CountAsync(m => m.IsDel == "0" && m.SONo == soNo && m.CompleteQty < m.Qty); if (num <= 0) { notice.Status = "4"; //鏇存敼涓烘墽琛屽畬鎴� } //淇敼鍑哄簱鍗曚俊鎭� - Db.Updateable(notice).ExecuteCommand(); + await Db.Updateable(notice).ExecuteCommandAsync(); } if (isNew) @@ -3022,7 +3021,7 @@ //淇敼鎷兼墭鎵樼洏搴撳瓨鏄庣粏 pinStockDetail.Qty += pickQty; pinStockDetail.LockQty += pickQty; - Db.Updateable(pinStockDetail).ExecuteCommand(); + await Db.Updateable(pinStockDetail).ExecuteCommandAsync(); } } @@ -3033,7 +3032,6 @@ catch (Exception e) { Db.RollbackTran(); - throw new Exception(e.Message); } } /// <summary> @@ -3045,7 +3043,7 @@ /// <param name="PickQty"></param> /// <param name="palletNoNew"></param> /// <param name="userId"></param> - public void SoSetQtyPinPick(string soNo, string soDetailId, string palletNo, string PickQty, string palletNoNew, int userId) + public async Task SoSetQtyPinPick(string soNo, string soDetailId, string palletNo, string PickQty, string palletNoNew, int userId) { Db.BeginTran(); try @@ -3055,7 +3053,7 @@ if (string.IsNullOrWhiteSpace(soNo)) { - throw new Exception("鍑哄簱鍗曟嵁涓嶈兘涓虹┖"); + throw Oops.Bah("鍑哄簱鍗曟嵁涓嶈兘涓虹┖"); } //if (string.IsNullOrWhiteSpace(soDetailId)) //{ @@ -3063,76 +3061,76 @@ //} if (string.IsNullOrWhiteSpace(palletNo)) { - throw new Exception("鎵樼洏鐮佷笉鑳戒负绌�"); + throw Oops.Bah("鎵樼洏鐮佷笉鑳戒负绌�"); } if (string.IsNullOrWhiteSpace(palletNoNew)) { - throw new Exception("鏂版墭鐩樼爜涓嶈兘涓虹┖"); + throw Oops.Bah("鏂版墭鐩樼爜涓嶈兘涓虹┖"); } //鍑哄簱鍗� - var notice = Db.Queryable<BllExportNotice>().First(m => m.IsDel == "0" && m.SONo == soNo); + var notice = await Db.Queryable<BllExportNotice>().FirstAsync(m => m.IsDel == "0" && m.SONo == soNo); if (notice == null) { - throw new Exception("鏈煡璇㈠埌璇ュ嚭搴撳崟鐨勪俊鎭�"); + throw Oops.Bah("鏈煡璇㈠埌璇ュ嚭搴撳崟鐨勪俊鎭�"); } if (notice.Status != "3") { - throw new Exception("鍑哄簱鍗曠殑鐘舵�佷笉鏄鍦ㄦ墽琛岋紝涓嶈兘鎷h揣"); + throw Oops.Bah("鍑哄簱鍗曠殑鐘舵�佷笉鏄鍦ㄦ墽琛岋紝涓嶈兘鎷h揣"); } //鍑哄簱鍗曟槑缁� - var noticeDetail = Db.Queryable<BllExportNoticeDetail>() - .First(m => m.IsDel == "0" && m.Id == int.Parse(soDetailId)); + var noticeDetail = await Db.Queryable<BllExportNoticeDetail>() + .FirstAsync(m => m.IsDel == "0" && m.Id == int.Parse(soDetailId)); if (noticeDetail == null) { - throw new Exception("鏈煡璇㈠埌璇ュ嚭搴撳崟鏄庣粏鐨勪俊鎭�"); + throw Oops.Bah("鏈煡璇㈠埌璇ュ嚭搴撳崟鏄庣粏鐨勪俊鎭�"); } //鍑哄簱鍒嗛厤淇℃伅 - var allot = Db.Queryable<BllExportAllot>().First(m => + var allot = await Db.Queryable<BllExportAllot>().FirstAsync(m => m.IsDel == "0" && (m.Status == "2" || m.Status == "3") && m.SONo == soNo && m.SODetailNo == int.Parse(soDetailId) && m.PalletNo == palletNo); if (allot == null) { - throw new Exception("鏈煡璇㈠埌璇ユ墭鐩樼殑鍒嗛厤淇℃伅"); + throw Oops.Bah("鏈煡璇㈠埌璇ユ墭鐩樼殑鍒嗛厤淇℃伅"); } //鍓╀綑鎷h揣鏁伴噺锛堝緟鎷e噺鍘诲凡鎷o級 var needQty = allot.Qty - allot.CompleteQty; if (int.Parse(PickQty) > needQty) { - throw new Exception("鎷h揣鏁伴噺涓嶈兘澶т簬鎵樺唴鍓╀綑寰呮嫞鏁伴噺"); + throw Oops.Bah("鎷h揣鏁伴噺涓嶈兘澶т簬鎵樺唴鍓╀綑寰呮嫞鏁伴噺"); } //搴撳瓨鏄庣粏 - var stockDetail = Db.Queryable<DataStockDetail>().First(m => m.IsDel == "0" && m.Id == allot.StockId); + var stockDetail = await Db.Queryable<DataStockDetail>().FirstAsync(m => m.IsDel == "0" && m.Id == allot.StockId); if (stockDetail == null) { - throw new Exception("鏈煡璇㈠埌璇ユ墭鐩樺垎閰嶇殑搴撳瓨鏄庣粏淇℃伅锛�"); + throw Oops.Bah("鏈煡璇㈠埌璇ユ墭鐩樺垎閰嶇殑搴撳瓨鏄庣粏淇℃伅锛�"); } //搴撳瓨鎬昏〃 - var stock = Db.Queryable<DataStock>().First(a => a.IsDel == "0" && a.SkuNo == stockDetail.SkuNo && a.LotNo == stockDetail.LotNo); + var stock = await Db.Queryable<DataStock>().FirstAsync(a => a.IsDel == "0" && a.SkuNo == stockDetail.SkuNo && a.LotNo == stockDetail.LotNo); if (stock == null) { - throw new Exception("鏈煡璇㈠埌璇ユ墭鐩樺垎閰嶇殑搴撳瓨淇℃伅锛�"); + throw Oops.Bah("鏈煡璇㈠埌璇ユ墭鐩樺垎閰嶇殑搴撳瓨淇℃伅锛�"); } if (palletNo == palletNoNew)//鍘熸墭鐩樹笌鏂版墭鐩樹竴鑷� { if (int.Parse(PickQty) != stockDetail.Qty) { - throw new Exception("鍘熸墭鐩樹笌鏂版墭鐩樹竴鑷达紝闇�瑕佹妸鎵樼洏涓婃墍鏈夋暟閲忔嫞璐�"); + throw Oops.Bah("鍘熸墭鐩樹笌鏂版墭鐩樹竴鑷达紝闇�瑕佹妸鎵樼洏涓婃墍鏈夋暟閲忔嫞璐�"); } } #endregion #region 鎷兼墭淇℃伅 bool isNew = false; - var pinStockDetail = Db.Queryable<DataStockDetail>().First(m => m.IsDel == "0" && m.PalletNo == palletNoNew); + var pinStockDetail = await Db.Queryable<DataStockDetail>().FirstAsync(m => m.IsDel == "0" && m.PalletNo == palletNoNew); if (pinStockDetail != null) { if (palletNo != palletNoNew)//闈炴暣鎵樻嫞璐� { if (pinStockDetail.SONo != notice.SONo) { - throw new Exception("鎷兼墭鎵樼洏涓婂彧鑳芥斁鍚屼竴涓嚭搴撳崟涓嬬殑鐗╂枡锛�"); + throw Oops.Bah("鎷兼墭鎵樼洏涓婂彧鑳芥斁鍚屼竴涓嚭搴撳崟涓嬬殑鐗╂枡锛�"); } if (pinStockDetail.SkuName != stockDetail.SkuName || pinStockDetail.LotNo != stockDetail.LotNo) { @@ -3144,14 +3142,14 @@ { isNew = true; - var newPalletInfo = Db.Queryable<SysPallets>().First(m => m.IsDel == "0" && m.PalletNo == palletNoNew && m.Status == "0"); + var newPalletInfo = await Db.Queryable<SysPallets>().FirstAsync(m => m.IsDel == "0" && m.PalletNo == palletNoNew && m.Status == "0"); if (newPalletInfo == null) { - throw new Exception("鏂版墭鐩樹俊鎭笉瀛樺湪鎴栧凡琚娇鐢紒"); + throw Oops.Bah("鏂版墭鐩樹俊鎭笉瀛樺湪鎴栧凡琚娇鐢紒"); } //淇敼鏂版墭鐩樼姸鎬� newPalletInfo.Status = "1"; - Db.Updateable(newPalletInfo).ExecuteCommand(); + await Db.Updateable(newPalletInfo).ExecuteCommandAsync(); } if (isNew) @@ -3202,7 +3200,7 @@ sd.CreateTime = nowDate; //鏂板鎷兼墭搴撳瓨鏄庣粏淇℃伅 - Db.Insertable(sd).ExecuteReturnIdentity(); + await Db.Insertable(sd).ExecuteReturnIdentityAsync(); } else { @@ -3211,18 +3209,18 @@ //淇敼鎷兼墭鎵樼洏搴撳瓨鏄庣粏 pinStockDetail.Qty += int.Parse(PickQty); pinStockDetail.LockQty += int.Parse(PickQty); - Db.Updateable(pinStockDetail).ExecuteCommand(); + await Db.Updateable(pinStockDetail).ExecuteCommandAsync(); } else { pinStockDetail.SONo = soNo; - Db.Updateable(pinStockDetail).ExecuteCommand(); + await Db.Updateable(pinStockDetail).ExecuteCommandAsync(); } } #endregion //鑾峰彇褰撳墠鎵樼洏鎷h揣鏄庣粏 - var complete = Db.Queryable<BllCompleteDetail>().First(a => a.IsDel == "0" && a.PalletNo == palletNo && a.SONo == notice.SONo && a.SODetailNo == noticeDetail.Id && a.ExportAllotId == allot.Id && a.StockId == stockDetail.Id); + var complete = await Db.Queryable<BllCompleteDetail>().FirstAsync(a => a.IsDel == "0" && a.PalletNo == palletNo && a.SONo == notice.SONo && a.SODetailNo == noticeDetail.Id && a.ExportAllotId == allot.Id && a.StockId == stockDetail.Id); //鍒よ鏄惁瀛樺湪鎷h揣鏄庣粏 int isComplete = 0; @@ -3262,7 +3260,7 @@ comList.Add(completeDetail); //娣诲姞鎷h揣鏄庣粏 - Db.Insertable(comList).ExecuteCommand(); + await Db.Insertable(comList).ExecuteCommandAsync(); } else if (isComplete == 1) { @@ -3270,14 +3268,14 @@ complete.UpdateUser = userId; complete.UpdateTime = Db.GetDate(); - Db.Updateable(complete).ExecuteCommand(); + await Db.Updateable(complete).ExecuteCommandAsync(); } //淇敼鍑哄簱鍒嗛厤淇℃伅 allot.CompleteQty += int.Parse(PickQty); allot.Status = allot.Qty == allot.CompleteQty ? "5" : "3"; allot.UpdateTime = DateTime.Now; - Db.Updateable(allot).ExecuteCommand(); + await Db.Updateable(allot).ExecuteCommandAsync(); int isDel = 0; @@ -3301,12 +3299,12 @@ } if (stockDetail.Qty <= 0) { - Db.Deleteable(stockDetail).ExecuteCommand(); + await Db.Deleteable(stockDetail).ExecuteCommandAsync(); } else { isDel = 1; - Db.Updateable(stockDetail).ExecuteCommand(); + await Db.Updateable(stockDetail).ExecuteCommandAsync(); } } else @@ -3317,28 +3315,28 @@ if (isDel == 0) { //鏀瑰彉鎵樼洏鐘舵�佷负锛氭湭浣跨敤 - var pallet = Db.Queryable<SysPallets>().First(m => m.PalletNo == palletNo && m.IsDel == "0"); + var pallet = await Db.Queryable<SysPallets>().FirstAsync(m => m.PalletNo == palletNo && m.IsDel == "0"); if (pallet == null) { - throw new Exception("鏈湪鎵樼洏琛ㄤ腑鏌ヨ鍒版墭鐩樹俊鎭�"); + throw Oops.Bah("鏈湪鎵樼洏琛ㄤ腑鏌ヨ鍒版墭鐩樹俊鎭�"); } pallet.Status = "0"; - Db.Updateable(pallet).ExecuteCommand(); + await Db.Updateable(pallet).ExecuteCommandAsync(); } //淇敼鍑哄簱鍗曟槑缁嗘嫞璐ф暟閲� noticeDetail.CompleteQty += int.Parse(PickQty); - Db.Updateable(noticeDetail).ExecuteCommand(); + await Db.Updateable(noticeDetail).ExecuteCommandAsync(); - var num = Db.Queryable<BllExportNoticeDetail>() - .Count(m => m.IsDel == "0" && m.SONo == soNo && m.CompleteQty < m.Qty); + var num = await Db.Queryable<BllExportNoticeDetail>() + .CountAsync(m => m.IsDel == "0" && m.SONo == soNo && m.CompleteQty < m.Qty); if (num <= 0) { notice.Status = "4"; //鏇存敼涓烘墽琛屽畬鎴� } //淇敼鍑哄簱鍗曚俊鎭� - Db.Updateable(notice).ExecuteCommand(); + await Db.Updateable(notice).ExecuteCommandAsync(); //娣诲姞鎿嶄綔鏃ュ織璁板綍 var k = new OperationSOServer().AddLogOperationSo("PDA妯″潡", "鎷h揣鎷兼墭", soNo, "鎷h揣", $"鍦≒DA涓婂鍑哄簱鍗曞彿涓猴細{soNo}鐨勬墭鐩樼爜涓猴細{palletNo}锛屾柊鎵樼洏鐮佷负锛歿palletNoNew}鐨勬嫞璐ф搷浣�", userId); @@ -3347,7 +3345,6 @@ catch (Exception e) { Db.RollbackTran(); - throw new Exception(e.Message); } } #endregion @@ -3355,75 +3352,53 @@ #region JC23鐗堝彇鏍� //鏍规嵁鎵樼洏鍙疯幏鍙栧彇鏍风被鍨� - public string GetSampleType2(string palletNo) + public async Task<string> GetSampleType2(string palletNo) { - try + var type = ""; + var detail = await Db.Queryable<DataStockDetail>().FirstAsync(m => m.IsDel == "0" && m.PalletNo == palletNo); + if (detail == null) { - var type = ""; - var detail = Db.Queryable<DataStockDetail>().First(m => m.IsDel == "0" && m.PalletNo == palletNo); - if (detail == null) - { - throw new Exception("褰撳墠鎵樼洏鏈湪搴撳瓨涓�"); - } - - var boxInfo = Db.Queryable<DataBoxInfo>().Count(m => m.IsDel == "0" && m.StockDetailId == detail.Id); - - //鍒ゆ柇鎵樼洏涓婃槸鍚︽湁绠辩爜淇℃伅 - if (boxInfo > 0) - { - type = "0";//鏍囩鍙栨牱 - } - else - { - type = "1";//鏁伴噺鍙栨牱 - } - return type; + throw Oops.Bah("褰撳墠鎵樼洏鏈湪搴撳瓨涓�"); } - catch (Exception e) + + var boxInfo = await Db.Queryable<DataBoxInfo>().CountAsync(m => m.IsDel == "0" && m.StockDetailId == detail.Id); + + //鍒ゆ柇鎵樼洏涓婃槸鍚︽湁绠辩爜淇℃伅 + if (boxInfo > 0) { - throw new Exception(e.Message); + type = "0";//鏍囩鍙栨牱 } + else + { + type = "1";//鏁伴噺鍙栨牱 + } + return type; } //鑾峰彇寰呭嚭搴撴垨寰呭彇鏍风殑璇烽獙鍗� - public List<string> GetInspectionNo() + public async Task<List<string>> GetInspectionNo() { - try - { - var data = Db.Queryable<BllQualityInspectionRequest>().Where(m => m.IsDel == "0" && (m.Status == "1" || m.Status == "2")).OrderByDescending(m => m.QcNo).Select(m => m.QcNo).ToList(); - return data; - } - catch (Exception e) - { - throw new Exception(e.Message); - } + return await Db.Queryable<BllQualityInspectionRequest>().Where(m => m.IsDel == "0" && (m.Status == "1" || m.Status == "2")).OrderByDescending(m => m.QcNo).Select(m => m.QcNo).ToListAsync(); } //鑾峰彇璇烽獙鍗曠浉鍏充俊鎭� - public InspectionRequestDto GetInspectionRequestInfo(string qcNo) + public async Task<InspectionRequestDto> GetInspectionRequestInfo(string qcNo) { - try - { - var data = new InspectionRequestDto(); - var inspectionRequest = Db.Queryable<BllQualityInspectionRequest>().First(m => m.IsDel == "0" && m.QcNo == qcNo); - var samplingQty = Db.Queryable<BllSamplingDetails>().Where(m => m.IsDel == "0" && m.QcNo == qcNo).Sum(m => m.CompleteQty); + var data = new InspectionRequestDto(); + var inspectionRequest = await Db.Queryable<BllQualityInspectionRequest>().FirstAsync(m => m.IsDel == "0" && m.QcNo == qcNo); + var samplingQty = await Db.Queryable<BllSamplingDetails>().Where(m => m.IsDel == "0" && m.QcNo == qcNo).SumAsync(m => m.CompleteQty); - data.QcNo = qcNo; - data.Sku = inspectionRequest.SkuNo; - data.LotNo = inspectionRequest.LotNo; - data.Qty = inspectionRequest.SamplingQty.ToString(); - data.SamplingQty = samplingQty == null ? "0" : samplingQty.ToString(); + data.QcNo = qcNo; + data.Sku = inspectionRequest.SkuNo; + data.LotNo = inspectionRequest.LotNo; + data.Qty = inspectionRequest.SamplingQty.ToString(); + data.SamplingQty = samplingQty == null ? "0" : samplingQty.ToString(); - return data; - } - catch (Exception e) - { - throw new Exception(e.Message); - } + return data; } //鍙栨牱鍑哄簱鎷h揣(鏍囩) - public void SampleSetPick(string qcNo, string palletNo, string boxNo, string boxNo3, string pickQty, int userId) + public async Task SampleSetPick(string qcNo, string palletNo, string boxNo, string boxNo3, string pickQty, int userId) { try { @@ -3431,20 +3406,20 @@ if (string.IsNullOrWhiteSpace(qcNo)) { - throw new Exception("璇烽獙鍗曟嵁涓嶈兘涓虹┖"); + throw Oops.Bah("璇烽獙鍗曟嵁涓嶈兘涓虹┖"); } if (string.IsNullOrWhiteSpace(palletNo)) { - throw new Exception("鎵樼洏鍙蜂笉鑳戒负绌�"); + throw Oops.Bah("鎵樼洏鍙蜂笉鑳戒负绌�"); } - var type = GetSampleType2(palletNo); + var type = await GetSampleType2(palletNo); if (type != "0") { - throw new Exception("褰撳墠鎵樼洏璇峰湪鏁伴噺椤电鍙栨牱"); + throw Oops.Bah("褰撳墠鎵樼洏璇峰湪鏁伴噺椤电鍙栨牱"); } if (string.IsNullOrEmpty(boxNo)) { - throw new Exception("澶栫鏉$爜涓嶈兘涓虹┖"); + throw Oops.Bah("澶栫鏉$爜涓嶈兘涓虹┖"); } //if (!string.IsNullOrEmpty(boxNo3) && !string.IsNullOrEmpty(pickQty) && int.Parse(pickQty) > 0) //{ @@ -3452,44 +3427,44 @@ //} //璇烽獙鍗� - var inspecd = Db.Queryable<BllQualityInspectionRequest>().First(m => m.IsDel == "0" && m.QcNo == qcNo); + var inspecd = await Db.Queryable<BllQualityInspectionRequest>().FirstAsync(m => m.IsDel == "0" && m.QcNo == qcNo); if (inspecd == null) { - throw new Exception("鏈煡璇㈠埌璇烽獙鍗曚俊鎭�"); + throw Oops.Bah("鏈煡璇㈠埌璇烽獙鍗曚俊鎭�"); } if (inspecd.Status == "0" || inspecd.Status == "3") { - throw new Exception("璇烽獙鍗曠姸鎬侀敊璇紝璇锋牳瀹�"); + throw Oops.Bah("璇烽獙鍗曠姸鎬侀敊璇紝璇锋牳瀹�"); } //搴撳瓨鏄庣粏淇℃伅 - var stockDetail = Db.Queryable<DataStockDetail>().First(m => m.IsDel == "0" && m.PalletNo == palletNo && m.SkuNo == inspecd.SkuNo && m.LotNo == inspecd.LotNo); + var stockDetail = await Db.Queryable<DataStockDetail>().FirstAsync(m => m.IsDel == "0" && m.PalletNo == palletNo && m.SkuNo == inspecd.SkuNo && m.LotNo == inspecd.LotNo); if (stockDetail == null) { - throw new Exception("鏈湪搴撳瓨涓煡璇㈠嚭褰撳墠鎵樼洏淇℃伅"); + throw Oops.Bah("鏈湪搴撳瓨涓煡璇㈠嚭褰撳墠鎵樼洏淇℃伅"); } if (!string.IsNullOrWhiteSpace(stockDetail.LocatNo)) { - throw new Exception("褰撳墠鎵樼洏涓嶆槸搴撳鎵樼洏锛岃鏍稿疄"); + throw Oops.Bah("褰撳墠鎵樼洏涓嶆槸搴撳鎵樼洏锛岃鏍稿疄"); } //绠辨敮淇℃伅 - var boxInfoList = Db.Queryable<DataBoxInfo>().Where(m => m.IsDel == "0" && m.StockDetailId == stockDetail.Id && m.BoxNo == boxNo).ToList(); + var boxInfoList = await Db.Queryable<DataBoxInfo>().Where(m => m.IsDel == "0" && m.StockDetailId == stockDetail.Id && m.BoxNo == boxNo).ToListAsync(); //搴撳瓨鎬昏〃 - var stock = Db.Queryable<DataStock>().First(m => m.IsDel == "0" && m.SkuNo == inspecd.SkuNo && m.LotNo == inspecd.LotNo); + var stock = await Db.Queryable<DataStock>().FirstAsync(m => m.IsDel == "0" && m.SkuNo == inspecd.SkuNo && m.LotNo == inspecd.LotNo); if (stock == null) { - throw new Exception("鏈煡璇㈠嚭搴撳瓨鎬讳俊鎭�"); + throw Oops.Bah("鏈煡璇㈠嚭搴撳瓨鎬讳俊鎭�"); } //鍏ュ簱鍗� - var notice = Db.Queryable<BllArrivalNotice>().First(m => m.IsDel == "0" && m.ASNNo == inspecd.ASNNo); + var notice = await Db.Queryable<BllArrivalNotice>().FirstAsync(m => m.IsDel == "0" && m.ASNNo == inspecd.ASNNo); if (notice == null) { - throw new Exception("鏈煡璇㈠埌鍏ュ簱鍗曚俊鎭�"); + throw Oops.Bah("鏈煡璇㈠埌鍏ュ簱鍗曚俊鎭�"); } #endregion //鍙栨牱鏄庣粏璁板綍琛� - var sampld = Db.Queryable<BllSamplingDetails>().Where(m => m.IsDel == "0" && m.QcNo == qcNo).ToList(); + var sampld = await Db.Queryable<BllSamplingDetails>().Where(m => m.IsDel == "0" && m.QcNo == qcNo).ToListAsync(); var isAddSampld = false; var PickType = ""; //0鏁伴噺鎷h揣 1 绠辨敮鎷h揣 @@ -3506,16 +3481,16 @@ { if (boxInfoList.Count(m => m.BoxNo3 == boxNo3) == 0) { - throw new Exception("鏈煡璇㈠埌鏀爜淇℃伅"); + throw Oops.Bah("鏈煡璇㈠埌鏀爜淇℃伅"); } if (boxInfoList.Count(m => m.BoxNo3 == boxNo3) > 1) { - throw new Exception("鏀爜淇℃伅鏁版嵁淇℃伅閿欒锛岃鏍稿疄"); + throw Oops.Bah("鏀爜淇℃伅鏁版嵁淇℃伅閿欒锛岃鏍稿疄"); } - EditboxInfo = Db.Queryable<DataBoxInfo>().First(m => m.IsDel == "0" && m.StockDetailId == stockDetail.Id && m.BoxNo == boxNo && m.BoxNo3 == boxNo3); + EditboxInfo = await Db.Queryable<DataBoxInfo>().FirstAsync(m => m.IsDel == "0" && m.StockDetailId == stockDetail.Id && m.BoxNo == boxNo && m.BoxNo3 == boxNo3); if (EditboxInfo.Qty < decimal.Parse(pickQty)) { - throw new Exception("鎷h揣鏁伴噺涓嶈兘澶т簬绠卞唴鏁伴噺"); + throw Oops.Bah("鎷h揣鏁伴噺涓嶈兘澶т簬绠卞唴鏁伴噺"); } isAddSampld = sampld.Count(m => m.PalletNo == palletNo && m.BoxNo == EditboxInfo.BoxNo && m.BoxNo3 == EditboxInfo.BoxNo3) == 0; } @@ -3524,33 +3499,33 @@ if (boxInfoList.Count == 0) { - throw new Exception("鏈湪鎵樼洏涓婃煡璇㈠埌绠辩爜淇℃伅锛岃鏍稿疄"); + throw Oops.Bah("鏈湪鎵樼洏涓婃煡璇㈠埌绠辩爜淇℃伅锛岃鏍稿疄"); } if (boxInfoList.Count > 1) { - throw new Exception("绠辩爜鏁版嵁淇℃伅閿欒锛岃鏍稿疄"); + throw Oops.Bah("绠辩爜鏁版嵁淇℃伅閿欒锛岃鏍稿疄"); } if (boxInfoList.Count(m => !string.IsNullOrWhiteSpace(m.BoxNo3)) > 0) { - throw new Exception("褰撳墠绠辩爜涓惈鏈夋敮鐮侊紝璇疯緭鍏ユ敮鐮佷俊鎭彇鏍�"); + throw Oops.Bah("褰撳墠绠辩爜涓惈鏈夋敮鐮侊紝璇疯緭鍏ユ敮鐮佷俊鎭彇鏍�"); } - EditboxInfo = Db.Queryable<DataBoxInfo>().First(m => m.IsDel == "0" && m.StockDetailId == stockDetail.Id && m.BoxNo == boxNo); + EditboxInfo = await Db.Queryable<DataBoxInfo>().FirstAsync(m => m.IsDel == "0" && m.StockDetailId == stockDetail.Id && m.BoxNo == boxNo); if (EditboxInfo.Qty < decimal.Parse(pickQty)) { - throw new Exception("鎷h揣鏁伴噺涓嶈兘澶т簬绠卞唴鏁伴噺"); + throw Oops.Bah("鎷h揣鏁伴噺涓嶈兘澶т簬绠卞唴鏁伴噺"); } isAddSampld = sampld.Count(m => m.PalletNo == palletNo && m.BoxNo == EditboxInfo.BoxNo) == 0; } if (sampld.Sum(m => m.CompleteQty) + decimal.Parse(pickQty) > inspecd.SamplingQty) { - throw new Exception("鍙栨牱鎬绘嫞璐ф暟閲忓ぇ浜庤楠屽崟鍙栨牱鏁伴噺"); + throw Oops.Bah("鍙栨牱鎬绘嫞璐ф暟閲忓ぇ浜庤楠屽崟鍙栨牱鏁伴噺"); } //鍒ゆ柇绠变腑鏄惁鍚湁鏀爜锛屾湁锛氫笉璁╂嫞鏁伴噺 if (stockDetail.Qty - stockDetail.LockQty - stockDetail.FrozenQty < decimal.Parse(pickQty)) { - throw new Exception("鎵樼洏涓婂彲鐢ㄦ暟閲忓皬浜庡彇鏍锋暟閲忥紝璇锋牳瀹為攣瀹氥�佸喕缁撴暟閲�"); + throw Oops.Bah("鎵樼洏涓婂彲鐢ㄦ暟閲忓皬浜庡彇鏍锋暟閲忥紝璇锋牳瀹為攣瀹氥�佸喕缁撴暟閲�"); } } else //绠辨敮鎷h揣 @@ -3563,16 +3538,16 @@ if (boxInfoList.Count(m => m.BoxNo3 == boxNo3) == 0) { - throw new Exception("鏈煡璇㈠埌鏀爜淇℃伅"); + throw Oops.Bah("鏈煡璇㈠埌鏀爜淇℃伅"); } if (boxInfoList.Count(m => m.BoxNo3 == boxNo3) > 1) { - throw new Exception("鏀爜鏁版嵁淇℃伅閿欒锛岃鏍稿疄"); + throw Oops.Bah("鏀爜鏁版嵁淇℃伅閿欒锛岃鏍稿疄"); } - EditboxInfoList = Db.Queryable<DataBoxInfo>().Where(m => m.IsDel == "0" && m.StockDetailId == stockDetail.Id && m.BoxNo == boxNo && m.BoxNo3 == boxNo3).ToList(); + EditboxInfoList = await Db.Queryable<DataBoxInfo>().Where(m => m.IsDel == "0" && m.StockDetailId == stockDetail.Id && m.BoxNo == boxNo && m.BoxNo3 == boxNo3).ToListAsync(); if (EditboxInfoList.Sum(m => m.Qty) + sampld.Sum(m => m.CompleteQty) > inspecd.SamplingQty) { - throw new Exception("鍙栨牱鎬绘嫞璐ф暟閲忓ぇ浜庤楠屽崟鍙栨牱鏁伴噺"); + throw Oops.Bah("鍙栨牱鎬绘嫞璐ф暟閲忓ぇ浜庤楠屽崟鍙栨牱鏁伴噺"); } qty = EditboxInfoList.Sum(m => m.Qty); //isAddSampld = sampld.Count(m => m.PalletNo == palletNo && m.BoxNo == EditboxInfo.BoxNo && m.BoxNo3 == EditboxInfo.BoxNo3) == 0; @@ -3582,32 +3557,32 @@ if (boxInfoList.Count == 0) { - throw new Exception("鏈湪鎵樼洏涓婃煡璇㈠埌绠辩爜淇℃伅锛岃鏍稿疄"); + throw Oops.Bah("鏈湪鎵樼洏涓婃煡璇㈠埌绠辩爜淇℃伅锛岃鏍稿疄"); } if (boxInfoList.Count > 1) { - throw new Exception("绠辩爜鏁版嵁淇℃伅閿欒锛岃鏍稿疄"); + throw Oops.Bah("绠辩爜鏁版嵁淇℃伅閿欒锛岃鏍稿疄"); } if (boxInfoList.Count(m => !string.IsNullOrWhiteSpace(m.BoxNo3)) > 0) { - throw new Exception("褰撳墠绠辩爜涓惈鏈夋敮鐮侊紝璇疯緭鍏ユ敮鐮佷俊鎭彇鏍�"); + throw Oops.Bah("褰撳墠绠辩爜涓惈鏈夋敮鐮侊紝璇疯緭鍏ユ敮鐮佷俊鎭彇鏍�"); } - EditboxInfoList = Db.Queryable<DataBoxInfo>().Where(m => m.IsDel == "0" && m.StockDetailId == stockDetail.Id && m.BoxNo == boxNo).ToList(); + EditboxInfoList = await Db.Queryable<DataBoxInfo>().Where(m => m.IsDel == "0" && m.StockDetailId == stockDetail.Id && m.BoxNo == boxNo).ToListAsync(); if (EditboxInfo.Qty < decimal.Parse(pickQty)) { - throw new Exception("鎷h揣鏁伴噺涓嶈兘澶т簬绠卞唴鏁伴噺"); + throw Oops.Bah("鎷h揣鏁伴噺涓嶈兘澶т簬绠卞唴鏁伴噺"); } qty = EditboxInfoList.Sum(m => m.Qty); //isAddSampld = sampld.Count(m => m.PalletNo == palletNo && m.BoxNo == EditboxInfo.BoxNo) == 0; } if (sampld.Sum(m => m.CompleteQty) + qty > inspecd.SamplingQty) { - throw new Exception("鍙栨牱鎬绘嫞璐ф暟閲忓ぇ浜庤楠屽崟鍙栨牱鏁伴噺"); + throw Oops.Bah("鍙栨牱鎬绘嫞璐ф暟閲忓ぇ浜庤楠屽崟鍙栨牱鏁伴噺"); } if (stockDetail.Qty - stockDetail.LockQty - stockDetail.FrozenQty < qty) { - throw new Exception("鎵樼洏涓婂彲鐢ㄦ暟閲忓皬浜庡彇鏍锋暟閲忥紝璇锋牳瀹為攣瀹氥�佸喕缁撴暟閲�"); + throw Oops.Bah("鎵樼洏涓婂彲鐢ㄦ暟閲忓皬浜庡彇鏍锋暟閲忥紝璇锋牳瀹為攣瀹氥�佸喕缁撴暟閲�"); } } #endregion @@ -3772,7 +3747,7 @@ CreateTime = DateTime.Now, CreateUser = userId }; - Db.Insertable(sampleDetail).ExecuteCommand(); + await Db.Insertable(sampleDetail).ExecuteCommandAsync(); //} //else //{ @@ -3791,7 +3766,7 @@ #region 淇敼搴撳瓨涓夎〃 //鎷嗗寘鏈夋晥鏈熸洿鏀� - var unpackWarranty = Db.Queryable<SysMaterials>().First(m => m.IsDel == "0" && m.SkuNo == inspecd.SkuNo).UnpackWarranty; + var unpackWarranty = (await Db.Queryable<SysMaterials>().FirstAsync(m => m.IsDel == "0" && m.SkuNo == inspecd.SkuNo)).UnpackWarranty; foreach (var item in boxInfoList) { @@ -3809,31 +3784,31 @@ } } } - Db.Updateable(boxInfoList).ExecuteCommand(); + await Db.Updateable(boxInfoList).ExecuteCommandAsync(); //搴撳瓨绠辩爜 - Db.Deleteable(boxInfo).ExecuteCommand(); + await Db.Deleteable(boxInfo).ExecuteCommandAsync(); //搴撳瓨鏄庣粏 stockDetail.Qty -= boxInfo.Qty; if (stockDetail.Qty == 0) { - Db.Deleteable(stockDetail).ExecuteCommand(); + await Db.Deleteable(stockDetail).ExecuteCommandAsync(); } else { - Db.Updateable(stockDetail).ExecuteCommand(); + await Db.Updateable(stockDetail).ExecuteCommandAsync(); } //搴撳瓨鎬昏〃 stock.Qty -= boxInfo.Qty; if (stock.Qty == 0) { - Db.Deleteable(stock).ExecuteCommand(); + await Db.Deleteable(stock).ExecuteCommandAsync(); } else { - Db.Updateable(stock).ExecuteCommand(); + await Db.Updateable(stock).ExecuteCommandAsync(); } #endregion @@ -3843,12 +3818,12 @@ //涓嶆槸涓婁紶瀹屾瘯鐨勪慨鏀瑰彇鏍风姸鎬� if (notice.Status != "4") { - var noticeDetail = Db.Queryable<BllArrivalNoticeDetail>().First(m => m.IsDel == "0" && m.ASNNo == inspecd.ASNNo && m.SkuNo == inspecd.SkuNo && m.LotNo == inspecd.LotNo); + var noticeDetail = await Db.Queryable<BllArrivalNoticeDetail>().FirstAsync(m => m.IsDel == "0" && m.ASNNo == inspecd.ASNNo && m.SkuNo == inspecd.SkuNo && m.LotNo == inspecd.LotNo); if (noticeDetail.IsSampling == "0") { noticeDetail.IsSampling = "1"; - Db.Updateable(noticeDetail).ExecuteCommand(); + await Db.Updateable(noticeDetail).ExecuteCommandAsync(); } } @@ -3866,7 +3841,7 @@ inspecd.Status = "3"; } - Db.Updateable(inspecd).ExecuteCommand(); + await Db.Updateable(inspecd).ExecuteCommandAsync(); #endregion } @@ -3880,13 +3855,12 @@ catch (Exception e) { Db.RollbackTran(); - throw new Exception(e.Message); } } //鍙栨牱鍑哄簱鎷h揣(鏁伴噺) - public void SampleSetQtyPick(string qcNo, string palletNo, string pickQty, int userId) + public async Task SampleSetQtyPick(string qcNo, string palletNo, string pickQty, int userId) { try { @@ -3894,63 +3868,63 @@ if (string.IsNullOrWhiteSpace(qcNo)) { - throw new Exception("璇烽獙鍗曟嵁涓嶈兘涓虹┖"); + throw Oops.Bah("璇烽獙鍗曟嵁涓嶈兘涓虹┖"); } if (string.IsNullOrWhiteSpace(palletNo)) { - throw new Exception("鎵樼洏鍙蜂笉鑳戒负绌�"); + throw Oops.Bah("鎵樼洏鍙蜂笉鑳戒负绌�"); } - var type = GetSampleType2(palletNo); + var type = await GetSampleType2(palletNo); if (type != "1") { - throw new Exception("褰撳墠鎵樼洏璇峰湪鏍囩椤电鍙栨牱"); + throw Oops.Bah("褰撳墠鎵樼洏璇峰湪鏍囩椤电鍙栨牱"); } if (string.IsNullOrWhiteSpace(pickQty)) { - throw new Exception("鎷h揣鏁伴噺涓嶈兘涓虹┖"); + throw Oops.Bah("鎷h揣鏁伴噺涓嶈兘涓虹┖"); } if (decimal.Parse(pickQty) <= 0) { - throw new Exception("鎷h揣鏁伴噺涓嶈兘灏忎簬绛変簬0"); + throw Oops.Bah("鎷h揣鏁伴噺涓嶈兘灏忎簬绛変簬0"); } //璇烽獙鍗� - var inspecd = Db.Queryable<BllQualityInspectionRequest>().First(m => m.IsDel == "0" && m.QcNo == qcNo); + var inspecd = await Db.Queryable<BllQualityInspectionRequest>().FirstAsync(m => m.IsDel == "0" && m.QcNo == qcNo); if (inspecd == null) { - throw new Exception("鏈煡璇㈠埌璇烽獙鍗曚俊鎭�"); + throw Oops.Bah("鏈煡璇㈠埌璇烽獙鍗曚俊鎭�"); } if (inspecd.Status == "0" || inspecd.Status == "3") { - throw new Exception("璇烽獙鍗曠姸鎬侀敊璇紝璇锋牳瀹�"); + throw Oops.Bah("璇烽獙鍗曠姸鎬侀敊璇紝璇锋牳瀹�"); } //搴撳瓨鏄庣粏淇℃伅 - var stockDetail = Db.Queryable<DataStockDetail>().First(m => m.IsDel == "0" && m.PalletNo == palletNo && m.SkuNo == inspecd.SkuNo && m.LotNo == inspecd.LotNo); + var stockDetail = await Db.Queryable<DataStockDetail>().FirstAsync(m => m.IsDel == "0" && m.PalletNo == palletNo && m.SkuNo == inspecd.SkuNo && m.LotNo == inspecd.LotNo); if (stockDetail == null) { - throw new Exception("鏈湪搴撳瓨涓煡璇㈠嚭褰撳墠鎵樼洏淇℃伅"); + throw Oops.Bah("鏈湪搴撳瓨涓煡璇㈠嚭褰撳墠鎵樼洏淇℃伅"); } if (!string.IsNullOrWhiteSpace(stockDetail.LocatNo)) { - throw new Exception("褰撳墠鎵樼洏涓嶆槸搴撳鎵樼洏锛岃鏍稿疄"); + throw Oops.Bah("褰撳墠鎵樼洏涓嶆槸搴撳鎵樼洏锛岃鏍稿疄"); } //搴撳瓨鎬昏〃 - var stock = Db.Queryable<DataStock>().First(m => m.IsDel == "0" && m.SkuNo == inspecd.SkuNo && m.LotNo == inspecd.LotNo); + var stock = await Db.Queryable<DataStock>().FirstAsync(m => m.IsDel == "0" && m.SkuNo == inspecd.SkuNo && m.LotNo == inspecd.LotNo); if (stock == null) { - throw new Exception("鏈煡璇㈠嚭搴撳瓨鎬讳俊鎭�"); + throw Oops.Bah("鏈煡璇㈠嚭搴撳瓨鎬讳俊鎭�"); } //鍏ュ簱鍗� - var notice = Db.Queryable<BllArrivalNotice>().First(m => m.IsDel == "0" && m.ASNNo == inspecd.ASNNo); + var notice = await Db.Queryable<BllArrivalNotice>().FirstAsync(m => m.IsDel == "0" && m.ASNNo == inspecd.ASNNo); if (notice == null) { - throw new Exception("鏈煡璇㈠埌鍏ュ簱鍗曚俊鎭�"); + throw Oops.Bah("鏈煡璇㈠埌鍏ュ簱鍗曚俊鎭�"); } #endregion //鍙栨牱鏄庣粏璁板綍琛� - var sampld = Db.Queryable<BllSamplingDetails>().Where(m => m.IsDel == "0" && m.QcNo == qcNo).ToList(); + var sampld = await Db.Queryable<BllSamplingDetails>().Where(m => m.IsDel == "0" && m.QcNo == qcNo).ToListAsync(); var qty = decimal.Parse(pickQty); //var isAddSampld = sampld.Count(m => m.PalletNo == palletNo) == 0; @@ -3959,12 +3933,12 @@ if (sampld.Sum(m => m.CompleteQty) + qty > inspecd.SamplingQty) { - throw new Exception("鍙栨牱鎬绘嫞璐ф暟閲忓ぇ浜庤楠屽崟鍙栨牱鏁伴噺"); + throw Oops.Bah("鍙栨牱鎬绘嫞璐ф暟閲忓ぇ浜庤楠屽崟鍙栨牱鏁伴噺"); } //鍒ゆ柇绠变腑鏄惁鍚湁鏀爜锛屾湁锛氫笉璁╂嫞鏁伴噺 if (stockDetail.Qty - stockDetail.LockQty - stockDetail.FrozenQty < qty) { - throw new Exception("鎵樼洏涓婂彲鐢ㄦ暟閲忓皬浜庡彇鏍锋暟閲忥紝璇锋牳瀹為攣瀹氥�佸喕缁撴暟閲�"); + throw Oops.Bah("鎵樼洏涓婂彲鐢ㄦ暟閲忓皬浜庡彇鏍锋暟閲忥紝璇锋牳瀹為攣瀹氥�佸喕缁撴暟閲�"); } @@ -3990,7 +3964,7 @@ CreateTime = DateTime.Now, CreateUser = userId }; - Db.Insertable(sampleDetail).ExecuteCommand(); + await Db.Insertable(sampleDetail).ExecuteCommandAsync(); //} //else //{ @@ -4009,24 +3983,24 @@ stockDetail.Qty -= qty; if (stockDetail.Qty == 0) { - Db.Deleteable(stockDetail).ExecuteCommand(); + await Db.Deleteable(stockDetail).ExecuteCommandAsync(); } else { stockDetail.BitPalletMark = "1"; stockDetail.InspectMark = "1"; - Db.Updateable(stockDetail).ExecuteCommand(); + await Db.Updateable(stockDetail).ExecuteCommandAsync(); } //搴撳瓨鎬昏〃 stock.Qty -= qty; if (stock.Qty == 0) { - Db.Deleteable(stock).ExecuteCommand(); + await Db.Deleteable(stock).ExecuteCommandAsync(); } else { - Db.Updateable(stock).ExecuteCommand(); + await Db.Updateable(stock).ExecuteCommandAsync(); } #endregion @@ -4036,12 +4010,12 @@ //涓嶆槸涓婁紶瀹屾瘯鐨勪慨鏀瑰彇鏍风姸鎬� if (notice.Status != "4") { - var noticeDetail = Db.Queryable<BllArrivalNoticeDetail>().First(m => m.IsDel == "0" && m.ASNNo == inspecd.ASNNo && m.SkuNo == inspecd.SkuNo && m.LotNo == inspecd.LotNo); + var noticeDetail = await Db.Queryable<BllArrivalNoticeDetail>().FirstAsync(m => m.IsDel == "0" && m.ASNNo == inspecd.ASNNo && m.SkuNo == inspecd.SkuNo && m.LotNo == inspecd.LotNo); if (noticeDetail.IsSampling == "0") { noticeDetail.IsSampling = "1"; - Db.Updateable(noticeDetail).ExecuteCommand(); + await Db.Updateable(noticeDetail).ExecuteCommandAsync(); } } @@ -4056,7 +4030,7 @@ { inspecd.Status = "3"; } - Db.Updateable(inspecd).ExecuteCommand(); + await Db.Updateable(inspecd).ExecuteCommandAsync(); #endregion @@ -4068,7 +4042,6 @@ catch (Exception e) { Db.RollbackTran(); - throw new Exception(e.Message); } } -- Gitblit v1.8.0