async Task SyncHours() { if (!IsBusy) { Exception Error = null; Hours.Clear(); try { IsBusy = true; var Repository = new Repository(); var Items = await Repository.GetHours(); foreach (var Hour in Items) { Hours.Add(Hour.Hour); HoursAvaliable.Add(Hour); } } catch (Exception ex) { Error = ex; } finally { IsBusy = false; } if (Error != null) { await _pageDialogService.DisplayAlertAsync("Erro", Error.Message, "OK"); } return; } }
async Task SyncAvaliableHours() { await SyncSchedules(); var schedulesAz = Schedules; foreach (var item in schedulesAz) { var listItem = item as BarberSchedule; if (listItem.DateTime.Date.ToString("dd-MM-yyyy") == dayTapped.Date) { Temp.Add(listItem); } } await SyncHours(); int i = 0, index = 0; while (i < Temp.Count) { scheduleTemp = Temp.ElementAt <BarberSchedule>(i); var hora = scheduleTemp.DateTime.Hour; string horaTratada; if (hora < 10) { horaTratada = "0" + hora.ToString(); } else { horaTratada = hora.ToString(); } var minutos = scheduleTemp.DateTime.Minute.ToString(); if (minutos == "0") { minutos = "00"; } string horario = horaTratada + ":" + minutos; index = Hours.IndexOf(horario); if (index >= 0) { Hours.RemoveAt(index); HoursAvaliable.RemoveAt(index); } i++; } return; }