public static AttendanceStatusEnum ParseInOrOut(AttendanceTypeEnum attendanceType) { switch (attendanceType) { case AttendanceTypeEnum.AttendanceIn: case AttendanceTypeEnum.AttendanceFlagIn: return(AttendanceStatusEnum.In); case AttendanceTypeEnum.AttendanceOut: case AttendanceTypeEnum.AttendanceFlagOut: return(AttendanceStatusEnum.Out); case AttendanceTypeEnum.AttendanceFlagRdyOut: return(AttendanceStatusEnum.WaitOut); case AttendanceTypeEnum.AttendanceFlagRdyIn: return(AttendanceStatusEnum.WaitIn); default: return(AttendanceStatusEnum.UnKnown); } }
public static IList <ShortAttendanceStatViewData> Create(IList <DailyAttendanceSummary> dailyAttendanceSummaries, AttendanceTypeEnum type, DateTime currentDate) { var res = new List <ShortAttendanceStatViewData>(); string prevMonth = ""; //get only for last month var fromDate = currentDate.AddDays(-31); dailyAttendanceSummaries = dailyAttendanceSummaries.Where(x => x.Date >= fromDate && x.Date <= currentDate).ToList(); foreach (var dailyAttendanceSummary in dailyAttendanceSummaries) { var attCount = 0; if (type == AttendanceTypeEnum.Absent) { attCount = (int)(dailyAttendanceSummary.Absences ?? 0); } if (type == AttendanceTypeEnum.Tardies) { attCount = dailyAttendanceSummary.Tardies ?? 0; } var date = dailyAttendanceSummary.Date; string summary = date.Day.ToString(); if (prevMonth != date.ToString("MMM")) { prevMonth = date.ToString("MMM"); summary = prevMonth + " " + summary; } res.Add(new ShortAttendanceStatViewData { Date = dailyAttendanceSummary.Date, StudentCount = attCount, Summary = summary }); } return(res); }
public static IList <ClassAttendanceStatViewData> Create(IList <ClassDailyAttendanceSummary> classDailyAttendances, AttendanceTypeEnum type, DateTime currentDate) { return(classDailyAttendances.Select(x => new ClassAttendanceStatViewData { Class = ShortClassViewData.Create(x.Class), DayStats = ShortAttendanceStatViewData.Create(x.DailyAttendances, type, currentDate) }).ToList()); }
public static IList <AttendanceStatByClassViewData> Create(IList <StudentClassAttendanceSummary> studentsClassAttendance, AttendanceTypeEnum type) { return(studentsClassAttendance.Select(x => Create(x, type)).ToList()); }
public static AttendanceStatByClassViewData Create(StudentClassAttendanceSummary studentClassAttendance, AttendanceTypeEnum type) { var attCount = 0; if (type == AttendanceTypeEnum.Absent) { attCount = (int)(studentClassAttendance.Absences ?? 0); } if (type == AttendanceTypeEnum.Tardies) { attCount = studentClassAttendance.Tardies ?? 0; } return(Create(studentClassAttendance.StudentId, studentClassAttendance.Class, attCount)); }
public static IList <ShortStudentAttendanceViewData> Create(IList <StudentAttendanceSummary> studentAttendanceSummaries, IList <string> alerts, AttendanceTypeEnum type) { var res = studentAttendanceSummaries.Select(x => new ShortStudentAttendanceViewData(x.Student, alerts , AttendanceStatByClassViewData.Create(x.ClassAttendanceSummaries, type))).ToList(); return(res.Where(x => x.TotalAttendanceCount > 2).OrderByDescending(x => x.TotalAttendanceCount).ToList()); }