public ActionResult NewTeacherRecord(int teacherId) { var teacher = _teacherRepo.GetTeacher(teacherId); TeacherRecordsVM vm = new TeacherRecordsVM(_teacherRepo.GetActiveStudents(teacherId), teacherId); vm.Teacher = teacher; vm.Subjects = ToStringLists.StringSubjects(teacher.TeacherSubjects); return(View(vm)); }
public ActionResult StudentRecord(int studentId) { var student = _studentRepo.GetStudent(studentId); StudentRecordVM vm = new StudentRecordVM { Student = student, Classes = ToStringLists.StringClasses(student.StudentClasses), Attendance = _studentRepo.GetStudentAttendance(studentId) }; return(View(vm)); }
public ActionResult TeacherRecord(int teacherId) { var teacher = _teacherRepo.GetTeacher(teacherId); TeacherRecordVM vm = new TeacherRecordVM { Teacher = teacher, Subjects = ToStringLists.StringSubjects(teacher.TeacherSubjects), Attendance = _teacherRepo.GetTeachersAttendance(teacherId) }; return(View(vm)); }
public StudentsVM(List <BCStudent> students) { this.Students = new List <StudentVM>(); foreach (var s in students) { var totalAbsences = 0; var totalLatenesses = 0; var totalPresent = 0; var amountOfClasses = 0; for (var c = 0; c < s.StudentClasses.Count; c++) { var thisClass = s.StudentClasses.ToList()[c]; foreach (var a in thisClass.Attendances) { if (a.StudentClass.Class.IsActive) { if (a.Status == Status.ExcusedAbsence || a.Status == Status.UnexcusedAbsence) { totalAbsences++; } else { if (a.Status == Status.UnexcusedLateness || a.Status == Status.ExcusedLateness) { totalLatenesses++; } totalPresent++; } amountOfClasses++; } } } this.Students.Add(new StudentVM() { StudentId = s.BCStudentId, Name = $"{s.FirstName} {s.LastName}", Class = ToStringLists.StringClasses(s.StudentClasses.Where(c => c.Class.IsActive).ToList()), TotalAbsences = totalAbsences, TotalLatenesses = totalLatenesses, Percentage = totalPresent == 0 && amountOfClasses != 0 ? 0 : ((totalPresent == 0 ? 1 : totalPresent) * 100) / (amountOfClasses == 0 ? 1 : amountOfClasses) }); } }
public TeachersVM(List <BCTeacher> teachers, Settings settings) { this.Teachers = new List <TeacherVM>(); foreach (BCTeacher t in teachers) { var absentees = 0; var totalPresent = 0; var totalClasses = 0; for (int s = 0; s < t.TeacherSubjects.Count; s++) { var thisSubject = t.TeacherSubjects.ToList()[s]; foreach (var a in thisSubject.Attendances) { if (a.StudentClass.Class.IsActive && a.StudentClass.Student.YearStart == settings.YearStart && a.StudentClass.Student.YearEnd == settings.YearEnd) { if (a.Status == Status.ExcusedAbsence || a.Status == Status.UnexcusedAbsence) { absentees++; } else { totalPresent++; } totalClasses++; } } } this.Teachers.Add(new TeacherVM { TeacherId = t.BCTeacherId, Teacher = $"{t.Title} {t.FirstName} {t.LastName}", Subjects = ToStringLists.StringSubjects(t.TeacherSubjects), Absentees = absentees, Percentage = totalPresent == 0 && totalClasses != 0 ? 0 : ((totalPresent == 0 ? 1 : totalPresent) * 100) / (totalClasses == 0 ? 1 : totalClasses) }); } }