public async Task <IActionResult> GetPermissions([FromRoute] int permId, PermissionQueryInput input)
        {
            int    pageIndex = input.Page - 1;
            int    Per_Page  = input.Per_Page;
            string sortBy    = input.SortBy;

            IQueryable <Permission> query = dbContext.Permissions.AsQueryable <Permission>();

            query = query.Where(q => q.Parent == permId);

            query = query.OrderBy(sortBy);

            var totalCount = await query.CountAsync();

            var totalPages = (int)Math.Ceiling((double)totalCount / Per_Page);

            HttpContext.Response.Headers.Add("X-TotalCount", JsonConvert.SerializeObject(totalCount));
            HttpContext.Response.Headers.Add("X-TotalPage", JsonConvert.SerializeObject(totalPages));

            List <Permission> permissions = await query.Skip(pageIndex *Per_Page).Take(Per_Page).ToListAsync();

            List <PermissionOutput> list = mapper.Map <List <PermissionOutput> >(permissions);

            return(Ok(list));
        }
 public async Task<PagedResultOutput<PermissionDto>> GetPermissions(PermissionQueryInput input)
 {
     int totalCount;
     return new PagedResultOutput<PermissionDto>
     {
         TotalCount = await permissionRepository.CountAsync(),
         Items = permissionRepository.GetAll().FilterBy(input, out totalCount).OrderByDescending(p => p.Id).PageBy(input).ToList().MapTo<List<PermissionDto>>()
     };
 }
示例#3
0
        public async Task <PagedResultOutput <PermissionDto> > GetPermissions(PermissionQueryInput input)
        {
            int totalCount;

            return(new PagedResultOutput <PermissionDto>
            {
                TotalCount = await permissionRepository.CountAsync(),
                Items = permissionRepository.GetAll().FilterBy(input, out totalCount).OrderByDescending(p => p.Id).PageBy(input).ToList().MapTo <List <PermissionDto> >()
            });
        }
 public QueryRequestOut<PermissionItem> GetAll(PermissionQueryInput input)
 {
     return _permissionRepository.GetAll()
         .WhereIf(!input.Keywords.IsNullOrWhiteSpace(),m=>m.Name.Contains(input.Keywords))
         .ToOutPut<PermissionItem>(input);
 }
        public JsonResult List(PermissionQueryInput input)
        {
            var list = _permissionService.GetAll(input);

            return(ToJson(list));
        }
 public JsonResult List(PermissionQueryInput input)
 {
     var list = _permissionService.GetAll(input);
     return ToJson(list);
 }
示例#7
0
 public QueryRequestOut <PermissionItem> GetAll(PermissionQueryInput input)
 {
     return(_permissionRepository.GetAll()
            .WhereIf(!input.Keywords.IsNullOrWhiteSpace(), m => m.Name.Contains(input.Keywords))
            .ToOutPut <PermissionItem>(input));
 }