private async Task SelectAttendances(AttendanceTableViewModel attendances) { if (attendances == null) { return; } SelectedAttendance = null; var viewModel = new AttendanceDetailViewModel(attendances, _attendanceStore, _pageService); viewModel.AttendanceUpdated += (source, updateAttendance) => { attendances.Id = updateAttendance.id; attendances.StudentID = updateAttendance.studentID; attendances.ModuleID = updateAttendance.moduleID; attendances.Present = updateAttendance.present; attendances.Late = updateAttendance.late; attendances.Absent = updateAttendance.absent; attendances.Excused = updateAttendance.excused; attendances.Date = updateAttendance.date; }; await _pageService.PushModalAsync(new AttendanceDetailPage(viewModel)); }
private async Task DeleteAttendances(AttendanceTableViewModel attendance) { var a = ""; if (await _pageService.DisplayAlert("Warning", $"Are you sure you want to delete{attendance.StudentID}?", "Yes", "No")) { Attendances.Remove(attendance); var userAttendance = await _attendanceStore.GetAttendance(attendance.Id); await _attendanceStore.DeleteAttendance(userAttendance); } }
public AttendanceDetailViewModel(AttendanceTableViewModel viewModel, IAttendance attendanceStore, IPageService pageService) { if (viewModel == null) { throw new ArgumentNullException(nameof(viewModel)); } _pageService = pageService; _attendanceStore = attendanceStore; SaveCommand = new Command(async() => await Save()); Attendance = new Attendance { id = viewModel.Id, studentID = viewModel.StudentID, moduleID = viewModel.ModuleID, date = viewModel.Date, present = viewModel.Present, late = viewModel.Late, absent = viewModel.Absent, excused = viewModel.Excused }; }