public async void Get() { var jData = await DataService.Get($"Vaccine/{Child?.Id}"); if (jData == "ConnectionError") { StandardMessagesDisplay.NoConnectionToast(); } else if (jData == "null") { StandardMessagesDisplay.NoDataDisplayMessage(); } else if (jData == "Error") { StandardMessagesDisplay.Error(); } else if (jData == "ErrorTracked") { StandardMessagesDisplay.ErrorTracked(); } else { try { var data = JsonConvert.DeserializeObject <Dictionary <string, VaccineModel> >(jData); if (data != null) { foreach (KeyValuePair <string, VaccineModel> item in data) { VaccineList?.Add( new VaccineModel { Id = item.Value.Id, RegisteredBy = item.Value.RegisteredBy, VaccinePeriod = item.Value.VaccinePeriod, VaccineStatus = item.Value.VaccineStatus, FId = item.Key } ); } } DateTime VaccinePeriod = VaccineList.OrderBy(x => x.VaccinePeriod).LastOrDefault().VaccinePeriod; if (VaccinePeriodValidator.IsPeriodAvailable(VaccinePeriod)) { CurrentVaccine = VaccineList.OrderBy(x => x.VaccinePeriod).LastOrDefault(); } } catch (Exception ex) { Crashes.TrackError(ex); StandardMessagesDisplay.InputToast(ex.Message); } } }
public void VaccinePeriodValidatorTest() { // Arrange DateTime currentPeriod = new(2021, 8, 26); // Act bool result = VaccinePeriodValidator.IsPeriodAvailable(currentPeriod); // Assert Assert.IsTrue(result); }
private async void Post(object obj) { if (Vaccine != null) { if (VaccinePeriodValidator.IsPeriodAvailable(Vaccine.VaccinePeriod)) { // if condition to validate that child haven't eat vaccine Vaccine.Id = Guid.NewGuid(); Vaccine.RegisteredBy = Guid.Parse(Preferences.Get("UserId", "")); var time = DateTime.Now; DateTime dateTime = new DateTime(Vaccine.VaccinePeriod.Year, Vaccine.VaccinePeriod.Month, Vaccine.VaccinePeriod.Day, time.Hour, time.Minute, time.Second, DateTimeKind.Utc); Vaccine.VaccinePeriod = dateTime; var jData = JsonConvert.SerializeObject(Vaccine); string postResponse = await DataService.Post(jData, $"Vaccine/{Child.Id}"); if (postResponse == "ConnectionError") { StandardMessagesDisplay.NoConnectionToast(); } else if (postResponse == "Error") { StandardMessagesDisplay.Error(); } else if (postResponse == "ErrorTracked") { StandardMessagesDisplay.ErrorTracked(); } else { StandardMessagesDisplay.AddDisplayMessage(Vaccine.VaccineStatus); var route = ".."; await Shell.Current.GoToAsync(route); } } else { StandardMessagesDisplay.PeriodNotAvailable(); } } }