From f1deb7b024e17cba204de5fcb0dac15801436b90 Mon Sep 17 00:00:00 2001 From: sjz <1240968267@qq.com> Date: 星期一, 28 七月 2025 20:56:41 +0800 Subject: [PATCH] 多组织修改 --- MES.Service/service/WomcaaManager.cs | 108 +++++++++++++++++++++++++++++++++++++----------------- 1 files changed, 74 insertions(+), 34 deletions(-) diff --git a/MES.Service/service/WomcaaManager.cs b/MES.Service/service/WomcaaManager.cs index 928bde2..beffc7d 100644 --- a/MES.Service/service/WomcaaManager.cs +++ b/MES.Service/service/WomcaaManager.cs @@ -1,9 +1,7 @@ -锘縰sing Dm; -using MES.Service.DB; +锘縰sing MES.Service.DB; using MES.Service.Dto.webApi; using MES.Service.Modes; using SqlSugar; -using System.Net.NetworkInformation; namespace MES.Service.service; @@ -24,7 +22,8 @@ public bool Save(ErpWOM wom) { var womErpCaa = wom.ErpCaa; - var mesWomcaa = MapErpCAAtoWomcaa(womErpCaa); + var mesWomcaa = MapErpCAAtoWomcaa(womErpCaa, wom.ErpCabs[0].FXSHTBH, + wom.ErpCabs[0].F_ZJXF_HSDJ); var mesWomcabs = MapErpCABtoWomcab(wom.ErpCabs); @@ -41,12 +40,13 @@ case "5": return UpdateData(db, mesWomcaa, mesWomcabs) ? 1 : 0; default: - throw new NotImplementedException( - $"type娌℃湁{womErpCaa.Type}杩欎釜绫诲瀷"); + throw new NotImplementedException( $"type娌℃湁{womErpCaa.Type}杩欎釜绫诲瀷"); } }) > 0; } - private bool UpdateData(SqlSugarScope db, Womcaa mesWomcaa, List<Womcab> mesWomcabs) + + private bool UpdateData(SqlSugarScope db, Womcaa mesWomcaa, + List<Womcab> mesWomcabs) { if (mesWomcaa.Id != null) { @@ -58,6 +58,7 @@ } var orUpdate = base.Insert(mesWomcaa); var baOrUpdate = _womcabManager.InsertRange(mesWomcabs); + db.Ado.CommitTran(); if (orUpdate && baOrUpdate) { //瀹氫箟杈撳叆鍙傛暟 @@ -66,33 +67,61 @@ var outParam1 = new SugarParameter("c_Result", null, true); var outParam2 = new SugarParameter("C_MSG", null, true); // 浣跨敤 SqlSugar 鎵ц瀛樺偍杩囩▼ - Db.Ado.ExecuteCommand("BEGIN PRC_UPDATE_DAA(:P_WORK_NO,:c_Result,:C_MSG); END;", inputParam1, outParam1, outParam2); + Db.Ado.ExecuteCommand("BEGIN PRC_UPDATE_DAA(:P_WORK_NO,:c_Result,:C_MSG); END;",inputParam1, outParam1, outParam2); // 鑾峰彇杈撳嚭鍙傛暟鐨勫�� - int result = int.Parse((string)outParam1.Value); - string message = outParam2.Value == DBNull.Value ? string.Empty : (string)outParam2.Value; + var result = int.Parse((string)outParam1.Value); + var message = outParam2.Value == DBNull.Value ? string.Empty : (string)outParam2.Value; if (result == 1) { //瀛樺偍杩囩▼澶辫触鍒欎簨鍔¤繘琛屽洖婊� - db.Ado.RollbackTran(); + //db.Ado.RollbackTran(); throw new Exception(message); } // 鎻愪氦浜嬪姟 - db.Ado.CommitTran(); + //db.Ado.CommitTran(); return true; } + throw new NotImplementedException("鎻掑叆鎴栨洿鏂板け璐�"); } private bool SaveOrUpdateData(SqlSugarScope db, Womcaa mesWomcaa,List<Womcab> mesWomcabs) { - if (mesWomcaa.Id != null) base.DeleteById(mesWomcaa.Id); + if (mesWomcaa.Id != null) + { + base.DeleteById(mesWomcaa.Id); + } if (mesWomcabs.Count > 0) + { db.Deleteable<Womcab>().Where(s => s.Eid == mesWomcaa.Erpid).ExecuteCommand(); - + } var orUpdate = base.Insert(mesWomcaa); var baOrUpdate = _womcabManager.InsertRange(mesWomcabs); - if (orUpdate && baOrUpdate) return true; + db.Ado.CommitTran(); + if (orUpdate && baOrUpdate) + { + //瀹氫箟杈撳叆鍙傛暟 + var inputParam1 = new SugarParameter("P_WORK_NO", mesWomcaa.Caa001); + // 瀹氫箟杈撳嚭鍙傛暟 + var outParam1 = new SugarParameter("c_Result", null, true); + var outParam2 = new SugarParameter("C_MSG", null, true); + // 浣跨敤 SqlSugar 鎵ц瀛樺偍杩囩▼ + Db.Ado.ExecuteCommand("BEGIN PRC_UPDATE_DAA(:P_WORK_NO,:c_Result,:C_MSG); END;",inputParam1, outParam1, outParam2); + // 鑾峰彇杈撳嚭鍙傛暟鐨勫�� + var result = int.Parse((string)outParam1.Value); + var message = outParam2.Value == DBNull.Value ? string.Empty : (string)outParam2.Value; + if (result == 1) + { + //瀛樺偍杩囩▼澶辫触鍒欎簨鍔¤繘琛屽洖婊� + //db.Ado.RollbackTran(); + throw new Exception(message); + } + // 鎻愪氦浜嬪姟 + //db.Ado.CommitTran(); + return true; + } + throw new NotImplementedException("鎻掑叆鎴栨洿鏂板け璐�"); } @@ -100,15 +129,18 @@ { var decimals = mesWomcabs.Select(s => s.Id).ToArray(); var update = base.DeleteById(mesWomcaa.Id); - var insertOrUpdate = db.Deleteable<Womcab>().In(decimals).ExecuteCommand() > 0; + var insertOrUpdate =db.Deleteable<Womcab>().In(decimals).ExecuteCommand() > 0; - if (update && insertOrUpdate) return true; + if (update && insertOrUpdate) + { + return true; + } throw new NotImplementedException("鏇存柊澶辫触"); } - private Womcaa MapErpCAAtoWomcaa(ErpCAA dto) + private Womcaa MapErpCAAtoWomcaa(ErpCAA dto, string? fxshtbh, string? hsdj) { - string jabs="0"; + var jabs = "0"; var entity = new Womcaa { @@ -122,7 +154,7 @@ Caa011 = dto.FPlanFinishDate, Caa012 = Convert.ToDecimal(dto.FQty), Caa013 = dto.FBomId, - Caa015 = dto.FXSHTH, + Caa015 = fxshtbh, Caa015Head = dto.FSaleOrderEntrySeq, Caa016 = dto.FDescription, Caa017 = 0, @@ -135,7 +167,7 @@ Caa023 = dto.FStatus, Caa024 = 0, RoutingId = dto.FRoutingId, - WorkShopId = dto.FREMWorkShopId, + WorkShopId = dto.FremWorkShopId, DepotCode = dto.FStockId, CreateDate = dto.FDate, WorkGroupId = dto.FWorkGroupId, @@ -148,17 +180,20 @@ SrcBillType = dto.FSrcBillType, SrcBillNo = dto.FSrcBillNo, SrcBillentryseq = dto.FSrcBillEntrySeq, - SaleOrderNo = dto.FXSHTH, + SaleOrderNo = dto.FSaleOrderNo, SaleOrderEntryseq = dto.FSaleOrderEntrySeq, ForceCloserid = dto.FForceCloserId, CloseType = dto.FCloseType, SrcSplitBillno = dto.FSrcSplitBillNo, F_ZSXG_KH = dto.F_ZSXG_KH, F_ZJXF_YHRQ = dto.F_ZJXF_YHRQ, - PrdOrg = dto.erP_SCZZ, - TrustOrg = dto.erP_WTZZ, + PrdOrg = dto.ERP_SCZZ, + TrustOrg = dto.ERP_WTZZ, TbTime = DateTime.Now, - JaBs = "0" + JaBs = "0", + SupplierId = dto.SupplierId, + FinishedProduct = dto.FinishedProduct, + F_ZJXF_HSDJ = hsdj }; if (dto.Type == "5") @@ -177,7 +212,10 @@ } var single = base.GetSingle(it => it.Erpid == entity.Erpid); - if (single != null) entity.Id = single.Id; + if (single != null) + { + entity.Id = single.Id; + } return entity; } @@ -202,8 +240,8 @@ Pid = Convert.ToDecimal(dto.FID), Eid = Convert.ToDecimal(dto.FID), PositionNo = dto.FPositionNO, - IssuingOrganization=dto.FSupplyOrg, - SupplyOrganization=dto.FChildSupplyOrgId, + IssuingOrganization = dto.FSupplyOrg, + SupplyOrganization = dto.FChildSupplyOrgId, OwnerId = dto.FOwnerID, Mtono = dto.FMTONO, Lot = dto.FLot, @@ -214,14 +252,16 @@ Denominator = Convert.ToDecimal(dto.FDenominator), SCRAPQTY = Convert.ToDecimal(dto.FFixScrapQty), SCRAPRATE = Convert.ToDecimal(dto.FScrapRate), - SalesOrder=dto.FXSHTBH, - F_ZJXF_YHRQ=dto.F_ZJXF_YHRQ, - ProcNo=dto.F_ZJXF_SSGX + SalesOrder = dto.FXSHTBH, + F_ZJXF_YHRQ = dto.F_ZJXF_YHRQ, + ProcNo = dto.F_ZJXF_SSGX }; - var entity = Db.Queryable<Womcab>() - .Where(s => s.Erpid == womcab.Erpid).Single(); - if (entity != null) womcab.Id = entity.Id; + var entity = Db.Queryable<Womcab>().Where(s => s.Erpid == womcab.Erpid).Single(); + if (entity != null) + { + womcab.Id = entity.Id; + } womcabList.Add(womcab); } -- Gitblit v1.9.3