物料列表
This commit is contained in:
@@ -2,7 +2,9 @@
|
||||
using Microsoft.AspNetCore.Http;
|
||||
using Microsoft.AspNetCore.Mvc;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
using Microsoft.Extensions.Caching.Memory;
|
||||
using Microsoft.Extensions.Logging;
|
||||
using Microsoft.Extensions.Options;
|
||||
using Newtonsoft.Json;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
@@ -17,6 +19,7 @@ using WMS.Web.Core.Dto.SingleData;
|
||||
using WMS.Web.Core.Internal.Results;
|
||||
using WMS.Web.Domain.Infrastructure;
|
||||
using WMS.Web.Domain.IService.Public;
|
||||
using WMS.Web.Domain.Options;
|
||||
using WMS.Web.Domain.Values;
|
||||
using WMS.Web.Domain.Values.Single;
|
||||
|
||||
@@ -41,13 +44,17 @@ namespace WMS.Web.Api.Controllers
|
||||
private readonly IOutStockRepositories _outStockRepositories;
|
||||
private readonly IMoveBoxRecordRepositories _moveBoxRecordRepositories;
|
||||
private readonly ILogger<SysConfigController> _logger;
|
||||
private ErpOptions _erpOptions;
|
||||
private readonly IMemoryCache _memoryCache;
|
||||
|
||||
public SysConfigController(ILoginService loginService, IBasicsRepositories basicsRepositories,
|
||||
IBoxRepositories boxRepositories, IErpService erpService, ISingleDataService singleDataService,
|
||||
public SysConfigController(ILoginService loginService, IBasicsRepositories basicsRepositories, IOptions<ErpOptions> erpOptions,
|
||||
IBoxRepositories boxRepositories, IErpService erpService, ISingleDataService singleDataService, IMemoryCache memoryCache,
|
||||
ISerialNumbersRepositories serialNumbersRepositories, IBoxInventoryRepositories boxInventoryRepositories,
|
||||
IMapper mapper, IErpBasicDataExtendService erpBasicDataExtendService, IOutStockRepositories outStockRepositories,
|
||||
ILogger<SysConfigController> logger, IMoveBoxRecordRepositories moveBoxRecordRepositories)
|
||||
{
|
||||
this._erpOptions = erpOptions?.Value;
|
||||
this._memoryCache = memoryCache;
|
||||
_loginService = loginService;
|
||||
_basicsRepositories = basicsRepositories;
|
||||
_boxRepositories = boxRepositories;
|
||||
@@ -438,5 +445,24 @@ namespace WMS.Web.Api.Controllers
|
||||
|
||||
return Result<MaterialResponse>.ReSuccess(res);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取物料;通过规格型号
|
||||
/// </summary>
|
||||
/// <param name="speci"></param>
|
||||
/// <returns></returns>
|
||||
[HttpGet]
|
||||
[Route("GetMaterialList")]
|
||||
public ResultList<ErpMaterialDto> GetMaterialList([FromQuery] string speci)
|
||||
{
|
||||
var loginInfo = _loginService.GetLoginInfo(this.HttpContext.Request.Headers["Authorization"]);
|
||||
if (loginInfo == null || loginInfo.UserInfo == null)
|
||||
return ResultList<ErpMaterialDto>.ReFailure(ResultCodes.Token_Invalid_Error);
|
||||
|
||||
var materials = _memoryCache.Get<List<ErpMaterialDto>>(_erpOptions.cache_materail_key);
|
||||
if (materials == null) return ResultList<ErpMaterialDto>.ReFailure(ResultCodes.MateriaNoData);
|
||||
var result = materials.Where(x => x.Specifications.Equals(speci)).ToList();
|
||||
return ResultList<ErpMaterialDto>.ReSuccess(result);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user