Exemplo n.º 1
0
        public IActionResult GetDriverLicenses(DriverLicenseResourceParameters resourceParameters)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            var licenses = _usersRepository.GetDriverLicenses(resourceParameters);

            var prevLink = licenses.HasPrevious
                ? _resourceUriHelper.CreateResourceUri(resourceParameters, ResourceUriType.PrevoiusPage, nameof(GetDriverLicenses)) : null;

            var nextLink = licenses.HasNext
                ? _resourceUriHelper.CreateResourceUri(resourceParameters, ResourceUriType.NextPage, nameof(GetDriverLicenses)) : null;

            Response.Headers.Add("X-Pagination", Helpers.PaginationMetadata.GeneratePaginationMetadata(licenses, resourceParameters, prevLink, nextLink));

            var licensesDtos = new List <DriverLicenseDto>();

            foreach (var l in licenses)
            {
                licensesDtos.Add(Mapper.Map <DriverLicenseDto>(l));
            }

            return(Ok(licensesDtos));
        }
Exemplo n.º 2
0
        public PagedList <DriverLicense> GetDriverLicenses(DriverLicenseResourceParameters resourceParameters)
        {
            IQueryable <DriverLicense> beforePaging = _dataContext.DriverLicenses.OrderBy(l => l.UpdateTime);

            if (resourceParameters.IsApproved != null)
            {
                beforePaging = beforePaging.Where(p => p.IsApproved == resourceParameters.IsApproved);
            }

            return(PagedList <DriverLicense> .Create(beforePaging, resourceParameters.PageNumber, resourceParameters.PageSize));
        }