From 968d603a08117e7e6707ffe07c6da9c325e36c08 Mon Sep 17 00:00:00 2001 From: kazelee <1847801760@qq.com> Date: 星期一, 12 五月 2025 17:04:17 +0800 Subject: [PATCH] 完成并测试抽检出库的逻辑,修复相关问题 --- Services/MoboxService.cs | 92 +++++++++++++++++++++++++++++---------------- 1 files changed, 59 insertions(+), 33 deletions(-) diff --git a/Services/MoboxService.cs b/Services/MoboxService.cs index d2f68a6..cdc9920 100644 --- a/Services/MoboxService.cs +++ b/Services/MoboxService.cs @@ -383,24 +383,48 @@ } } + /// <summary> + /// 鍒涘缓鎶芥鍗�+ /// </summary> + /// <param name="model"></param> + /// <returns></returns> public static SimpleResult CreateCheckOrder(CreateCheckOrderInfo model) { var db = DbHelper.GetDbClient(); try { + // 缁戝畾鎿嶄綔锛氭彃鍏ュ嚭搴撳崟銆佹墍鏈夌殑鍑哄簱鍗曟槑缁�+ using (var tran = db.Ado.UseTran()) { - var order = new TN_Check_Order { - S_CG_ID = model.CgId, - S_ITEM_NAME = model.ItemName, - S_BATCH_NO = model.BatchNo, - N_QTY = model.Qty, - S_END_AREA = model.EndArea, - }; + var order = new TN_Check_Order { + S_NO = model.No, + S_CG_ID = model.CgId, + S_ITEM_NAME = model.ItemName, + S_BATCH_NO = model.BatchNo, + N_COUNT = model.Count, + S_END_AREA = model.EndArea, + }; - if (db.Insertable<TN_Check_Order>(order).ExecuteCommand() > 0) { - return BuildSimpleResult(0, "鎻掑叆鎶芥鍗曟垚鍔燂細" + JsonConvert.SerializeObject(order)); + if (db.Insertable<TN_Check_Order>(order).ExecuteCommand() <= 0) { + tran.RollbackTran(); + return BuildSimpleResult(2, "鐢熸垚 鎶芥鍗�澶辫触锛� + JsonConvert.SerializeObject(order)); + } + + for (int i = 0; i < model.Count; i++) { + var detail = new TN_Check_Detail { + S_NO = model.No, + S_CG_ID = model.CgId, + S_BATCH_NO = model.BatchNo, + S_END_AREA = model.EndArea + }; + + if (db.Insertable<TN_Check_Detail>(detail).ExecuteCommand() <= 0) { + tran.RollbackTran(); + return BuildSimpleResult(3, "鐢熸垚 鎶芥鍗曟槑缁�澶辫触锛� + JsonConvert.SerializeObject(detail)); + } + } + + tran.CommitTran(); } - else { - return BuildSimpleResult(2, "鎻掑叆鎶芥鍗曞け璐ワ細" + JsonConvert.SerializeObject(order)); - } + return BuildSimpleResult(0, $"鍒涘缓 鎶芥鍗�鎴愬姛锛氬崟鍙�{model.No}"); } catch (Exception ex) { return BuildSimpleEx(ex); @@ -425,13 +449,12 @@ return BuildSimpleResult(2, "鍑哄簱鍗曞彿涓嶈兘涓虹┖"); } - if (model.OutboundDetails.Count == 0) { - return BuildSimpleResult(2, "鍑哄簱鍗曟槑缁嗘病鏈夐」鐩�); - } - using (var tran = db.Ado.UseTran()) { var order = new TN_Outbound_Order { S_NO = model.No, + S_CG_ID = model.CgId, + S_BATCH_NO = model.BatchNo, + S_END_AREA = model.EndArea, N_FORCE = model.Forced ? 1 : 0 }; @@ -440,16 +463,16 @@ return BuildSimpleResult(3, "鐢熸垚鍑哄簱鍗曞け璐ワ細" + JsonConvert.SerializeObject(order)); } - foreach (var detail in model.OutboundDetails) { - var newDetail = new TN_Outbound_Detail { - S_NO = order.S_NO, - S_CG_ID = detail.CgCode, - S_BATCH_NO = detail.PatchNo, - N_QTY = detail.Qty, - N_FORCE = order.N_FORCE, - S_END_AREA = detail.EndArea + for (int i = 0; i < model.Count; i++) { + var detail = new TN_Outbound_Detail { + S_NO = model.No, + S_CG_ID = model.CgId, + S_BATCH_NO = model.BatchNo, + N_FORCE = model.Forced ? 1 : 0, + S_END_AREA = model.EndArea }; - if (db.Insertable<TN_Outbound_Detail>(newDetail).ExecuteCommand() <= 0) { + + if (db.Insertable<TN_Outbound_Detail>(detail).ExecuteCommand() <= 0) { tran.RollbackTran(); return BuildSimpleResult(4, "鐢熸垚鍑哄簱鍗曟槑缁嗗け璐ワ細" + JsonConvert.SerializeObject(detail)); } @@ -488,19 +511,22 @@ return BuildSimpleResult(3, "鐢熸垚鍑哄簱鍗曞け璐ワ細" + JsonConvert.SerializeObject(order)); } - foreach (var detail in model.OutboundDetails) { - var newDetail = new TN_Outbound_Detail { - S_NO = order.S_NO, - S_CG_ID = detail.CgCode, - S_BATCH_NO = detail.PatchNo, - N_QTY = detail.Qty, - N_FORCE = order.N_FORCE + for (int i = 0; i < model.Count; i++) { + var detail = new TN_Outbound_Detail { + S_NO = model.No, + S_CG_ID = model.CgId, + S_BATCH_NO = model.BatchNo, + N_FORCE = model.Forced ? 1 : 0, + S_END_AREA = model.EndArea }; - if (db.Insertable<TN_Inbound_Order>(order).ExecuteCommand() <= 0) { + + if (db.Insertable<TN_Outbound_Detail>(detail).ExecuteCommand() <= 0) { tran.RollbackTran(); return BuildSimpleResult(4, "鐢熸垚鍑哄簱鍗曟槑缁嗗け璐ワ細" + JsonConvert.SerializeObject(detail)); } } + + tran.CommitTran(); } return BuildSimpleResult(0, "鐢熸垚鍑哄簱鍗曟垚鍔�); -- Gitblit v1.9.1