public async Task <IActionResult> GetAttendanceToDisplay(TutorAttendanceDtoForDisplay model) { var responseUsers = await _repo.GetUsersForAttendance(model.subjectId, model.className); _response = await _repo.GetAttendanceToDisplay(responseUsers.Data, model); return(Ok(_response)); }
public async Task <ServiceResponse <object> > GetAttendanceToDisplay(List <UsersForAttendanceListDto> list, TutorAttendanceDtoForDisplay model) { //OnInIt(); DateTime DTdate = DateTime.ParseExact(model.date, "MM/dd/yyyy", null); var ToReturn = (from user in list join attendance in _context.TutorAttendances on user.StudentId equals attendance.StudentId where attendance.CreatedDatetime.Date == DTdate.Date select new TutorAttendanceDtoForList { Id = attendance.Id, StudentId = attendance.StudentId, SubjectId = Convert.ToInt32(attendance.SubjectId), FullName = user.FullName, CreatedDatetime = DateFormat.ToDate(attendance.CreatedDatetime.ToString()), Present = attendance.Present, Absent = attendance.Absent, Late = attendance.Late, Comments = attendance.Comments, AbsentCount = user.AbsentCount, LateCount = user.LateCount, PresentCount = user.PresentCount, Photos = user.Photos }).ToList(); ToReturn.AddRange(list.Where(m => !ToReturn.Select(m => m.StudentId).Contains(m.StudentId)).Select(o => new TutorAttendanceDtoForList { StudentId = o.StudentId, SubjectId = o.SubjectId, FullName = o.FullName, CreatedDatetime = "", Present = false, Absent = false, Late = false, Comments = "", AbsentCount = o.AbsentCount, LateCount = o.LateCount, PresentCount = o.PresentCount, Photos = o.Photos }).ToList()); _serviceResponse.Data = ToReturn; _serviceResponse.Success = true; return(_serviceResponse); }