public RecommendAppointment() { InitializeComponent(); this.DataContext = this; doctorController = new DoctorController(); appointmentController = new AppointmentController(); operationController = new OperationController(); patientController = new PatientController(); List <ListaDoktoriCeloIme> mojaLista = new List <ListaDoktoriCeloIme>(); listAppointments = appointmentController.GetAll(); listPatients = new List <PatientUser>(); listPatients = patientController.GetAll(); listDoctors = doctorController.GetAll(); listOperations = operationController.GetAll(); foreach (DoctorUser d in listDoctors) { if (d.isSpecialist == false) { StringBuilder l = new StringBuilder(); l.Append(d.firstName + " "); l.Append(d.secondName + " "); l.Append(d.id); ListaDoktoriCeloIme a = new ListaDoktoriCeloIme(); a.DoctorName = l.ToString(); mojaLista.Add(a); } } doctorCombo.ItemsSource = mojaLista; }
private void confirmButton_Click(object sender, RoutedEventArgs e) { String priority = ""; ListaDoktoriCeloIme name = (ListaDoktoriCeloIme)doctorCombo.SelectedValue; if (name == null || Date_TextBox.Text.Equals("") || !Regex.Match(Date_TextBox.Text, @"^([0-9]{2}/[0-9]{2}/[0-9]{4})$").Success || Date_TextBox2.Text.Equals("") || !Regex.Match(Date_TextBox2.Text, @"^([0-9]{2}/[0-9]{2}/[0-9]{4})$").Success) { doctorCombo.Focus(); MessageBox.Show("Please fill all fields corectlly!", "Error", MessageBoxButton.OK, MessageBoxImage.Error); return; } else { String imeDr = name.DoctorName; String[] delovi = imeDr.Split(' '); int idDoktor = int.Parse(delovi[2]); DoctorUser doktorPregled = doctorController.GetByid(idDoktor); if (rb1Date.IsChecked == true) { priority = "DATE"; } else { priority = "DOCTOR"; } patient = patientController.GetByid(int.Parse(myProperty)); String datum = Date_TextBox.Text; String[] delovi2 = datum.Split('/'); int mesec = int.Parse(delovi2[1]); int dan = int.Parse(delovi2[0]); int godina = int.Parse(delovi2[2]); DateTime dt1 = new DateTime(godina, mesec, dan, 0, 0, 0); String datum2 = Date_TextBox2.Text; String[] delovi3 = datum2.Split('/'); int mesec2 = int.Parse(delovi3[1]); int dan2 = int.Parse(delovi3[0]); int godina2 = int.Parse(delovi3[2]); DateTime dt2 = new DateTime(godina2, mesec2, dan2, 0, 0, 0); DateTime dtSad = DateTime.Now; if (dtSad > dt1 || dtSad > dt2) { MessageBox.Show("Please enter dates that are yet to come.", "Error", MessageBoxButton.OK, MessageBoxImage.Error); return; } if (dt1 > dt2) { MessageBox.Show("Please enter dates that are yet to come.", "Error", MessageBoxButton.OK, MessageBoxImage.Error); return; } String ime = doktorPregled.firstName; DoctorAppointment pronadjesApp = appointmentController.RecommendAnAppointment(doktorPregled, dt1, dt2, patient); if (pronadjesApp == null) { if (priority.Equals("DOCTOR")) { DateTime oduzimam = dt1.AddDays(-3); DateTime dodajem = dt2.AddDays(3); pronadjesApp = appointmentController.RecommendAnAppointment(doktorPregled, oduzimam, dodajem, patient); } else if (priority.Equals("DATE")) { pronadjesApp = appointmentController.recommenedAnAppointmentDatePriority(dt1, dt2, patient); } else { } } String imeDoktora = doktorPregled.firstName + " " + doktorPregled.secondName; if (pronadjesApp == null) { MessageBox.Show("Sorry\nAppointment is not found.", "Error", MessageBoxButton.OK, MessageBoxImage.Error); } else { DoctorUser doktorIme = pronadjesApp.doctor; string sMessageBoxText = "Do you want to schedule this appointment ? \n" + pronadjesApp.date + "\n" + pronadjesApp.time + "\n" + doktorIme.firstName + " " + doktorIme.secondName; string sCaption = "New doctor appointment"; MessageBoxButton btnMessageBox = MessageBoxButton.YesNoCancel; MessageBoxImage icnMessageBox = MessageBoxImage.Warning; MessageBoxResult rsltMessageBox = MessageBox.Show(sMessageBoxText, sCaption, btnMessageBox, icnMessageBox); int id = 0; switch (rsltMessageBox) { case MessageBoxResult.Yes: id = getid(); pronadjesApp.id = id; appointmentController.New(pronadjesApp, null); MessageBox.Show( "Appointment is successfully scheduled!"); break; case MessageBoxResult.No: break; case MessageBoxResult.Cancel: break; } } } }