Ejemplo n.º 1
0
        public async Task <PagedList <Clients> > GetAll(ClientsQueryFilters filters)
        {
            filters.PageNumber = filters.PageNumber == 0 ? _paginationOptions.DefaultPageNumber : filters.PageNumber;
            filters.PageSize   = filters.PageSize == 0 ? _paginationOptions.DefaultPageSize : filters.PageSize;

            var client = await _clientsRepository.GetAll();

            if (filters.clientId != null)
            {
                client = client.Where(x => x.Client_Id == filters.clientId);
            }

            if (filters.identification != null)
            {
                client = client.Where(x => x.Identification == filters.identification);
            }

            if (filters.status)
            {
                client = client.Where(x => x.Status == filters.status);
            }

            var pageClient = PagedList <Clients> .Create(client, filters.PageNumber, filters.PageSize);

            return(pageClient);
        }
Ejemplo n.º 2
0
        public async Task <IActionResult> GetAll([FromQuery] ClientsQueryFilters filters)
        {
            var client = await _clientsServices.GetAll(filters);

            var      clientDto = _mapper.Map <IEnumerable <ClientsDTO> >(client);
            Metadata metadata  = MetadaFill(client);

            var response = new GenericResponse <IEnumerable <ClientsDTO> >(clientDto)
            {
                meta = metadata
            };

            Response.Headers.Add("X-Pagination", JsonConvert.SerializeObject(metadata));
            return(Ok(response));
        }
Ejemplo n.º 3
0
        public Url GetPaginationUri(ClientsQueryFilters filters, string actionUrl)
        {
            string baseUrl = $"{_baseUri}{actionUrl}";

            return(new Url(baseUrl));
        }