public async Task <IActionResult> Index(string studentIndex, string searchString)
        {
            IQueryable <Student> students   = _context.Student.AsQueryable();
            IQueryable <string>  indexQuery = _context.Student.OrderBy(m => m.Index).Select(m => m.Index).Distinct();

            students = students.Include(s => s.Courses).ThenInclude(s => s.Course);

            if (!string.IsNullOrEmpty(studentIndex))
            {
                students = students.Where(x => x.Index == studentIndex);
            }

            IEnumerable <Student> dataList = students as IEnumerable <Student>;

            if (!string.IsNullOrEmpty(searchString))
            {
                dataList = dataList.ToList().Where(s => s.FullName.ToLower().Contains(searchString.ToLower()));
            }

            var studentViewModel = new StudentFilterViewModel
            {
                Indexes  = new SelectList(await indexQuery.ToListAsync()),
                Students = dataList.ToList()
            };

            return(View(studentViewModel));
        }
Exemplo n.º 2
0
        public async Task <IActionResult> List(StudentFilterViewModel studentFilterViewModel)
        {
            var studentListViewModel = new StudentListViewModel();

            var studentListResult = await _studentManager.GetList(_mapper.Map <StudentFilterModel>(studentFilterViewModel));

            if (studentListResult.IsOk)
            {
                var students = _mapper.Map <List <StudentMvcDto> >(studentListResult.Data.Students);
                studentListViewModel.Students = students;
            }

            var timeTextResult = await _studentManager.GetCachedData();

            studentListViewModel.TimeText      = timeTextResult.Data;
            studentListViewModel.ReturnMessage = Resource.OperationCompletedSuccessfully;


            studentFilterViewModel.Genders = await _optionManager.GetGenders();

            var result = (StudentListViewModel : studentListViewModel,
                          StudentFilterViewModel : studentFilterViewModel);


            return(View(result));
        }
Exemplo n.º 3
0
        public async Task <IActionResult> StudentIndex(string searchFullName, string searchCourse)
        {
            IQueryable <string>  indexQuery = _context.Student.OrderBy(m => m.Index).Select(m => m.Index).Distinct();
            IQueryable <Student> students   = _context.Student.AsQueryable()
                                              .Include(s => s.Courses)
                                              .ThenInclude(s => s.Course);
            var enrollments = _context.Enrollment
                              .Include(e => e.Course)
                              .Include(e => e.Student)
                              .Where(s => s.Course.Title.Contains(searchCourse));

            IEnumerable <int> enrollmentsID = enrollments.Select(e => e.StudentId).Distinct();

            if (!string.IsNullOrEmpty(searchCourse))
            {
                students = students.Where(s => enrollmentsID.Contains(s.Id));
            }

            IEnumerable <Student> dataList = students as IEnumerable <Student>;

            if (!string.IsNullOrEmpty(searchFullName))
            {
                dataList = dataList.Where(s => s.FullName.ToLower().Contains(searchFullName.ToLower())).ToList();
            }

            var studentViewModel = new StudentFilterViewModel
            {
                Students = dataList.ToList()
            };

            return(View(studentViewModel));
        }
Exemplo n.º 4
0
        public async Task <IActionResult> List()
        {
            var studentListViewModel = new StudentListViewModel {
                Students = new List <StudentMvcDto>()
            };

            var genders = await _optionManager.GetGenders();

            var studentFilterViewModel = new StudentFilterViewModel {
                Genders = genders
            };

            var result = (StudentListViewModel : studentListViewModel,
                          StudentFilterViewModel : studentFilterViewModel);

            return(View(result));
        }
Exemplo n.º 5
0
        public async Task <IActionResult> Delete(int id)
        {
            var b = await _studentManager.Delete(id);

            var genders = await _optionManager.GetGenders();

            var studentListViewModel = new StudentListViewModel {
                ReturnMessage = Resource.Successful, Students = new List <StudentMvcDto>()
            };

            var studentFilterViewModel = new StudentFilterViewModel {
                Genders = genders
            };

            var result = (StudentListViewModel : studentListViewModel,
                          StudentFilterViewModel : studentFilterViewModel);


            return(View("List", result));
        }