From a4ae3bf5f1826e8e29a95da3dc2c947d713d4ebb Mon Sep 17 00:00:00 2001 From: 南骏 池 <chiffly@163.com> Date: 星期五, 06 六月 2025 15:38:14 +0800 Subject: [PATCH] 1.仓库信息储存逻辑调整 2.生产订单接口优化。 --- MES.Service/service/WomcaaManager.cs | 49 ++++++++++++++++++++++++++++++++++--------------- 1 files changed, 34 insertions(+), 15 deletions(-) diff --git a/MES.Service/service/WomcaaManager.cs b/MES.Service/service/WomcaaManager.cs index a39614e..c5bc955 100644 --- a/MES.Service/service/WomcaaManager.cs +++ b/MES.Service/service/WomcaaManager.cs @@ -23,7 +23,8 @@ public bool Save(ErpWOM wom) { var womErpCaa = wom.ErpCaa; - var mesWomcaa = MapErpCAAtoWomcaa(womErpCaa); + + var mesWomcaa = MapErpCAAtoWomcaa(womErpCaa, wom.ErpCabs[0].FBillNo); var mesWomcabs = MapErpCABtoWomcab(wom.ErpCabs); @@ -58,8 +59,15 @@ db.Deleteable<Womcab>() .Where(s => s.Pid == mesWomcaa.Erpid).ExecuteCommand(); - var orUpdate = base.Insert(mesWomcaa); - var baOrUpdate = _womcabManager.InsertRange(mesWomcabs); + //鍗曟潯鎻掑叆蹇界暐绌哄瓧娈� + var orUpdate = db.Insertable(mesWomcaa) + .IgnoreColumns(true).ExecuteCommand() > 0; + + //鎵归噺鎻掑叆蹇界暐绌哄瓧娈� + var baOrUpdate = db.Insertable(mesWomcabs).PageSize(1) + .IgnoreColumnsNull() + .ExecuteCommand() > 0; + if (orUpdate && baOrUpdate) return true; throw new NotImplementedException("鎻掑叆鎴栨洿鏂板け璐�"); } @@ -77,12 +85,12 @@ throw new NotImplementedException("鏇存柊澶辫触"); } - private Womcaa MapErpCAAtoWomcaa(ErpCAA dto) + private Womcaa MapErpCAAtoWomcaa(ErpCAA dto,string PPBOMNO) { var entity = new Womcaa { Erpid = Convert.ToInt32(dto.Id), /// ERPID - Caa001 = dto.FBillNo, /// 鍗曞彿 + Caa001 = PPBOMNO, /// 鍗曞彿 Caa021 = dto.FWorkShopID, /// 宸ヤ綔杞﹂棿 RoutingId = dto.FRoutingId, /// 宸ヨ壓璺嚎 WorkShopId = dto.FREMWorkShopId, /// 浜х嚎 @@ -93,13 +101,15 @@ Caa006 = dto.FMaterialId, /// 浜у搧缂栫爜 Caa009 = dto.FUnitId, /// 鍗曚綅 Caa012 = !string.IsNullOrEmpty(dto.FQty) - ? Convert.ToInt32(dto.FQty) + ? Convert.ToDecimal(dto.FQty) : null, /// 鏁伴噺 WorkGroupId = dto.FWorkGroupId, /// 璁″垝缁� PlanId = dto.FPlannerID, /// 璁″垝鍛� Caa010 = dto.FPlanStartDate, /// 棰勮寮�宸ユ椂闂� Caa011 = dto.FPlanFinishDate, /// 棰勮瀹屽伐鏃堕棿 - Caa005 = dto.FConveyDate, /// 寮�鍗曟棩鏈� + Caa005 = DateTime.TryParse(dto.FConveyDate, out var conveyDate) + ? (conveyDate <= new DateTime(1900, 1, 1) ? null : conveyDate.ToString()) + : null, /// 寮�鍗曟棩鏈� StockInlimith = dto.FStockInLimitH, /// 鍏ュ簱涓婇檺 StockInlimitl = dto.FStockInLimitL, /// 鍏ュ簱涓嬮檺 Mtono = dto.FMTONO, /// 璁″垝璺熻釜鍙� @@ -127,6 +137,7 @@ //Caa015 = dto.F_UNW_Text_xsddh, /// 閿�鍞鍗曞彿 ErpSczz = Convert.ToInt32(dto.FPrdOrgId), /// 鐢熶骇缁勭粐ID ErpWtzz = Convert.ToInt32(dto.FEnTrustOrgId), /// 濮旀墭缁勭粐ID + Btbz = dto.Btbz, /// 濮旀墭缁勭粐ID //Caa015Head = dto.F_XIFG_Integer_tzk, /// 閿�鍞鍗曡鍙� //MainProductNo = dto.F_XIFG_Base_w5c, /// 涓讳骇鍝佺紪鐮� // MainProductQty = @@ -135,7 +146,10 @@ // PackingListNumber = dto.F_XIFG_Text_yrr, /// 鍖呰鍗曞彿 // CustomerName = dto.F_XIFG_Text_qtr1, /// 瀹㈡埛鍚嶇О // Customer = dto.F_XIFG_Base_83g1, /// 瀹㈡埛 - Caa0111 = dto.FPlanFinishDate /// 棰勮瀹屽伐鏃堕棿澶囦唤 + Caa0111 = dto.FPlanFinishDate, /// 棰勮瀹屽伐鏃堕棿澶囦唤 + Typea = dto.TypeA, /// 棰勮瀹屽伐鏃堕棿澶囦唤 + //Typeb = dto.TypeB /// 棰勮瀹屽伐鏃堕棿澶囦唤 + SynchronousDate = DateTime.Now }; var single = base.GetSingle(it => it.Erpid == entity.Erpid); @@ -152,15 +166,15 @@ { var womcab = new Womcab { - Erpid = Convert.ToInt32(dto.FENTRYID), /// ERPID + Erpid = Convert.ToInt32(dto.Id), /// ERPID Cab001 = dto.FBillNo, /// 宸ュ崟鍗曞彿 - Cab002 = dto.FSeq, /// 搴忓彿 + Cab002 = Convert.ToInt32(dto.FSeq), /// 搴忓彿 Cab003 = dto.FMaterialID, /// 鏉愭枡缂栫爜 Cab006 = !string.IsNullOrEmpty(dto.FNeedQty) - ? Convert.ToInt32(dto.FNeedQty) + ? Convert.ToDecimal(dto.FNeedQty) : null, /// 闇�棰嗙敤閲� Cab007 = !string.IsNullOrEmpty(dto.FPickedQty) - ? Convert.ToInt32(dto.FPickedQty) + ? Convert.ToDecimal(dto.FPickedQty) : null, /// 宸查鐢ㄩ噺 PositionNo = dto.FPositionNO, /// 浣嶇疆鍙� SupplyOrganization = dto.FChildSupplyOrgId, /// 渚涘簲缁勭粐 @@ -174,7 +188,7 @@ Cab009 = dto.FUnitID, /// 鍗曚綅 SupplyType = dto.FSupplyType, /// 渚涘簲绫诲瀷(C閲囪喘 Z鑷埗 W濮斿) Cab012 = !string.IsNullOrEmpty(dto.FStdQty) - ? Convert.ToInt32(dto.FStdQty) + ? Convert.ToDecimal(dto.FStdQty) : null, /// 缁勬垚鐢ㄩ噺 Cab014 = dto.FIsKeyItem, /// 鏄惁鏇挎枡 Numerator = dto.FNumerator, /// 鍒嗗瓙 @@ -183,7 +197,12 @@ Eid = Convert.ToInt32(dto.Id), /// ERP ID Scrapqty = dto.FFixScrapQty, /// 鍥哄畾鎹熻�� - Scraprate = dto.FScrapRate, /// 鍙樺姩鎹熻�楃巼 + Scraprate = dto.FScrapRate, /// 鍙樺姩鎹熻�楃巼 + Freplacegroup = Convert.ToInt32(dto.FReplaceGroup), + UseRate = Convert.ToDecimal(dto.FUseRate), + MaterialType = dto.FMaterialType, + MustQty = Convert.ToDecimal(dto.FMustQty), + Typeb = dto.TypeB // Fsaleorderno = dto.FSALEORDERNO, /// 閿�鍞鍗� // // CustomerItemNumber = dto.F_XIFG_Text_re5, /// 瀹㈡埛璐у彿 @@ -195,7 +214,7 @@ }; var entity = Db.Queryable<Womcab>() - .Where(s => s.Erpid == womcab.Erpid).Single(); + .Where(s => s.Eid == womcab.Eid).Single(); if (entity != null) womcab.Guid = entity.Guid; womcabList.Add(womcab); -- Gitblit v1.9.3