public ListCoursesDTO GetCourses(GetQuerieModel model) { var listCourses = Context.Course.AsNoTracking().Select(t => new CourseDTO { Id = t.Id, Image = t.Image, Title = t.Title }).Where(t => t.Title.ToLower().Contains(model.searchText.ToLower())); var count = listCourses.Count(); var items = listCourses.Skip((model.page - 1) * model.pageSize).Take(model.pageSize).ToList(); return(new ListCoursesDTO { Courses = items, totalCount = count, sizePage = model.pageSize }); }
public ListStudentDTO GetStudents(GetQuerieModel model) { var listUsers = UserManeger.GetUsersInRoleAsync(Constants.UserRole).Result. Select(t => new StudentDTO { Key = t.Id, Name = t.Name, Age = t.Age, Email = t.Email, LastName = t.LastName, RegisteredDate = t.RegisteredDate, StudyDate = t.StudyDate, //Get courses Courses = Context.UserSubscriptions.Where(r => r.UserId == t.Id).Select(y => new CourseDTO { Id = y.Id, Image = Context.Course.FirstOrDefault(u => u.Id == y.CourseId).Image, Title = Context.Course.FirstOrDefault(u => u.Id == y.CourseId).Title, StartDate = Context.UserSubscriptions .FirstOrDefault(u => u.UserId == t.Id && u.CourseId == y.CourseId).StartDate.ToShortDateString() }).ToList() }) .ToList() .Where( t => t.Email.ToLower().Contains(model.searchText.ToLower()) || t.Name.ToLower().Contains(model.searchText.ToLower()) || t.LastName.ToLower().Contains(model.searchText.ToLower())); var count = listUsers.Count(); var items = listUsers.Skip((model.page - 1) * model.pageSize).Take(model.pageSize).ToList(); return(new ListStudentDTO() { Students = items, totalCount = count, sizePage = model.pageSize }); }
public ListCoursesDTO GetCourses([FromQuery] GetQuerieModel dto) { return(QueriesService.GetCourses(dto)); }
//[Authorize(Roles = "Admin")] public ListStudentDTO GetStudents([FromQuery] GetQuerieModel model) { return(QueriesService.GetStudents(model)); }