From eea07b9c06f8a9070abe23816d02ae4fd73b4fa3 Mon Sep 17 00:00:00 2001 From: 南骏 池 <chiffly@163.com> Date: 星期三, 25 六月 2025 14:48:18 +0800 Subject: [PATCH] 1.金蝶及时库存调用 --- service/Warehouse/MesItemTblManager.cs | 47 ++++++++++++++++++++++++++++++++++------------- 1 files changed, 34 insertions(+), 13 deletions(-) diff --git a/service/Warehouse/MesItemTblManager.cs b/service/Warehouse/MesItemTblManager.cs index 2e2bcfc..8464f91 100644 --- a/service/Warehouse/MesItemTblManager.cs +++ b/service/Warehouse/MesItemTblManager.cs @@ -2,6 +2,7 @@ using NewPdaSqlServer.DB; using NewPdaSqlServer.Dto.service; using NewPdaSqlServer.entity; +using NewPdaSqlServer.entity.Base; using NewPdaSqlServer.util; using SqlSugar; using System.Security.Cryptography; @@ -33,7 +34,7 @@ /// </summary> /// <param name="query">浠撳簱鏌ヨ鍙傛暟</param> /// <returns>鐗╂枡鏄庣粏鍒楄〃</returns> - public List<MesItemTblDetail> GetMesItemTblDetailByBillNo( + public ProductionPickDto GetMesItemTblDetailByBillNo( WarehouseQuery query) { // 鍏宠仈鏌ヨ鐗╂枡琛ㄣ�佺墿鏂欐槑缁嗚〃鍜岀墿鏂欏熀纭�淇℃伅琛� @@ -45,22 +46,31 @@ JoinType.Left, b.Tld009 == c.Id) ).Where((a, b, c) => a.BillNo == query.billNo && (a.Tbl013 ?? 0) == 1) - .Select<MesItemTblDetail>((a, b, c) => new MesItemTblDetail + .Select<ItemDetailModel>((a, b, c) => new ItemDetailModel { - BillNo = a.BillNo, - Tlid = b.Tlid, - Tlmid = b.Tlmid, - Tld005 = b.Tld005 ?? 0, // 寰呴��鏁伴噺 - Tld006 = b.Tld006 ?? 0, // 宸查��鏁伴噺 - Tld009 = b.Tld009, + FQty = b.Tld005 ?? 0, // 寰呴��鏁伴噺 + SQty = b.Tld006 ?? 0, // 宸查��鏁伴噺 + DSQty = (b.Tld005 ?? 0) - (b.Tld006 ?? 0), ItemNo = c.ItemNo, // 鐗╂枡缂栧彿 ItemName = c.ItemName, // 鐗╂枡鍚嶇О ItemModel = c.ItemModel // 鐗╂枡鍨嬪彿 }).ToList(); - // 绛涢�夊嚭寰呴��鏁伴噺澶т簬宸查��鏁伴噺鐨勮褰� - var itemTblDetails = mesItemTblDetails - .Where(s => (s.Tld005 ?? 0) - (s.Tld006 ?? 0) > 0).ToList(); + + if (mesItemTblDetails.Count<1) + throw new Exception("璇ョ敵璇峰崟銆�" + query.billNo + "銆� 鏄庣粏涓嶅瓨鍦紝璇风‘璁わ紒"); + + var DS_list = mesItemTblDetails.Where(s => s.DSQty > 0).ToList(); + + var YS_list = mesItemTblDetails.Where(s => s.SQty > 0).ToList(); + + var itemTblDetails = new ProductionPickDto + { + items = DS_list, + Ysitems = YS_list + // yisao = mesInvItemOutCDetailsList + }; + return itemTblDetails; } @@ -158,10 +168,15 @@ if (c_mes_inv_item_barcodes.Memo != "鐢熶骇閫�鏂�") throw new Exception("姝ゆ潯鐮佷笉鏄敓浜ч��鏂欐潯鐮侊紝涓嶅彲浣跨敤鐢熶骇閫�鏂欐ā鍧楋紒"); + // 浣跨敤 String.Equals 鏂规硶杩涜瀛楃涓叉瘮杈冿紝鎸囧畾姣旇緝瑙勫垯涓哄拷鐣ュぇ灏忓啓锛屾彁楂樻瘮杈冪殑鐏垫椿鎬� + if (!string.Equals(c_mes_inv_item_barcodes.BillNo, p_bill_no, StringComparison.OrdinalIgnoreCase)) + throw new Exception($"璇ユ潯鐮佸搴旂殑鐢宠鍙枫�恵c_mes_inv_item_barcodes.BillNo}銆戜笌 褰撳墠鐢宠鍗曞彿銆恵p_bill_no}銆戜笉涓�鑷达紝璇锋牳瀵癸紒"); // 鑾峰彇閫�鏂欏崟淇℃伅 var C_MES_ITEM_TBL = Db.Queryable<MesItemTbl>() - .Where(a => a.BillNo == c_mes_inv_item_barcodes.BillNo + .Where(a => a.BillNo == p_bill_no && (a.Tbl013 ?? 0) == 1).First(); + + // 鑾峰彇閫�鏂欏崟淇℃伅 var tbWOMDAA = Db.Queryable<Womdaa>() @@ -312,7 +327,8 @@ LineK3id = c_mes_inv_item_barcodes.LineK3id, ItemId = c_mes_inv_item_barcodes.ItemId, DepotCode = c_mes_depots.DepotCode, - DepotId = c_depot_code.ToString() + DepotId = c_depot_code.ToString(), + itemDabid = C_MES_ITEM_TBL_DETAIL.Tlid.ToString() }).IgnoreColumns(true).ExecuteCommand(); else // 瀛樺湪鏃舵洿鏂版暟閲� @@ -554,6 +570,11 @@ throw new Exception( $"鍏抽敭鏁版嵁鎻掑叆澶辫触锛岄鏈熻嚦灏憑minimumExpectedOperations}涓搷浣滐紝瀹為檯鎵ц{totalResult}涓搷浣�"); + // 鍒涘缓 鎻掑叆鏃ュ織 + var logService = new LogService(); + var LogMsg = "[PDA]鐢熶骇閫�鏂欍�傛潯鐮併��" + query.barcode + "銆� 閫�鏂欏崟鍙枫��" + c_bill_no + "銆�"; + logService.CreateLog(db, query.userName, tbWOMDAA.Guid.ToString(), "WOMDAA", LogMsg, tbWOMDAA.Daa001); + return totalResult; }); -- Gitblit v1.9.3