public async Task <PageInfo <GroupListDto> > GetAllGroupsAsync(int page = 1, int pageSize = 10) { var groups = UnitOfWork.GroupRepository.GetAll() .OrderBy(x => x.Number); return(await PagedHelper.CreatePagedResultsAsync(groups, page, pageSize, x => x.ToGroupListDto())); }
public async Task <PageInfo <ThemeResponse> > GetAllThemesBySubjectId(Guid subjectId, int page, int pageSize) { var themes = UnitOfWork.ThemeRepository.Query(x => x.SubjectId == subjectId) .OrderBy(x => x.Title); return(await PagedHelper.CreatePagedResultsAsync(themes, page, pageSize, x => x.ToThemeResponse())); }
public async Task <PageInfo <ThemeResultsResponse> > GetResultsByGroupIdThemeIdAsync(Guid groupId, Guid themeId, int page, int pageSize) { var results = UnitOfWork.ResultRepository.Query(x => x.Student.GroupId == groupId && x.ThemeId == themeId) .OrderBy(x => x.Student.SearchFullName); return(await PagedHelper.CreatePagedResultsAsync(results, page, pageSize, x => x.ToThemeResultsResponse())); }
public async Task <PageInfo <ProfileResultsResponse> > GetResultsByProfileIdAsync(Guid profileId, int page, int pageSize) { var results = UnitOfWork.ResultRepository.Query(x => x.UserProfileId == profileId) .OrderByDescending(x => x.Created); return(await PagedHelper.CreatePagedResultsAsync(results, page, pageSize, x => x.ToProfileResultsResponse())); }
public async Task <PageInfo <ProfileResponse> > GetStudentsByGroupIdAsync(Guid groupId, int page, int pageSize) { var students = UnitOfWork.UserProfileRepository.Query(x => x.GroupId == groupId) .OrderBy(x => x.LastName); return(await PagedHelper.CreatePagedResultsAsync(students, page, pageSize, x => x.ToProfileResponse())); }
public async Task <PageInfo <SubjectResponse> > GetAllSubjectsByUserProfileId(int page, int pageSize, Guid userProfileId) { var subjects = UnitOfWork.SubjectRepository.Query(x => x.UserProfileId == userProfileId) .Include(x => x.Themes) .OrderBy(x => x.Title); return(await PagedHelper.CreatePagedResultsAsync(subjects, page, pageSize, x => x.ToSubjectResponse())); }
public async Task <PageInfo <SubjectResponse> > GetAllSubjects(int page, int pageSize) { var subjects = UnitOfWork.SubjectRepository.GetAll() .Include(x => x.Themes) .OrderBy(x => x.Title); return(await PagedHelper.CreatePagedResultsAsync(subjects, page, pageSize, x => x.ToSubjectResponse())); }
public async Task <PageInfo <QuestionResponse> > GetAllQuestionsByThemeIdAsync(int page, int pageSize, Guid themeId) { // You can't make this request async and IQueryable at the same time // http://go.microsoft.com/fwlink/?LinkId=287068 var questions = UnitOfWork.QuestionThemeRepository.Query(x => x.ThemeId == themeId) .Select(x => x.Question) .OrderByDescending(x => x.Created); return(await PagedHelper.CreatePagedResultsAsync(questions, page, pageSize, x => x.ToQuestionResponse())); }
public async Task <PageInfo <GroupListDto> > GetAllGroupsAsync(int page = 1, int pageSize = 10) { if (page <= 0) { throw new ArgumentOutOfRangeException(nameof(page)); } var groups = UnitOfWork.GroupRepository.GetAll() .OrderBy(x => x.Number); return(await PagedHelper.CreatePagedResultsAsync(groups, page, pageSize, x => x.ToGroupListDto())); }
public async Task <PageInfo <SuperAdminProfileResponse> > GetProfilesByRoleIdAsync(string roleId, int page, int pageSize) { var userIds = await UnitOfWork.UserRepository.Query(x => x.Roles.Any(y => y.RoleId == roleId)) .Select(x => x.Id) .ToListAsync(); var profiles = UnitOfWork.UserProfileRepository.Query(x => userIds.Contains(x.UserId)) .OrderBy(x => x.SearchFullName); return(await PagedHelper.CreatePagedResultsAsync(profiles, page, pageSize, x => x.ToSuperAdminProfileResponse())); }