public async Task <PaginationResultDTO> Get([FromQuery] PaginationParamsDTO paginationParamsDTO) { PaginationParamsModel paginationParams = _mapper.Map <PaginationParamsModel>(paginationParamsDTO); PaginationResultModel operationList = await _operationsHistoryService.GetByFilter(paginationParams); PaginationResultDTO paginationResultDTO = _mapper.Map <PaginationResultDTO>(operationList); return(paginationResultDTO); }
public async Task <PaginationResultDTO <ProductDto> > Filter(ProductParameters parameters) { var query = _productRepository.GetAllAsQueryable(); if (!string.IsNullOrEmpty(parameters.Name)) { query = query.Where(x => x.Name.ToLower().Contains(parameters.Name.ToLower())); } var list = await query.OrderBy(x => x.Name) .Skip((parameters.Page - 1) * parameters.PageSize) .Take(parameters.PageSize) .ToListAsync(); var result = new PaginationResultDTO <ProductDto> { Result = _mapper.Map <IEnumerable <ProductDto> >(list), CollectionSize = await query.CountAsync() }; return(result); }