列表接口优化

This commit is contained in:
tongfei
2023-11-25 09:51:50 +08:00
parent ba76de1022
commit 1f0f21bd12
12 changed files with 105 additions and 6 deletions

View File

@@ -62,6 +62,12 @@ namespace WMS.Web.Repositories
return (new List<BackRecordQueryResponse>(), 0);
var materials = materials_result.Data.ToList();
//组织集合
var orgs_result = await _erpService.BillQueryForOrg();
if (!orgs_result.IsSuccess)
return (new List<BackRecordQueryResponse>(), 0);
var orgs = orgs_result.Data.ToList();
var query = _context.BackRecordDetails
.GroupJoin(_context.BackRecord, detail => detail.Fid, order => order.Id, (detail, orders) => new { detail, orders })
.SelectMany(x => x.orders.DefaultIfEmpty(), (p, order) => new { p.detail, order })
@@ -91,6 +97,8 @@ namespace WMS.Web.Repositories
MaterialNumber = _erpBasicDataExtendService.GetMaterialNumber(materials, s.detail.MaterialId),
Specifications = _erpBasicDataExtendService.GetMaterialSpecifications(materials, s.detail.MaterialId),
Qty = s.detail.Qty,
Org= _erpBasicDataExtendService.GetOrgName(orgs, s.detail.OrgCode),
Stock = _singleDataService.GetSingleData(SingleAction.StocksJoinOrgCode, _loginRepositories.CompanyId, s.detail.StockCode + s.detail.OrgCode),
SubStock = _singleDataService.GetSingleData(SingleAction.SubStocks, _loginRepositories.CompanyId, s.detail.SubStockId),
SerialNumbers = JsonConvert.SerializeObject(s.detail.SerialNumbers),
}).OrderByDescending(x => x.Id).Skip((dto.PageNo - 1) * dto.PageSize).Take(dto.PageSize).ToListAsync();

View File

@@ -77,7 +77,7 @@ namespace WMS.Web.Repositories
//物料集合;模糊查询后的物料集合
if (!string.IsNullOrEmpty(dto.MaterialNumber))
materials = materials.Where(w => EF.Functions.Like(w.MaterialNumber, "%" + dto.MaterialNumber + "%")).ToList();
materials = materials.Where(w => w.MaterialNumber.Contains(dto.MaterialNumber)).ToList();
var query=_context.InStockDetails
.GroupJoin(_context.Instock, detail => detail.Fid, order => order.Id, (detail, orders) => new { detail, orders })

View File

@@ -79,7 +79,7 @@ namespace WMS.Web.Repositories
//物料集合;模糊查询后的物料集合
if (!string.IsNullOrEmpty(dto.MaterialNumber))
materials = materials.Where(w => EF.Functions.Like(w.MaterialNumber, "%" + dto.MaterialNumber + "%")).ToList();
materials = materials.Where(w => w.MaterialNumber.Contains(dto.MaterialNumber)).ToList();
var query = _context.InStockTaskDetails
.GroupJoin(_context.InStockTask, detail => detail.Fid, order => order.Id, (detail, orders) => new { detail, orders })

View File

@@ -61,7 +61,13 @@ namespace WMS.Web.Repositories
//物料集合;模糊查询后的物料集合
if (!string.IsNullOrEmpty(dto.MaterialNumber))
materials = materials.Where(w => EF.Functions.Like(w.MaterialNumber, "%" + dto.MaterialNumber + "%")).ToList();
materials = materials.Where(w =>w.MaterialNumber.Contains(dto.MaterialNumber)).ToList();
//组织集合
var orgs_result = await _erpService.BillQueryForOrg();
if (!orgs_result.IsSuccess)
return (new List<InventoryDetailsQueryResponse>(), 0);
var orgs = orgs_result.Data.ToList();
//
var query = _context.InventoryDetails
@@ -89,6 +95,7 @@ namespace WMS.Web.Repositories
MaterialName = _erpBasicDataExtendService.GetMaterialName(materials, s.MaterialId),
MaterialNumber = _erpBasicDataExtendService.GetMaterialNumber(materials, s.MaterialId),
Specifications = _erpBasicDataExtendService.GetMaterialSpecifications(materials, s.MaterialId),
Org= _erpBasicDataExtendService.GetOrgName(orgs, s.OrgCode),
Stock = _singleDataService.GetSingleData(SingleAction.StocksJoinOrgCode, _loginRepositories.CompanyId, s.StockCode + s.OrgCode),
Qty = s.Qty,
SubStock = _singleDataService.GetSingleData(SingleAction.SubStocks, _loginRepositories.CompanyId, s.SubStockId),

View File

@@ -60,9 +60,15 @@ namespace WMS.Web.Repositories
return (new List<InventoryInOutDetailsQueryResponse>(), 0);
var materials = materials_result.Data.ToList();
//组织集合
var orgs_result = await _erpService.BillQueryForOrg();
if (!orgs_result.IsSuccess)
return (new List<InventoryInOutDetailsQueryResponse>(), 0);
var orgs = orgs_result.Data.ToList();
//物料集合;模糊查询后的物料集合
if (!string.IsNullOrEmpty(dto.MaterialNumber))
materials = materials.Where(w => EF.Functions.Like(w.MaterialNumber, "%" + dto.MaterialNumber + "%")).ToList();
materials = materials.Where(w => w.MaterialNumber.Contains(dto.MaterialNumber)).ToList();
var query = _context.InventoryInOutDetails
.Where(adv => 1 == 1);
@@ -96,6 +102,7 @@ namespace WMS.Web.Repositories
Type =s.Type.GetRemark(),
OrderType=s.OrderType.GetRemark(),
OrderBillNo=s.OrderBillNo,
Org = _erpBasicDataExtendService.GetOrgName(orgs, s.OrgCode),
Stock = _singleDataService.GetSingleData(SingleAction.StocksJoinOrgCode, _loginRepositories.CompanyId, s.StockCode+s.OrgCode),
Qty = s.Qty,
SurplusQty=s.SurplusQty,