From 4fa3f2b7d70af1539cf2731d7c54cc9769b0e14d Mon Sep 17 00:00:00 2001 From: zyf <1071160500@qq.com> Date: 星期五, 15 十一月 2024 09:37:00 +0800 Subject: [PATCH] 委外变更单更新开工状态 --- MES.Service/service/BasicData/ProductionOrderManager.cs | 59 ++++++++++++++++++++++++++++++++++++++++++++++++++++++----- 1 files changed, 54 insertions(+), 5 deletions(-) diff --git a/MES.Service/service/BasicData/ProductionOrderManager.cs b/MES.Service/service/BasicData/ProductionOrderManager.cs index c46462b..42349c4 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: @@ -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