// GET List Of All Students Registered In Subject public ActionResult MarkAttendance(int id) { var subject = db.Courses.Where(c => c.CourseId == id).SingleOrDefault(); var SubjectRel = db.StudentRegSubjectRelations.Where(c => c.SubjectId == subject.CourseId).ToList(); List <Student> StudentsList = new List <Student>(); var students = db.Students.ToList(); foreach (var item in students) { foreach (var item1 in SubjectRel) { if (item.StudentId == item1.StudentId) { StudentsList.Add(item); } } } var model = new MarkAttendenceViewModel { Students = StudentsList, Lookups = db.Lookups.Where(c => c.Category == "ATTENDANCE_STATUS").ToList(), Lookup = new Lookup(), }; return(View(model)); }
public ActionResult MarkAttendance(int id, MarkAttendenceViewModel model) { var todayDate = DateTime.Now.Date; if (db.ClassAttendences.Any(c => c.AttendanceDate == todayDate && c.CourseAttendences.Any(d => d.CourseId == id))) { return(RedirectToAction("CoursesList")); } var ClassAttendence = new ClassAttendence { AttendanceDate = DateTime.Now.Date }; var CourseAttendence = new CourseAttendence { AttendenceId = ClassAttendence.ClassAttendenceId, CourseId = id }; db.CourseAttendences.Add(CourseAttendence); db.ClassAttendences.Add(ClassAttendence); for (int i = 0; i < model.Students.Count; i++) { Student Std = model.Students[i]; Lookup lup = model.Lookups[i]; var student = db.Students.Where(c => c.StudentId == Std.StudentId).SingleOrDefault(); var status = db.Lookups.Where(c => c.LookupId == lup.LookupId).SingleOrDefault(); var studentAttendance = new StudentAttendence { StudentId = Std.StudentId, AttendenceStatus = lup.LookupId, AttendenceId = ClassAttendence.ClassAttendenceId }; db.StudentAttendences.Add(studentAttendance); } db.SaveChanges(); return(RedirectToAction("CoursesList")); }