public async Task <IHttpActionResult> GetStudentAttendance(int id) { var model = await _studentAttendanceService.GetStudentAttendanceAsync(id); if (model == null) { return(NotFound()); } return(Ok(model)); }
public async Task <StudentDetailModel> GetStudentDetailAsync(int studentUsi, string recipientUniqueId, int recipientTypeId) { var student = await _studentRepository.GetStudentDetailAsync(studentUsi); if (student == null) { return(null); } // Add ABCs student.ImageUrl = await _imageUrlProvider.GetStudentImageUrlAsync(student.StudentUniqueId); student.Attendance = await _studentAttendanceService.GetStudentAttendanceAsync(student.StudentUsi); student.Behavior = await _studentBehaviorService.GetStudentBehaviorAsync(student.StudentUsi); student.CourseGrades = await _studentCourseGradesService.GetStudentCourseGradesAsync(student.StudentUsi); student.MissingAssignments = await _studentAssignmentService.GetStudentMissingAssignments(student.StudentUsi); student.Schedule = await _studentScheduleService.GetStudentScheduleAsync(student.StudentUsi); student.Assessment = await _studentAssessmentService.GetStudentAssessmentsAsync(student.StudentUsi); student.Programs = await _studentProgramService.GetStudentProgramsAsync(student.StudentUsi); student.Indicators = await _studentIndicatorService.GetStudentIndicatorsAsync(student.StudentUsi); student.SuccessTeamMembers = await _studentSuccessTeamService.GetStudentSuccessTeamAsync(student.StudentUsi, recipientUniqueId, recipientTypeId); student.OnTrackToGraduate = await _studentGraduationReadinessService.IsStudentOnTrackToGraduateAsync(student.StudentUsi); student.UnreadMessageCount = await _communicationsService.UnreadMessageCount(student.StudentUsi, recipientUniqueId, recipientTypeId, null, null); student.ExternalLinks = await _spotlightIntegrationsService.GetStudentExternalLinks(student.StudentUniqueId); student.StaarAssessmentHistory = await _studentAssessmentService.GetStudentStaarAssessmentHistoryAsync(student.StudentUsi); student.StudentDomainMastery = await _studentAssessmentService.GetStudentDomainMasteryAsync(student.StudentUsi); student.StudentGoals = await _studentGoalService.GetStudentGoals(student.StudentUsi); student.StudentAllAboutMe = await _studentAllAboutService.GetStudentAllAbout(student.StudentUsi); return(student); }
public async Task <StudentCalendar> GetStudentCalendar(int studentUsi) { StudentAttendance studentAttendance = await _studentAtttendanceRepository.GetStudentAttendanceAsync(studentUsi); var descriptors = _customParametersProvider.GetParameters().descriptors; var days = await _studentRepository.GetStudentCalendarDays(studentUsi); var calendar = new StudentCalendar(); calendar.InstructionalDays = days.Where(x => x.Event.Description.Contains(descriptors.instructionalDayDescriptorCodeValue)).ToList(); calendar.NonInstructionalDays = days.Where(x => x.Event.Description.Contains(descriptors.nonInstrunctionalDayDescriptorCodeValue)).ToList(); calendar.Holidays = days.Where(x => x.Event.Description.Contains(descriptors.holiDayDescriptorCodeValue)).ToList(); calendar.TeacherOnlyDays = days.Where(x => x.Event.Description.Contains(descriptors.teacherOnlyDayDescriptorCodeValue)).ToList(); calendar.AttendanceEventDays = new List <StudentCalendarDay>(); calendar.AttendanceEventDays.AddRange(studentAttendance.ExcusedAttendanceEvents.Select(x => new StudentCalendarDay { Date = x.DateOfEvent, Event = new StudentCalendarEvent { Name = x.EventCategory, Description = string.Format("{0}{1}", x.EventDescription, x.Reason != null ? ": " + x.Reason : "") } }).ToList()); calendar.AttendanceEventDays.AddRange(studentAttendance.UnexcusedAttendanceEvents.Select(x => new StudentCalendarDay { Date = x.DateOfEvent, Event = new StudentCalendarEvent { Name = x.EventCategory, Description = x.EventDescription } }).ToList()); calendar.AttendanceEventDays.AddRange(studentAttendance.TardyAttendanceEvents.Select(x => new StudentCalendarDay { Date = x.DateOfEvent, Event = new StudentCalendarEvent { Name = x.EventCategory, Description = x.EventDescription } }).ToList()); return(calendar); }