using System.Collections.Generic; using System.Threading.Tasks; using Microsoft.AspNetCore.Mvc; using Volo.Abp.Application.Dtos; using Volo.Abp.AspNetCore.Mvc; using Win_in.Sfs.Basedata.Application.Contracts; using Win_in.Sfs.Shared.Domain; namespace Win_in.Sfs.Wms.Pda.Controllers.BaseDatas; /// /// /// [ApiController] [Route($"{PdaHostConst.ROOT_ROUTE}item")] public class ItemController : AbpController { private readonly IItemBasicAppService _itemBasicAppService; private readonly IItemPackAppService _itemPackAppService; /// /// /// /// /// public ItemController(IItemBasicAppService itemBasicAppService , IItemPackAppService itemPackAppService ) { _itemBasicAppService = itemBasicAppService; _itemPackAppService = itemPackAppService; } /// /// 根据code获取物品信息 /// /// /// [HttpGet("{code}")] public virtual async Task GetAsync(string code) { var dto = await _itemBasicAppService.GetByCodeAsync(code).ConfigureAwait(false); return dto; } /// /// 根据名称获取物品 /// /// /// [HttpGet("by-name")] public virtual async Task> GetListByNameAsync(string name) { var dtos = await _itemBasicAppService.GetListByNameAsync(name).ConfigureAwait(false); return dtos; } /// /// 按零件号模糊查询 /// /// /// /// /// /// [HttpGet("get-fuzzy")] public virtual async Task> GetListAsync( string itemCode, int pageSize,int pageIndex,string sortBy) { var input = new SfsBaseDataRequestInputBase { MaxResultCount = pageSize, SkipCount = (pageIndex - 1) * pageSize, Sorting = sortBy, Condition = new Condition { Filters = new List() } }; if (!string.IsNullOrWhiteSpace(itemCode)) { input.Condition.Filters.Add(new Filter("Code", itemCode, EnumFilterAction.Like.ToString())); } var itemDTOs = await _itemBasicAppService.GetPagedListByFilterAsync(input, false).ConfigureAwait(false); return itemDTOs; } }