From 1e1b8c262ebe02e82f93c4344f9feb9624f77b52 Mon Sep 17 00:00:00 2001 From: zyf <1071160500@qq.com> Date: 星期二, 17 六月 2025 19:17:10 +0800 Subject: [PATCH] BOM接口优化逻辑 --- MES.Service/service/WomcaaManager.cs | 31 ++++++++++++++++++++++++++++--- 1 files changed, 28 insertions(+), 3 deletions(-) diff --git a/MES.Service/service/WomcaaManager.cs b/MES.Service/service/WomcaaManager.cs index 6b7e989..b72a183 100644 --- a/MES.Service/service/WomcaaManager.cs +++ b/MES.Service/service/WomcaaManager.cs @@ -4,6 +4,7 @@ using SqlSugar; namespace MES.Service.service; +using DbType = System.Data.DbType; public class WomcaaManager : Repository<Womcaa> { @@ -16,6 +17,7 @@ public bool SaveList(List<ErpWOM> rohIns) { var result = rohIns.Select(Save).ToList(); + return result.All(b => b); } @@ -55,8 +57,18 @@ var orUpdate = base.Insert(mesWomcaa); var baOrUpdate = _womcabManager.InsertRange(mesWomcabs); + + var inputParam = mesWomcaa.Erpid; + + // 浣跨敤 SqlSugar 鎵ц瀛樺偍杩囩▼ + Db.Ado.ExecuteCommand( + "BEGIN PRC_UPDATE_DAA(:P_ID); END;", + new SugarParameter("P_ID", inputParam, + DbType.Decimal)); + if (orUpdate && baOrUpdate) return true; throw new NotImplementedException("鎻掑叆鎴栨洿鏂板け璐�"); + } private bool UpdateData(SqlSugarScope db, Womcaa mesWomcaa, @@ -74,7 +86,7 @@ private Womcaa MapErpCAAtoWomcaa(ErpCAA dto) { - return new Womcaa + var entity = new Womcaa { Erpid = Convert.ToDecimal(dto.Id), Caa001 = dto.FBillNo, @@ -113,8 +125,14 @@ Caa016 = dto.FMemoItem, Caa018 = Convert.ToDecimal(dto.planId), Caa019 = Convert.ToDecimal(dto.planSeq), - Caa020 = dto.planNum + Caa020 = dto.planNum, + Fmoentryid = Convert.ToDecimal(dto.FMOENTRYID) }; + + var single = base.GetSingle(it => it.Erpid == entity.Erpid); + if (single != null) entity.Id = single.Id; + + return entity; } private List<Womcab> MapErpCABtoWomcab(List<ErpCAB> dtoList) @@ -127,6 +145,7 @@ { Erpid = Convert.ToDecimal(dto.ID), Cab001 = dto.FBillNo, + Cab002 = dto.FSeq, Cab003 = dto.FMaterialID2, Cab006 = !string.IsNullOrEmpty(dto.FNeedQty2) ? Convert.ToDecimal(dto.FNeedQty2) @@ -149,9 +168,15 @@ Cab014 = dto.FIsKeyItem, Numerator = dto.FNumerator, Denominator = dto.FDenominator, - Eid = Convert.ToDecimal(dto.PID) + Eid = Convert.ToDecimal(dto.PID), + SCRAPQTY = Convert.ToDecimal(dto.FFixScrapQty), + SCRAPRATE = Convert.ToDecimal(dto.FScrapRate) }; + 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