From 6ac949894602ed30c97afe4ed61daa46d0712bfc Mon Sep 17 00:00:00 2001 From: zyf <1071160500@qq.com> Date: 星期六, 16 十一月 2024 16:01:36 +0800 Subject: [PATCH] 委外订单删除 --- MES.Service/service/BasicData/ProductionOrderManager.cs | 61 +++++++++++++++++++++++++++--- 1 files changed, 55 insertions(+), 6 deletions(-) diff --git a/MES.Service/service/BasicData/ProductionOrderManager.cs b/MES.Service/service/BasicData/ProductionOrderManager.cs index c46462b..eb144d3 100644 --- a/MES.Service/service/BasicData/ProductionOrderManager.cs +++ b/MES.Service/service/BasicData/ProductionOrderManager.cs @@ -1,8 +1,11 @@ -锘縰sing System.Globalization; +锘縰sing System.Data; +using System.Globalization; using MES.Service.DB; using MES.Service.Dto.webApi; using MES.Service.Modes; using SqlSugar; +using static Microsoft.EntityFrameworkCore.DbLoggerCategory; +using DbType = System.Data.DbType; namespace MES.Service.service.BasicData; @@ -35,7 +38,7 @@ return UpdateData(db, mesRohIn, mesRohInDatas) ? 1 : 0; case "2": case "4": - return SaveOrUpdateData(db, mesRohIn, mesRohInDatas) + return SaveOrUpdateData(db, mesRohIn, mesRohInDatas, erpProductionOrderDto.Type) ? 1 : 0; default: @@ -51,7 +54,7 @@ var decimals = mesRohInDatas.Select(s => s.Id).ToArray(); var update = base.DeleteById(mesRohIn.Id); var insertOrUpdate = db - .Deleteable<MesRohInData>().In(decimals) + .Deleteable<ProductionOrderSub>().In(decimals) .ExecuteCommand() > 0; if (update && insertOrUpdate) return true; @@ -60,7 +63,7 @@ // 鎻掑叆鎴栨洿鏂版暟鎹殑鏂规硶 private bool SaveOrUpdateData(SqlSugarScope db, ProductionOrder mesRohIn, - List<ProductionOrderSub> mesRohInDatas) + List<ProductionOrderSub> mesRohInDatas,string type) { if (mesRohIn.Id != null) base.DeleteById(mesRohIn.Id); @@ -70,7 +73,52 @@ var orUpdate = base.Insert(mesRohIn); var baOrUpdate = _productionOrderSubManager.InsertRange(mesRohInDatas); - if (orUpdate && baOrUpdate) return true; + if (orUpdate && baOrUpdate) + { + if ("4".Equals(type)) + { + //璋冪敤瀛樺偍杩囩▼ + try + { + // 瀹氫箟杈撳嚭鍙傛暟 + var outputResult = new SugarParameter("C_RESULT", null, + DbType.Int32, ParameterDirection.Output, + 4000); + + var outputMessage = new SugarParameter("MSG", null, DbType.String, + ParameterDirection.Output, 4000); + + // 瀹氫箟杈撳叆鍙傛暟 + var parameters = new List<SugarParameter> + { + + new("P_ID",mesRohIn.ErpId , DbType.String, + ParameterDirection.Input), + outputResult, + outputMessage + }; + + // 浣跨敤 SqlSugar 鎵ц瀛樺偍杩囩▼ + Db.Ado.ExecuteCommand( + "BEGIN PRC_MES_WW_UPDATE_BS(:P_ID, :C_RESULT, :MSG); END;", + parameters.ToArray()); + + // 鑾峰彇杈撳嚭鍙傛暟鐨勫�� + var resultValue = outputResult.Value?.ToString(); + var messageValue = outputMessage.Value?.ToString(); + + if ("1".Equals(resultValue)) throw new Exception("鏇存柊澶辫触"); + + return true; + } + catch (Exception ex) + { + throw new Exception(ex.Message); + } + } + return true; + } + throw new NotImplementedException("鎻掑叆鎴栨洿鏂板け璐�"); } @@ -143,7 +191,8 @@ // Convert.ToDecimal(erpDto.F_UNW_BaseProperty_jjds), StockInQty = Convert.ToDecimal(erpDto.FBaseStockInQty), NoStockInQty = Convert.ToDouble(erpDto.FBaseNoStockInQty), - StockOwner = erpDto.FInStockOwnerId + StockOwner = erpDto.FInStockOwnerId, + SUPPLIER = erpDto.FSUPPLIERID }; var single = base.GetSingle(it => it.ErpId == erpDto.FPPOMID); -- Gitblit v1.9.3