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/Warehouse/MesInvItemInCDetailsManager.cs | 25 +++++++++++++++---------- 1 files changed, 15 insertions(+), 10 deletions(-) diff --git a/MES.Service/service/Warehouse/MesInvItemInCDetailsManager.cs b/MES.Service/service/Warehouse/MesInvItemInCDetailsManager.cs index fd320ee..920f82e 100644 --- a/MES.Service/service/Warehouse/MesInvItemInCDetailsManager.cs +++ b/MES.Service/service/Warehouse/MesInvItemInCDetailsManager.cs @@ -75,19 +75,23 @@ { return new PurchaseInventory { - ItemIns = GetInvItemInsList(query)[0], + ItemIns = GetInvItemInsList(query).Items[0], ItemInDetails = GetItemInDetails(query.id), InvItemInCDetails = GetInvItemInCDetails(query.id) }; } - public List<MesInvItemIns> GetInvItemInsList(WarehouseQuery query) + public (List<MesInvItemIns> Items, int TotalCount) GetInvItemInsList( + WarehouseQuery query) { - return Db.Queryable<MesInvItemIns, MesDepots, MesSupplier>((a, b, c) => - new JoinQueryInfos(JoinType.Left, a.DepotsCode == b.DepotCode - && b.Factory == a.Factory - && b.Company == a.Company, - JoinType.Left, a.SuppNo == c.SuppNo)) + var totalCount = 0; + var result = Db.Queryable<MesInvItemIns, MesDepots, MesSupplier>( + (a, b, c) => + new JoinQueryInfos(JoinType.Left, + a.DepotsCode == b.DepotCode + && b.Factory == a.Factory + && b.Company == a.Company, + JoinType.Left, a.SuppNo == c.SuppNo)) .WhereIF(query.id > 0, (a, b, c) => a.Id == query.id) .Select((a, b, c) => new MesInvItemIns { @@ -104,7 +108,8 @@ CreateBy = a.CreateBy, DepotName = b.DepotName, SuppName = c.SuppName - }).ToPageList(query.PageIndex, query.Limit); + }).ToPageList(query.PageIndex, query.Limit, ref totalCount); + return (result, totalCount); } public List<MesInvItemInCItems> GetItemInDetails(decimal? pid) @@ -120,7 +125,7 @@ var result = Db.Queryable<MesInvItemInCDetails, MesItems, MesUnit>( (g, c, d) => new JoinQueryInfos( JoinType.Left, - g.ItemId == c.Id && g.Company == c.Company && + g.ItemNo == c.ItemNo && g.Company == c.Company && g.Factory == c.Factory, JoinType.Inner, d.Id == Convert.ToDecimal(c.ItemUnit) ) @@ -234,7 +239,7 @@ MesInvItemArnDetail>( (g, c, d, a) => new JoinQueryInfos( JoinType.Left, - g.ItemId == c.Id && g.Company == c.Company && + g.ItemNo == c.ItemNo && g.Company == c.Company && g.Factory == c.Factory, JoinType.Inner, d.Id == Convert.ToDecimal(c.ItemUnit), JoinType.Inner, -- Gitblit v1.9.3