public static IQueryable <T> Page <T>(this IQueryable <T> src, StandardPaginationQuery pagination)
        {
            var paginationPageSize = GetPaginationPageSize(pagination);
            var page = GetPaginationPage(pagination);

            return(src.Skip(page * paginationPageSize).Take(paginationPageSize));
        }
        public IHttpActionResult GetBusinessTypes(Guid organizationUuid, [FromUri] StandardPaginationQuery pagination = null)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            return(_businessTypeApplicationService
                   .GetOptionTypes(organizationUuid)
                   .Select(x => x.Page(pagination))
                   .Select(ToDTOs)
                   .Match(Ok, FromOperationError));
        }
Exemplo n.º 3
0
        public IHttpActionResult GetAccessibleOrganizations([FromUri] StandardPaginationQuery pagination = null)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            return(_rightsHoldersService
                   .ResolveOrganizationsWhereAuthenticatedUserHasRightsHolderAccess()
                   .OrderBy(x => x.Id)
                   .Page(pagination)
                   .Transform(ToDTOs)
                   .Transform(Ok));
        }
Exemplo n.º 4
0
        public IHttpActionResult GetItSystems(
            Guid?rightsHolderUuid = null,
            Guid?businessTypeUuid = null,
            string kleNumber      = null,
            Guid?kleUuid          = null,
            int?numberOfUsers     = null,
            [FromUri] StandardPaginationQuery paginationQuery = null)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            var refinements = new List <IDomainQuery <ItSystem> >();

            if (rightsHolderUuid.HasValue)
            {
                refinements.Add(new QueryByRightsHolder(rightsHolderUuid.Value));
            }

            if (businessTypeUuid.HasValue)
            {
                refinements.Add(new QueryByBusinessType(businessTypeUuid.Value));
            }

            if (kleNumber != null || kleUuid.HasValue)
            {
                refinements.Add(new QueryByTaskRef(kleNumber, kleUuid));
            }

            if (numberOfUsers.HasValue)
            {
                refinements.Add(new QueryByNumberOfUsages(numberOfUsers.Value));
            }

            return(_itSystemService.GetAvailableSystems(refinements.ToArray())
                   .OrderBy(x => x.Id)
                   .Page(paginationQuery)
                   .ToList()
                   .Select(ToDTO)
                   .Transform(Ok));
        }
 private static int GetPaginationPageSize(StandardPaginationQuery pagination)
 {
     return(pagination?.PageSize.GetValueOrDefault(PagingContraints.MaxPageSize) ?? PagingContraints.MaxPageSize);
 }
 private static int GetPaginationPage(StandardPaginationQuery pagination)
 {
     return(pagination?.Page.GetValueOrDefault(0) ?? 0);
 }