public static RoleSearchDto ToRoleSearchDto(RoleListSearchRequest request) { var dto = new RoleSearchDto { Limit = request.Limit == 0 ? 10 : request.Limit, Page = request.Page == 0 ? 1 : request.Page, RoleName = request.Name }; return(dto); }
public async Task <PageModelDto <RoleDto> > GetPaged(RoleSearchDto searchModel) { Expression <Func <SysRole, bool> > whereCondition = x => true; if (!string.IsNullOrWhiteSpace(searchModel.RoleName)) { whereCondition = whereCondition.And(x => x.Name.Contains(searchModel.RoleName)); } var pagedModel = await _roleRepository.PagedAsync(searchModel.PageIndex, searchModel.PageSize, whereCondition, x => x.ID, true); return(_mapper.Map <PageModelDto <RoleDto> >(pagedModel)); }
public async Task <PagedModel <RoleProfileDto> > GetPagedList(RoleSearchDto criteria) { Expression <Func <SysRole, bool> > condition = it => true; if (!string.IsNullOrWhiteSpace(criteria.RoleName)) { condition = condition.And(it => it.Name.Contains(criteria.RoleName) || it.Tips.Contains(criteria.RoleName)); } var result = await _unitOfWork.RoleRepository.PagedAsync( criteria.Page, criteria.Limit, condition, it => it.Id, true); var dto = RoleMapper.ToRoleProfileDto(result); if (dto.Count <= 0) { return(dto); } foreach (var item in dto.Data) { var dept = await _deptService.GetById(item.Deptid.Value()); item.DeptName = dept?.Simplename; if (!item.Pid.HasValue || item.Pid.Value == 0) { continue; } // 先从已有的列表里面获取,如果有就不再单独去取 if (dto.Data.Any(it => it.Id == item.Pid)) { item.PName = dto.Data.First(it => it.Id == item.Pid).Name; continue; } // 单独取 item.PName = (await GetById(item.Pid.Value))?.Name; } return(dto); }
public async Task <PageModelDto <RoleDto> > GetPaged([FromQuery] RoleSearchDto searchModel) { return(await _roleService.GetPaged(searchModel)); }