示例#1
0
        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));
        }
示例#2
0
        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);
        }