public JsonResult GetTeacherInfo(int teacherId)
 {
     Teacher teacher = db.Teachers.Find(teacherId);
     Teacher aTeacher = new Teacher
     {
         TeacherCraditLimit = teacher.TeacherCraditLimit,
         RemainingCradit = teacher.RemainingCradit
     };
     return Json(aTeacher, JsonRequestBehavior.AllowGet);
 }
 public JsonResult GetTeacherByDepartmentId(int departmentId)
 {
     var teachers = db.Teachers.Include(d => d.Department).Include(d => d.Designation).Where(d => d.DepartmentId == departmentId);
     List<Teacher> teacher = teachers.ToList();
     List<Teacher> jsonList = new List<Teacher>();
     foreach (Teacher teac in teacher)
     {
         Teacher aTeacher = new Teacher();
         Designation aDesignation = new Designation();
         Department aDepartment = new Department();
         aTeacher.TeacherId = teac.TeacherId;
         aDepartment.DepartmentCode = teac.Department.DepartmentCode;
         aDesignation.DesignationName = teac.Designation.DesignationName;
         aTeacher.Department = aDepartment;
         aTeacher.Designation = aDesignation;
         aTeacher.TeacherName = teac.TeacherName;
         aTeacher.Email = teac.Email;
         aTeacher.ContactNo = teac.ContactNo;
         jsonList.Add(aTeacher);
     }
     return jsonList.Count == 0 ? Json(0, JsonRequestBehavior.AllowGet) : new JsonResult{Data = jsonList, JsonRequestBehavior = JsonRequestBehavior.AllowGet};
 }
        public JsonResult GetAssignInfo(int departmentId)
        {
            var assignInfo =
                db.AssiginCourseToTeachers.Include(a => a.Department)
                    .Include(a => a.Course)
                    .Include(a => a.Teacher)
                    .Where(a => a.DepartmentId == departmentId);
            var listedAssign = assignInfo.ToList();

            List<AssiginCourseToTeacher> assiginCourse = new List<AssiginCourseToTeacher>();
            foreach (AssiginCourseToTeacher assignResult in listedAssign)
            {
                Semister aSemister = new Semister();
                Course aCourse = new Course();
                Teacher aTeacher = new Teacher();
                AssiginCourseToTeacher assigin = new AssiginCourseToTeacher();
                //Semister semister =
                //    db.Semisters.FirstOrDefault(
                //        s => db.Courses.Find(assignResult.CourseId).SemisterId == s.SemisterId);
                aSemister.SemisterName = assignResult.Course.Semister.SemisterName;
                aCourse.CourseCode = assignResult.Course.CourseCode;
                aCourse.CourseName = assignResult.Course.CourseName;
                aCourse.Semister = aSemister;
                assigin.Course = aCourse;
                aTeacher.TeacherName = assignResult.Teacher.TeacherName;
                assigin.Teacher = aTeacher;
                assiginCourse.Add(assigin);
            }
            return Json(assiginCourse.OrderBy(a => a.Course.CourseCode), JsonRequestBehavior.AllowGet);
        }