private void MakeAppointment() { SlobodniTermini selektovanTermin = (SlobodniTermini)PrikazSlobodnihTermina.SelectedItem; String d = date.Text; String t = selektovanTermin.AvailableTimes; DateTime start = DateTime.Parse(d + " " + t); AppointmentType tipt; if (selektovanTermin.Ljekar.doctorType.Equals(DoctorType.generalPractitioner)) { tipt = AppointmentType.generalPractitionerCheckup; } else if (selektovanTermin.Ljekar.doctorType.Equals(DoctorType.surgeon)) { tipt = AppointmentType.operation; } else { tipt = AppointmentType.specialistCheckup; } int id = _appointmentController.GetAll().Count + 1; DateTime end = start.AddMinutes(trajanjePregleda); Room prvaDostupnaProstorija = GetAvailableRoom(start, end); Appointment appointment = new Appointment(id, start, trajanjePregleda, tipt, AppointmentStatus.scheduled, parent.Patient, selektovanTermin.Ljekar, prvaDostupnaProstorija); _appointmentController.Add(appointment); PatientExaminesAppointmentPage ptp = new PatientExaminesAppointmentPage(parent); updateVisibility(); parent.startWindow.Content = ptp; ptp.updateTable(); }
//private string _selectedTrainer = ; //public string SelectedDepartment //{ // get { return _selectedDepartment; } // set // { // _selectedDepartment = value; // OnPropertyChanged(); // } //} public async void Rezervisi(int polaznikId) { List <RezervacijaTrenera> listaRezervacija = await _rezervacijaService.Get <List <Model.RezervacijaTrenera> >(); bool var1 = false; bool var2 = false; try { if (SelectedTrener == null || SelectedTermin == null) { await Application.Current.MainPage.DisplayAlert("Greska", "Niste unijeli sva polja", "OK"); Application.Current.MainPage = new PolaznikRezervacijaTreneraPage(polaznikId); } else { foreach (var x in listaRezervacija) { SlobodniTermini termin = await _terminiService.GetById <Model.SlobodniTermini>(x.SlobodniTerminiID); if (x.PolaznikID == polaznikId && SelectedTrener.TrenerId == x.TrenerID && SelectedTermin.Termin == termin.Termin) { await Application.Current.MainPage.DisplayAlert("Greska", "Odabrani termin ste vec rezervisali sa datim trenerom. Molimo odaberite drugi termin", "OK"); var1 = true; //Application.Current.MainPage = new PolaznikRezervacijaTreneraPage(polaznikId); break; } else if (SelectedTrener.TrenerId == x.TrenerID && SelectedTermin.Termin == termin.Termin) { var2 = true; await Application.Current.MainPage.DisplayAlert("Greska", "Odabrani trener je u datom terminu zauzet. Odaberite novog trenera ili novi termin", "OK"); // Application.Current.MainPage = new PolaznikRezervacijaTreneraPage(polaznikId); break; } } if (var1 == false && var2 == false) { RezervacijaTreneraInsertRequest request = new RezervacijaTreneraInsertRequest() { TrenerID = SelectedTrener.TrenerId, PolaznikID = polaznikId, SlobodniTerminiID = SelectedTermin.SlobodniTerminiID }; await _rezervacijaService.Insert <Model.RezervacijaTrenera>(request); await Application.Current.MainPage.DisplayAlert("", "Rezervacija uspješna", "OK"); Application.Current.MainPage = new PolaznikMainPage(polaznikId); } else { Application.Current.MainPage = new PolaznikRezervacijaTreneraPage(polaznikId); } } } catch (Exception ex) { await Application.Current.MainPage.DisplayAlert("Greska", ex.Message, "OK"); Application.Current.MainPage = new PolaznikMainPage(polaznikId); } }