internal Message DeregisterCourseWithCollege(CollegeAndCourseId collegeAndCourseId) { Message message = new Message(); StudentCourseCollegeQuery sccQuery = new StudentCourseCollegeQuery(); if (query.IsCourseRegisteredToCollege(context, collegeAndCourseId.CourseId, collegeAndCourseId.CollegeId)) { try { var students = sccQuery.GetAllStudentsFromCourseAndCollege(context, collegeAndCourseId.CourseId, collegeAndCourseId.CollegeId); sccQuery.DeregisterMulitpleStudentfromCourseAndCollege(context, students); query.DeregisterCourseWithCollege(context, new CollegeCourse() { CollegeId = collegeAndCourseId.CollegeId, CourseId = collegeAndCourseId.CourseId }); message.status = true; } catch (Exception e) { message.status = false; message.message = e.Message; } } else { message.status = false; message.message = $"The course (id : {collegeAndCourseId.CourseId}), is not registered " + $"with college (id:{collegeAndCourseId.CollegeId})"; } return(message); }
public Message RegisterStudentToCourse(StudentIdCourseId studentIdCourseId) { Message msg = new Message(); CourseQuery courseQuery = new CourseQuery(); StudentCourseCollegeQuery studentCourseCollegeQuery = new StudentCourseCollegeQuery(); StudentQuery studentQuery = new StudentQuery(); if (query.IsStudentRegisteredtoCourse(context, studentIdCourseId.StudentId, studentIdCourseId.CourseId)) { msg.status = false; msg.message = "Student is already registered to the course"; } else if (!query.StudentExists(context, studentIdCourseId.StudentId) || !courseQuery.courseExistsOnId(context, studentIdCourseId.CourseId)) { msg.status = false; msg.message = "The Student/Course is not registered"; } var college = AllotCollege(studentIdCourseId); if (college == null) { msg.status = false; msg.message = "No colleges currently offer this course"; } StudentCourseCollege studentCourseCollege = new StudentCourseCollege() { CollegeId = college.Id, StudentId = studentIdCourseId.StudentId, CourseId = studentIdCourseId.CourseId, }; try { studentCourseCollegeQuery.RegisterStudentToCourseAndCollege(context, studentCourseCollege); var course = courseQuery.GetCourseById(context, studentIdCourseId.CourseId); msg.status = true; msg.message = $"Alloted College: {college.Name} (Id : {college.Id})\n for Course : {course.courseName} (id : {course.Id})"; } catch (Exception e) { msg.status = false; msg.message = $"Internal Error : {e.Message}"; } return(msg); }
internal Message DeregisterStudentFromCourse(StudentDetails studentDetails) { Message msg = new Message(); StudentCourseCollegeQuery studentCourseCollegeQuery = new StudentCourseCollegeQuery(); try { int studentId = studentDetails.studentId; int courseId = (int)studentDetails.courseId; int collegeId = (int)studentDetails.collegeId; if (query.IsStudentRegisteredtoCourse(context, studentId, courseId)) { var studentCourseRecord = studentCourseCollegeQuery.GetStudentCourseCollege(context, studentId, courseId, collegeId); if (studentCourseRecord == null) { msg.status = false; msg.message = "Student record for the course doesn't exist"; } else { studentCourseCollegeQuery.DeregisterStudentfromCourseAndCollege(context, studentCourseRecord); msg.status = true; } } else { msg.status = false; msg.message = $"The student with {studentId} is not registered to any course"; } } catch (Exception e) { msg.status = false; msg.message = e.Message; } return(msg); }