public async Task <PagedList <ClientDocumentType> > GetAll(ClientDocumentTypeQueryFilters filters) { filters.PageNumber = filters.PageNumber == 0 ? _paginationOptions.DefaultPageNumber : filters.PageNumber; filters.PageSize = filters.PageSize == 0 ? _paginationOptions.DefaultPageSize : filters.PageSize; var clientDocumentType = await _clientDocumentTypeRepository.GetAll(); if (filters.clientDocumentType_Id > 0) { clientDocumentType = clientDocumentType.Where(x => x.ClientDocumentType_Id == filters.clientDocumentType_Id); } if (filters.client_Id > 0) { clientDocumentType = clientDocumentType.Where(x => x.Client_Id == filters.client_Id); } if (filters.documentType_Id > 0) { clientDocumentType = clientDocumentType.Where(x => x.DocumentType_Id == filters.documentType_Id); } var pageClient = PagedList <ClientDocumentType> .Create(clientDocumentType, filters.PageNumber, filters.PageSize); return(pageClient); }
public async Task <IActionResult> GetAllClientDocumentType([FromQuery] ClientDocumentTypeQueryFilters filters) { var clientDocument = await _clientDocumentTypeServices.GetAll(filters); var clientDocumentDto = _mapper.Map <IEnumerable <ClientDocumentTypeDTO> >(clientDocument); Metadata metadata = MetadaFill(clientDocument); var response = new GenericResponse <IEnumerable <ClientDocumentTypeDTO> >(clientDocumentDto) { meta = metadata }; Response.Headers.Add("X-Pagination", JsonConvert.SerializeObject(metadata)); return(Ok(response)); }