コード例 #1
0
ファイル: RoleController.cs プロジェクト: stanoje/exebite
 public IActionResult Query(RoleQueryDto query) =>
 _mapper.Map <RoleQueryModel>(query)
 .Map(_queryRepository.Query)
 .Map(_mapper.Map <PagingResult <RoleDto> >)
 .Map(AllOk)
 .Reduce(_ => BadRequest(), error => error is ArgumentNotSet)
 .Reduce(_ => InternalServerError(), x => _logger.LogError(x.ToString()));
コード例 #2
0
        public async Task <ResultModel <PagedList <RoleDto> > > GetRolePage(RoleQueryDto dto)
        {
            var clientJson = new StringContent(JsonConvert.SerializeObject(dto), Encoding.UTF8, "application/json");
            var response   = await _httpClient.PostAsync($"/api/Role/GetRolesPage", clientJson);

            if (response.IsSuccessStatusCode)
            {
                return(JsonConvert.DeserializeObject <ResultModel <PagedList <RoleDto> > >(await response.Content.ReadAsStringAsync()));
            }
            return(null);
        }
コード例 #3
0
ファイル: RoleDomain.cs プロジェクト: QuanBomian/MS.Core
        public List <Role> Get(RoleQueryDto queryDto)
        {
            IQueryable <Role> query = _repository.Query();

            if (queryDto.RoleName != null && queryDto.RoleName != "")
            {
                query = query.Where(Role => Role.RoleName.Contains(queryDto.RoleName));
            }

            return(query.ToList());
        }
コード例 #4
0
ファイル: TenantsController.cs プロジェクト: chengzihu/jwhdm
        [DontWrapResult] //不需要AbpJsonResult]
        public async Task <JsonResult> GetTenants(RoleQueryDto input)
        {
            var output   = (await _tenantAppService.GetAll(new PagedResultRequestDto {
                MaxResultCount = int.MaxValue
            })).Items;                                                                                                        // Paging not implemented yet
            var rolelist = output;

            if (!string.IsNullOrEmpty(input.departmentname))
            {
                rolelist = output.Where(x => x.Name.Contains(input.departmentname) || x.TenancyName.Contains(input.departmentname)).Skip(input.offset * input.limit).Take(input.limit).ToList();
            }
            var result = new { total = rolelist.Count, rows = rolelist };

            return(Json(result));
        }
コード例 #5
0
ファイル: RolesController.cs プロジェクト: QuanBomian/MS.Core
        public async Task <JsonResult> GetAsync([FromQuery] RoleQueryDto condition)
        {
            if (condition.RoleName != null)
            {
                var list = _service.Search(condition);
                return(new JsonResult(new
                {
                    code = 20000,
                    list
                }));
            }
            var items = await _service.GetAll();

            return(new JsonResult(new
            {
                code = 20000,
                items
            }));
        }
コード例 #6
0
        [DontWrapResult] //不需要AbpJsonResult]
        public async Task <JsonResult> GetRoles(RoleQueryDto input)
        {
            var roles    = (await _roleAppService.GetAll(new PagedAndSortedResultRequestDto()
            {
                SkipCount = input.offset * input.limit, MaxResultCount = input.limit
            })).Items;
            var rolelist = roles;

            if (!string.IsNullOrEmpty(input.departmentname))
            {
                rolelist = roles.Where(x => x.Name.Contains(input.departmentname) || x.DisplayName.Contains(input.departmentname)).ToList();//.Skip(input.offset * input.limit).Take(input.limit).ToList();
            }
            foreach (var role in rolelist)
            {
                var grantedPermissions = (await _roleAppService.GetGrantedPermissionsAsync(role.Id));
                role.Permissions.Clear();
                role.Permissions.AddRange(grantedPermissions);
            }

            var result = new { total = rolelist.Count, rows = rolelist };

            return(Json(result));
        }
コード例 #7
0
ファイル: RoleAppService.cs プロジェクト: QuanBomian/MS.Core
 public List <Role> Search(RoleQueryDto condition)
 {
     return(_domain.Get(condition));
 }