接口优化

This commit is contained in:
tongfei
2024-03-27 11:14:58 +08:00
parent e686a1a04a
commit 7c56ef72d0
8 changed files with 21 additions and 7 deletions

View File

@@ -180,7 +180,8 @@ namespace WMS.Web.Api.Controllers
//获取物料对应的仓位
var materialNumbers = list.GroupBy(x => x.MaterialNumber).Select(x => x.Key).ToList();
var stockCodes = list.GroupBy(x => x.StockCode).Select(x => x.Key).ToList();
var materialSubStocks= await _inventoryDetailsRepositories.GetMaterialSubStocks(materialNumbers, stockCodes, loginInfo.UserInfo.CompanyId);
var orgCodes = list.GroupBy(x => x.OrgCode).Select(x => x.Key).ToList();
var materialSubStocks= await _inventoryDetailsRepositories.GetMaterialSubStocks(materialNumbers, stockCodes, orgCodes, loginInfo.UserInfo.CompanyId);
list.ForEach(x =>
{
x.MaterialSubStocks = materialSubStocks.Where(t => t.MaterialNumber == x.MaterialNumber).ToList();
@@ -233,7 +234,8 @@ namespace WMS.Web.Api.Controllers
//获取物料对应的仓位
var materialNumbers = list.SelectMany(x=>x.Details).GroupBy(x => x.MaterialNumber).Select(x => x.Key).ToList();
var stockCodes = list.SelectMany(x => x.Details).GroupBy(x => x.StockCode).Select(x => x.Key).ToList();
var materialSubStocks = await _inventoryDetailsRepositories.GetMaterialSubStocks(materialNumbers, stockCodes, loginInfo.UserInfo.CompanyId);
var orgCodes = list.SelectMany(x => x.Details).GroupBy(x => x.OrgCode).Select(x => x.Key).ToList();
var materialSubStocks = await _inventoryDetailsRepositories.GetMaterialSubStocks(materialNumbers, stockCodes, orgCodes, loginInfo.UserInfo.CompanyId);
list.SelectMany(x=>x.Details).ToList().ForEach(x =>
{
x.MaterialSubStocks = materialSubStocks.Where(t => t.MaterialNumber == x.MaterialNumber).ToList();

View File

@@ -2208,6 +2208,11 @@
组织
</summary>
</member>
<member name="P:WMS.Web.Core.Dto.InStockTask.SourceBillNoQueryResponse.OrgCode">
<summary>
组织编码
</summary>
</member>
<member name="P:WMS.Web.Core.Dto.InStockTask.SourceBillNoQueryResponse.SourceBillNo">
<summary>
来源单号

View File

@@ -2920,7 +2920,7 @@
<param name="orgCodes"></param>
<returns></returns>
</member>
<member name="M:WMS.Web.Domain.Infrastructure.IInventoryDetailsRepositories.GetMaterialSubStocks(System.Collections.Generic.List{System.String},System.Collections.Generic.List{System.String},System.Int32)">
<member name="M:WMS.Web.Domain.Infrastructure.IInventoryDetailsRepositories.GetMaterialSubStocks(System.Collections.Generic.List{System.String},System.Collections.Generic.List{System.String},System.Collections.Generic.List{System.String},System.Int32)">
<summary>
获取物料对应的仓位集合
</summary>

View File

@@ -32,6 +32,11 @@ namespace WMS.Web.Core.Dto.InStockTask
/// </summary>
public int OrgId { get; set; }
/// <summary>
/// 组织编码
/// </summary>
public string OrgCode { get; set; }
/// <summary>
/// 来源单号
/// </summary>

View File

@@ -117,7 +117,7 @@ namespace WMS.Web.Core.Help
HttpClient client = new HttpClient();
//请求头添加其他值
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", reqData.AccessToken);
client.DefaultRequestHeaders.Add("Refresh-Authorization", reqData.RefreshToken);
client.DefaultRequestHeaders.Add("Refresh-Authorization", "Bearer " + reqData.RefreshToken);
client.DefaultRequestHeaders.Connection.Add("Keep-Alive");
client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
client.DefaultRequestHeaders.AcceptCharset.Add(new StringWithQualityHeaderValue ("utf-8"));

View File

@@ -64,6 +64,6 @@ namespace WMS.Web.Domain.Infrastructure
/// <param name="stockCodes"></param>
/// <param name="companyId"></param>
/// <returns></returns>
Task<List<MaterialSubStock>> GetMaterialSubStocks(List<string> materialNumbers, List<string> stockCodes, int companyId);
Task<List<MaterialSubStock>> GetMaterialSubStocks(List<string> materialNumbers, List<string> stockCodes, List<string> orgCodes, int companyId);
}
}

View File

@@ -340,6 +340,7 @@ namespace WMS.Web.Repositories
DetailsId = s.detail.Id,
SupplierId = s.detail.SupplierId,
OrgId = s.detail.OrgId,
OrgCode=s.detail.OrgCode,
SourceBillNo = s.order.SourceBillNo,
StockCode = s.detail.StockCode,
StockName = _singleDataService.GetSingleData(SingleAction.StocksJoinOrgCode, _loginRepositories.CompanyId, s.detail.StockCode + s.detail.OrgCode),

View File

@@ -233,10 +233,11 @@ namespace WMS.Web.Repositories
/// <param name="stockCodes"></param>
/// <param name="companyId"></param>
/// <returns></returns>
public async Task<List<MaterialSubStock>> GetMaterialSubStocks(List<string> materialNumbers, List<string> stockCodes,int companyId)
public async Task<List<MaterialSubStock>> GetMaterialSubStocks(List<string> materialNumbers, List<string> stockCodes, List<string> orgCodes, int companyId)
{
return await _context.InventoryDetails.Where(x => materialNumbers.Contains(x.MaterialNumber) &&
stockCodes.Contains(x.StockCode)).Select(x=>new MaterialSubStock()
stockCodes.Contains(x.StockCode) &&
orgCodes.Contains(x.OrgCode)).Select(x=>new MaterialSubStock()
{
MaterialNumber=x.MaterialNumber,
SubStockCode=x.SubStockCode,