public IActionResult Enroll() { Guid studentId = Guid.Parse(User.Claims.FirstOrDefault(c => c.Type == ClaimTypes.NameIdentifier).Value); Student student = _studentService.GetStudentWithTeacherCoursesById(studentId); List <SelectListItem> teacherSelect = new List <SelectListItem>(); foreach (var teacher in student.TeacherStudents) { User teacherUser = _userService.FindById(teacher.TeacherId); teacherSelect.Add(new SelectListItem { Text = $"{teacherUser.FirstName} {teacherUser.LastName}", Value = $"{teacher.TeacherId}" }); } EnrollVM enrollVM = new EnrollVM { TeacherSelectList = teacherSelect }; return(View(enrollVM)); }
public IActionResult Enroll(Guid?teacherId, Guid?courseId, int?sourceId) { Guid studentId = Guid.Parse(User.Claims.FirstOrDefault(c => c.Type == ClaimTypes.NameIdentifier).Value); Student student = _studentService.GetStudentWithTeacherCoursesById(studentId); Teacher selectedTeacher = _teacherService.GetTeacherWithCourses(teacherId.Value); List <Course> teacherCourses = selectedTeacher.Courses.ToList(); List <SelectListItem> teacherSelect = new List <SelectListItem>(); foreach (var teacher in student.TeacherStudents) { User teacherUser = _userService.FindById(teacher.TeacherId); teacherSelect.Add(new SelectListItem { Text = $"{teacherUser.FirstName} {teacherUser.LastName}", Value = $"{teacher.TeacherId}", Selected = teacherId.Value.Equals(teacher.TeacherId) }); } EnrollVM enrollVM = new EnrollVM { TeacherSelectList = teacherSelect, TeacherCourses = teacherCourses, Student = student }; ViewBag.TeacherId = teacherId.Value; StudentCourse studentCourse = student.StudentCourses.FirstOrDefault(stdcou => stdcou.CourseId == courseId); if (courseId != null && (studentCourse == null || !studentCourse.IsEnrolled)) { _studentService.Enroll(studentId, courseId.Value); } else if (courseId != null && studentCourse != null && studentCourse.IsEnrolled) { _studentService.UnEnroll(studentId, studentCourse); } if (sourceId != null) { return(RedirectToAction(controllerName: "Student", actionName: "Courses")); } return(View(enrollVM)); }
public List <EnrollVM> GetAllEnrollCourse() { Query = "SELECT st.Id as StudentId, ct.Id as CourseId, ct.CourseCode FROM Enroll_tb as et " + "INNER JOIN Student_tb as st on et.StudentId = st.Id INNER JOIN Course_tb as ct on et.CourseId = ct.Id"; Command = new SqlCommand(Query, Connection); Connection.Open(); Reader = Command.ExecuteReader(); List <EnrollVM> enrollVms = new List <EnrollVM>(); while (Reader.Read()) { EnrollVM aEnroll = new EnrollVM() { StudentId = Convert.ToInt32(Reader["StudentId"]), CourseId = Convert.ToInt32(Reader["CourseId"]), CourseCode = Convert.ToString(Reader["CourseCode"]) }; enrollVms.Add(aEnroll); } Connection.Close(); Reader.Close(); return(enrollVms); }