private void GetAdminWeeklySummary(DateTime selectedStart, DateTime endDate) { AdminWeeklySummary summary = CallLogs.GetAdminWeeklySummary(selectedStart, endDate); ViewBag.TotalMinutes = summary.TotalHours ?? 0; ViewBag.TotalCalls = summary.TotalCalls; IList <EvalEndCounts> endEvals = CallLogs.GetEvalEndCounts(selectedStart, endDate).ToList(); int totalEndEvals = endEvals.Count(); int completedAssignment = (from e2 in endEvals where e2.EvalEndID == 2 select e2.CallCount).FirstOrDefault(); int masteredMaterial = (from e2 in endEvals where e2.EvalEndID == 3 select e2.CallCount).FirstOrDefault(); if (totalEndEvals > 0) { ViewBag.CompletedAssignment = Math.Round(((Convert.ToDecimal(completedAssignment) / Convert.ToDecimal(summary.TotalCalls)) * 100), 1); ViewBag.MasteredMaterial = Math.Round(((Convert.ToDecimal(masteredMaterial) / Convert.ToDecimal(summary.TotalCalls)) * 100), 1); var test = (completedAssignment / summary.TotalCalls) * 100; } else { ViewBag.CompletedAssignment = 0; ViewBag.MasteredMaterial = 0; } string weekdayTotalCalls = ""; string weekdayTotalTime = ""; DateTime reference = selectedStart; int totalDailyCalls; decimal totalDailyTime; AdminWeeklySummary callLogSummary; for (int i = 0; i < 28; i++) { if (reference.DayOfWeek != DayOfWeek.Saturday && reference.DayOfWeek != DayOfWeek.Sunday) { callLogSummary = CallLogs.GetAdminWeeklySummary(reference, reference.AddDays(1)); totalDailyCalls = callLogSummary.TotalCalls; totalDailyTime = (callLogSummary.TotalHours == null) ? 0 : (decimal)callLogSummary.TotalHours; weekdayTotalCalls += ",['" + reference.ToString("MM/dd") + "'," + totalDailyCalls + "]"; weekdayTotalTime += ",['" + reference.ToString("MM/dd") + "'," + totalDailyTime + "]"; } reference = reference.AddDays(1); } ViewBag.DailyTotalCalls = new HtmlString(weekdayTotalCalls); ViewBag.DailyTotalHours = new HtmlString(weekdayTotalTime); }
public ActionResult AdminDashboard(DateTime?startDate = null) { // TODO: get dates from date/time pickers DateTime varForStartAndEndDate = startDate ?? DateTime.Today; DateTime endDate = varForStartAndEndDate; DateTime selectedStart = varForStartAndEndDate.AddDays(-30); GetAllStudents(selectedStart, endDate); GetBeatMathCalls(selectedStart, endDate); GetCallsInForeignLanguage(selectedStart, endDate); GetCountyCountCalls(selectedStart, endDate); GetFeaturesUsed(selectedStart, endDate); GetNumberOfCallsPerSubject(selectedStart, endDate); GetAdminWeeklySummary(selectedStart, endDate); AdminWeeklySummary summary = CallLogs.GetAdminWeeklySummary(selectedStart, endDate); var sessions = CallLogs.GetSessionsByGrade(selectedStart, endDate).ToList(); var k = sessions.Single(s => s.Grade.ToLower() == "k"); sessions.Remove(k); sessions = sessions.OrderBy(s => int.Parse(s.Grade)).ToList(); sessions.Insert(0, k); return(View(sessions)); }