private void btnZapiszWizyte_Click(object sender, RoutedEventArgs e) { using (PrzychodniaProjectDBEntities db = new PrzychodniaProjectDBEntities()) { Lekarze lekarz = (Lekarze)grdUmawianieLekarzy.SelectedItem; Pacjenci pacjent = (Pacjenci)grdUmawianiePacjenci.SelectedItem; List <Choroby> choroba = (List <Choroby>)grdUmawianieChoroby.SelectedItems.OfType <Choroby>().ToList(); Wizyty wizyty = new Wizyty(); db.Lekarze.Attach(lekarz); lekarz.Wizyty.Add(wizyty); db.Pacjenci.Attach(pacjent); pacjent.Wizyty.Add(wizyty); wizyty.data_wizyty = WizytyDate.SelectedDate.Value; foreach (Choroby chr in choroba) { db.Choroby.Attach(chr); chr.Wizyty.Add(wizyty); } db.Wizyty.Add(wizyty); try { db.SaveChanges(); } catch (System.Data.Entity.Infrastructure.DbUpdateException ex) { MessageBox.Show("Wystąpił problem z zapisem do bazy , opis błędu : " + ex.InnerException.InnerException.Message); return; } MessageBox.Show("Informacja o wizycie dodana do bazy"); } }
/// <summary> /// Konstruktor dla edycji wprowadzonych wartości. /// </summary> /// <param name="lekarze">Pokazuje wszystkich lekarzy z listy Lekarzy.</param> /// <param name="choroby">Pokazuje wszystkie choroby z listy Chorób.</param> /// <param name="pacjenci">Pokazuje wszystkich pacjentów z listy Pacjentów.</param> /// <param name="wizyta">Odpowiada za pokazanie umówionych wizyt.</param> public NewWizyta(List <Lekarze> lekarze, List <Choroby> choroby, List <Pacjenci> pacjenci, Wizyty wizyta, List <Choroby> chorobyselected) { InitializeComponent(); PrepareWindowData(lekarze, choroby, pacjenci); this.wizyta = wizyta; nr_lekarzaComboBox.SelectedItem = lekarze.Where(ll => ll.nr_lekarza == wizyta.nr_lekarza).First(); pesel_pacjentaComboBox.SelectedItem = pacjenci.Where(pp => pp.pesel_pacjenta == wizyta.pesel_pacjenta).First(); data_wizytyDatePicker.SelectedDate = wizyta.data_wizyty; chorobyselected.ForEach(chrf => grdChorobyAddWizyty.SelectedItems.Add(chrf)); }
private void btnDeleteWizyty_Click(object sender, RoutedEventArgs e) { using (PrzychodniaProjectDBEntities db = new PrzychodniaProjectDBEntities()) { Wizyty wizyta = (Wizyty)grdWizyty.CurrentItem; if (wizyta != null) { try { db.Entry(wizyta).State = EntityState.Deleted; db.SaveChanges(); } catch (System.Data.Entity.Infrastructure.DbUpdateException ex) { MessageBox.Show("Wystąpił problem z usunięciem z bazy , opis błędu : " + ex.InnerException.InnerException.Message); return; } } populateWizyty(); MessageBox.Show("Informacja o wizycie została usunięta z bazy"); } }
private void btnZapiszWizyty_Click(object sender, RoutedEventArgs e) { Wizyty wizyta; using (PrzychodniaProjectDBEntities db = new PrzychodniaProjectDBEntities()) { if (this.wizyta != null) { db.Wizyty.Attach(this.wizyta); wizyta = this.wizyta; wizyta.Choroby.Clear(); wizyta.data_wizyty = (DateTime)data_wizytyDatePicker.SelectedDate; wizyta.nr_lekarza = (nr_lekarzaComboBox.SelectedItem as Lekarze).nr_lekarza; wizyta.pesel_pacjenta = (pesel_pacjentaComboBox.SelectedItem as Pacjenci).pesel_pacjenta; foreach (Choroby chr in grdChorobyAddWizyty.SelectedItems) { db.Choroby.Attach(chr); chr.Wizyty.Add(wizyta); } } else { wizyta = new Wizyty { data_wizyty = (DateTime)data_wizytyDatePicker.SelectedDate, nr_lekarza = (nr_lekarzaComboBox.SelectedItem as Lekarze).nr_lekarza, pesel_pacjenta = (pesel_pacjentaComboBox.SelectedItem as Pacjenci).pesel_pacjenta }; foreach (Choroby chr in grdChorobyAddWizyty.SelectedItems) { db.Choroby.Attach(chr); chr.Wizyty.Add(wizyta); } } string msg; if (pesel_pacjentaComboBox != null && nr_lekarzaComboBox != null && data_wizytyDatePicker != null) { if (this.wizyta != null) { db.Entry(wizyta).State = EntityState.Modified; msg = "Informacja o wizycie została zmieniona w bazie"; } else { db.Wizyty.Add(wizyta); msg = "Informacja o wizycie dodana do bazy"; } } else { MessageBox.Show("Dane wizyty nie zostały w pełni wprowadzone"); this.DialogResult = false; return; } try { db.SaveChanges(); } catch (System.Data.Entity.Infrastructure.DbUpdateException ex) { MessageBox.Show("Wystąpił problem z zapisem do bazy , opis błędu : " + ex.InnerException.InnerException.Message); this.DialogResult = false; return; } MessageBox.Show(msg); this.DialogResult = true; this.Close(); } }