public ActionResult CourseAssign(Department aDepartment, Course aCourse, Teacher aTeacher) { PopulateDropdownList(); if (aDepartment.DepartmentId == 0 || aCourse.CourseId == 0 || aTeacher.TeacherId == 0) { ViewBag.Message = "All fields are required"; return View(); } aDepartment = db.Departments.Find(aDepartment.DepartmentId); aTeacher = db.Teachers.Find(aTeacher.TeacherId); aCourse = db.Courses.Find(aCourse.CourseId); if (aCourse.Teacher != null) { PopulateDrodownList(aCourse, aTeacher); ViewBag.Message = "This Course already assigned to another teacher "; return View(); } aCourse.Teacher = aTeacher; aCourse.Department = aDepartment; if (!ModelState.IsValid) { db.Entry(aCourse).State = EntityState.Modified; db.SaveChanges(); aTeacher.RemainingCredit -= aCourse.Credit; db.Entry(aTeacher).State = EntityState.Modified; db.SaveChanges(); return RedirectToAction("ViewCourseStatus"); } return View(); }
public ActionResult Create(Student aStudent, Course aCourse, DateTime date) { Create(); if (aStudent.StudentId == 0 || aCourse.CourseId == 0) { ViewBag.ErrorMessage = "All fields are required."; return View(); } Enrollment enrollment = new Enrollment(); enrollment.StudentId = aStudent.StudentId; enrollment.CourseId = aCourse.CourseId; enrollment.Date = date; Student student = (db.Students.Where(s => s.StudentId == aStudent.StudentId)).Single(); Course course = db.Courses.Single(c => c.CourseId == aCourse.CourseId); enrollment.Student = student; enrollment.Course = course; bool check = db.Enrollments.Count(c => c.StudentId == aStudent.StudentId && c.CourseId == aCourse.CourseId) ==0; if (check) { db.Enrollments.Add(enrollment); db.SaveChanges(); return RedirectToAction("Index"); } ViewBag.ErrorMessage = "This course has already enrolled for this student"; return View(enrollment); }
private void PopulateDrodownList(Course aCourse, Teacher aTeacher) { var teachers = db.Teachers.Where(t => t.DepartmentId == aTeacher.DepartmentId).ToList(); var courses = db.Courses.Where(s => s.DepartmentId == aCourse.DepartmentId).ToList(); ViewBag.DepartmentId = new SelectList(db.Departments, "DepartmentId", "Code"); ViewBag.TeacherId = new SelectList(teachers, "TeacherId", "Name", aTeacher.Name); ViewBag.CourseId = new SelectList(courses, "CourseId", "Code", aCourse.Code); }