public async Task <DepartmentResponse> GetAll([FromQuery] GetDepartmentsRequest request) { var departments = _department.GetDepartmentsQuery().Where(request.DepartmentId, x => x.DepartmentId == request.DepartmentId) .Where(request.Name, x => x.Name.Contains(request.Name)); departments = departments.OrderByDynamic(request.SortBy, request.IsDesc); var result = await PaginatedIQueryableExtensions <Department> .CreateAsync(departments.AsNoTracking(), request.Page, request.Rows, request.ShowAll); var userMappers = await result.Item.ProjectTo <DepartmentModel>(MappingProfile.Config).ToArrayAsync(); return(new DepartmentResponse { Valid = true, Count = result.Count, PagePageIndex = result.PageIndex, TotalPages = result.TotalPages, Table = userMappers }); }
public async Task <RoleResponse> GetAll([FromQuery] GetRolesRequest request) { var roles = _roleManager.Roles.Where(request.Id, x => x.Id == request.Id) .Where(request.Name, x => x.Name.Contains(request.Name)); roles = roles.OrderByDynamic(request.SortBy, request.IsDesc); var result = await PaginatedIQueryableExtensions <Role> .CreateAsync(roles.AsNoTracking(), request.Page, request.Rows, request.ShowAll); var roleMappers = await result.Item.ProjectTo <RoleModel>(MappingProfile.Config).ToArrayAsync(); return(new RoleResponse { Valid = true, Count = result.Count, PagePageIndex = result.PageIndex, TotalPages = result.TotalPages, Table = roleMappers }); }
public async Task <MessageResponse> GetAll([FromQuery] GetUsersRequest request) { //TODO: 把config改成DI方式 //var config = new MapperConfiguration(cfg => { // cfg.AddProfile<MappingProfile>(); //}); var users = _userManager.Users.Where(request.UserID, x => x.UserId == request.UserID) .Where(request.UserName, x => x.UserName.Contains(request.UserName)); users = users.OrderByDynamic(request.SortBy, request.IsDesc); var result = await PaginatedIQueryableExtensions <AppUser> .CreateAsync(users.AsNoTracking(), request.Page, request.Rows, request.ShowAll); var userMappers = await result.Item.ProjectTo <AppUserModel>(MappingProfile.Config).ToArrayAsync(); return(new AppUserResponse { Valid = true, Count = result.Count, PagePageIndex = result.PageIndex, TotalPages = result.TotalPages, Table = userMappers }); }