private void uiZavrsi_Click(object sender, EventArgs e) { using (var db = new MazaEntities()) { if (vlasnik == null) { Vlasnik vlasnik = new Vlasnik { ime = uiImeVlasnika.Text, prezime = uiPrezimeVlasnika.Text, adresa_stavnovanja = uiAdresa.Text, broj_telefona1 = uiBrojMobitela.Text, broj_telefona2 = uiBrojTelefona.Text, email = uiEmail.Text }; db.Vlasnik.Add(vlasnik); db.SaveChanges(); } else { db.Vlasnik.Attach(vlasnik); vlasnik.ime = uiImeVlasnika.Text; vlasnik.prezime = uiPrezimeVlasnika.Text; vlasnik.adresa_stavnovanja = uiAdresa.Text; vlasnik.broj_telefona1 = uiBrojMobitela.Text; vlasnik.broj_telefona2 = uiBrojTelefona.Text; vlasnik.email = uiEmail.Text; db.SaveChanges(); } } this.Close(); }
/// <summary> /// Ažurira postojećeg, odnosno dodaje novog vlasnika u bazu podataka /// </summary> public void UrediVlasnika() { using (var db = new MazaEntities()) { if (vlasnik == null) { noviVlasnik = new Vlasnik { ime = uiImeVlasnika.Text, prezime = uiPrezimeVlasnika.Text, adresa_stavnovanja = uiAdresa.Text, broj_telefona1 = uiBrojMobitela.Text, broj_telefona2 = uiBrojTelefona.Text, email = uiEmail.Text }; db.Vlasnik.Add(noviVlasnik); db.SaveChanges(); } else { db.Vlasnik.Attach(vlasnik); vlasnik.ime = uiImeVlasnika.Text; vlasnik.prezime = uiPrezimeVlasnika.Text; vlasnik.adresa_stavnovanja = uiAdresa.Text; vlasnik.broj_telefona1 = uiBrojMobitela.Text; vlasnik.broj_telefona2 = uiBrojTelefona.Text; vlasnik.email = uiEmail.Text; db.SaveChanges(); } } this.Close(); }
/// <summary> /// Zatvara trenutačno aktivnu kontrolu te ju ažurira u stanje obavljene kontrole ukoliko korisnik tako odabere i ukoliko je korisnik zadužen za tu kontrolu /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void uiActionZatvoriDetaljeKontrole_Click(object sender, EventArgs e) { if (this.kontrola.ID_veterinar == PrijavljeniVeterinar.Veterinar.ID_veterinar) { if (!this.status) { if (MessageBox.Show("Da li ste stvarno završili sa kontrolom?", "Jeste li sigurni?", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes) { using (var db = new MazaEntities()) { db.Kontrola.Attach(this.kontrola); this.kontrola.status = "Obavljen"; db.SaveChanges(); } this.Close(); } } else { this.Close(); } } else { this.Close(); } }
private void uiIzbrisiVlasnika_Click(object sender, EventArgs e) { Vlasnik selektiraniVlasnik = vlasnikBindingSource.Current as Vlasnik; if (selektiraniVlasnik != null) { if (MessageBox.Show("Da li ste sigurni?", "Upozorenje!", MessageBoxButtons.YesNo) == System.Windows.Forms.DialogResult.Yes) { using (var db = new MazaEntities()) { db.Vlasnik.Attach(selektiraniVlasnik); if (selektiraniVlasnik.Zivotinja.Count == 0) { db.Vlasnik.Remove(selektiraniVlasnik); db.SaveChanges(); } else { MessageBox.Show("Nije moguće obrisati vlasnika jer sadrži životinje, prvo obriši životinje"); } } } PopuniVlasnike(); } }
/// <summary> /// Ovisno o statusu kontrole dodaje novo cjepljenje ili ažurira postojeće /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void uiActionDodajCjepivo_Click(object sender, EventArgs e) { using (var db = new MazaEntities()) { if (this.cjepivo == null) { Cjepivo cjepivo = uiActionOdaberiCjepivo.SelectedItem as Cjepivo; db.Cjepivo.Attach(cjepivo); db.Kontrola.Attach(this.kontrola); this.kontrola.Cjepivo.Add(cjepivo); cjepivo.Kontrola.Add(this.kontrola); this.cjepivo = cjepivo; this.DialogResult = DialogResult.OK; } else { Cjepivo cjepivo = uiActionOdaberiCjepivo.SelectedItem as Cjepivo; db.Cjepivo.Attach(this.cjepivo); db.Kontrola.Attach(this.kontrola); this.kontrola.Cjepivo.Remove(this.cjepivo); db.Cjepivo.Attach(cjepivo); this.kontrola.Cjepivo.Add(cjepivo); } db.SaveChanges(); } this.Close(); }
/// <summary> /// Dodavanje nove stavke operacije ili ažuriranje postojeće /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void uiActionDodajOperaciju_Click(object sender, EventArgs e) { if (uiVrstaZahvataUnos.Text == "") { MessageBox.Show("Potrebno je unesti vrstu zahvata operacije."); return; } using (var db = new MazaEntities()) { if (this.operacija == null) { db.Kontrola.Attach(this.kontrola); TimeSpan vrijemeSati = TimeSpan.Parse(uiTrajanjeZahvataUnos.Value.ToLongTimeString()); this.operacija = new Operacija { vrsta_zahvata = uiVrstaZahvataUnos.Text, datum_zahvata = DateTime.Parse(uiDatumZahvataTekst.Text), ID_kontrola = this.kontrola.ID_kontrola, napomena = uiNapomenaUnos.Text, trajanje_zahtjeva = vrijemeSati }; db.Operacija.Add(this.operacija); this.DialogResult = DialogResult.OK; } else { db.Kontrola.Attach(this.kontrola); db.Operacija.Attach(this.operacija); TimeSpan vrijemeSati = TimeSpan.Parse(uiTrajanjeZahvataUnos.Value.ToLongTimeString()); this.operacija.vrsta_zahvata = uiVrstaZahvataUnos.Text; this.operacija.datum_zahvata = DateTime.Parse(uiDatumZahvataTekst.Text); this.operacija.ID_kontrola = this.kontrola.ID_kontrola; this.operacija.napomena = uiNapomenaUnos.Text; this.operacija.trajanje_zahtjeva = vrijemeSati; } db.SaveChanges(); } this.Close(); }
/// <summary> /// Pohranjuje novu dijagnozu ili ažurira postojeću /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void uiActionDodajDijagnozu_Click(object sender, EventArgs e) { if (uiSimptomi.Text == "") { MessageBox.Show("Potrebno je unesti simptome dijagnoze."); return; } if (uiTerapija.Text == "") { MessageBox.Show("Potrebno je unesti terapiju za dijagnozu."); return; } //Nova dijagnoza if (this.dijagnoza == null) { using (var db = new MazaEntities()) { Bolest bolest = uiActionOdaberiBolest.SelectedItem as Bolest; db.Bolest.Attach(bolest); db.Kontrola.Attach(this.kontrola); dijagnoza = new Dijagnoza { simptomi = uiSimptomi.Text, terapija = uiTerapija.Text, napomena = uiNapomena.Text, ID_kontrola = this.kontrola.ID_kontrola, ID_bolest = bolest.ID_bolest }; db.Dijagnoza.Add(dijagnoza); int idDijagnoza = dijagnoza.ID_dijagnoza; for (int i = 0; i < uiPropisaniLijekovi.Items.Count; i++) { Lijek lijek = uiPropisaniLijekovi.Items[i] as Lijek; db.Lijek.Attach(lijek); PropisaniLijek propisaniLijek = new PropisaniLijek { ID_dijagnoza = idDijagnoza, ID_lijek = lijek.ID_lijek, napomena = listaNapomenaZaLijekove[i] }; db.PropisaniLijek.Add(propisaniLijek); } db.SaveChanges(); } this.DialogResult = DialogResult.OK; } else { //Ažuriraj postojeću dijagnozu using (var db = new MazaEntities()) { Bolest bolest = uiActionOdaberiBolest.SelectedItem as Bolest; db.Dijagnoza.Attach(this.dijagnoza); this.dijagnoza.simptomi = uiSimptomi.Text; this.dijagnoza.terapija = uiTerapija.Text; this.dijagnoza.napomena = uiNapomena.Text; this.dijagnoza.ID_kontrola = this.kontrola.ID_kontrola; this.dijagnoza.ID_bolest = bolest.ID_bolest; db.SaveChanges(); } Thread dretvaZaAzuriranje = new Thread(new ThreadStart(DodajLijekove)); dretvaZaAzuriranje.Start(); } this.Close(); }
/// <summary> /// Dodaje odabrane lijekove u bazu podataka /// </summary> public void DodajLijekove() { using (var db = new MazaEntities()) { Bolest bolest = uiActionOdaberiBolest.SelectedItem as Bolest; db.Bolest.Attach(bolest); db.Kontrola.Attach(this.kontrola); db.Dijagnoza.Attach(this.dijagnoza); //Ažuriranje //Dohvaća stari popis lijekova List <Lijek> listaLijekova = new List <Lijek>(); foreach (var propisaniLijek in db.PropisaniLijek) { Lijek lijek = null; lijek = db.Lijek.Where(s => s.ID_lijek == propisaniLijek.ID_lijek && propisaniLijek.ID_dijagnoza == this.dijagnoza.ID_dijagnoza).FirstOrDefault(); if (lijek != null) { listaLijekova.Add(lijek); } } //Provjerava da li se koji novi lijek podudara sa starim lijekovima foreach (Lijek lijekIzListe in listaLijekova) { bool pronadjen = false; PropisaniLijek propisaniLijek = null; for (int i = 0; i < uiPropisaniLijekovi.Items.Count; i++) { Lijek lijek = uiPropisaniLijekovi.Items[i] as Lijek; if (lijekIzListe.ID_lijek == lijek.ID_lijek) { propisaniLijek = db.PropisaniLijek.Where(s => s.ID_lijek == lijek.ID_lijek && s.ID_dijagnoza == this.dijagnoza.ID_dijagnoza).FirstOrDefault(); db.PropisaniLijek.Attach(propisaniLijek); propisaniLijek.napomena = listaNapomenaZaLijekove[i]; //Pamti da je ažurirana napomena za pronađeni lijek listaNapomenaZaLijekove[i] = "#343"; pronadjen = true; } } //Ako lijek nije pronađen onda ga makni iz baze if (!pronadjen) { propisaniLijek = db.PropisaniLijek.Where(s => s.ID_lijek == lijekIzListe.ID_lijek && s.ID_dijagnoza == this.dijagnoza.ID_dijagnoza).FirstOrDefault(); db.PropisaniLijek.Attach(propisaniLijek); db.PropisaniLijek.Remove(propisaniLijek); } } //Dodavanje novih lijekova for (int i = 0; i < uiPropisaniLijekovi.Items.Count; i++) { Lijek lijek = uiPropisaniLijekovi.Items[i] as Lijek; //Dodaj samo one lijekove koji nisu bili ažurirani if (listaNapomenaZaLijekove[i] != "#343") { PropisaniLijek propisaniLijek = new PropisaniLijek { ID_dijagnoza = this.dijagnoza.ID_dijagnoza, ID_lijek = lijek.ID_lijek, napomena = listaNapomenaZaLijekove[i] }; db.PropisaniLijek.Add(propisaniLijek); } } db.SaveChanges(); } }
/// <summary> /// Unosi / Ažurira kontrolu na temelju unesenih podataka /// </summary> private void UnesiKontrolu() { string status = ""; if (uiOdabirStatusObavljen.Checked) { status = "Obavljen"; } else { status = "Nije obavljen"; } // Dodaj novu kontrolu u bazu podataka using (var db = new MazaEntities()) { KeyValuePair <int, string> oznaceniVeterinar = (KeyValuePair <int, string>)uiOdabirVeterinar.SelectedItem; Veterinar veterinar = db.Veterinar.Where(v => v.ID_veterinar == oznaceniVeterinar.Key).FirstOrDefault(); if (this.kontrola == null) { Zivotinja zivotinja = uiOdabirZivotinja.SelectedItem as Zivotinja; db.Zivotinja.Attach(zivotinja); db.Veterinar.Attach(veterinar); Kontrola kontrola = new Kontrola { ID_veterinar = veterinar.ID_veterinar, ID_zivotinja = zivotinja.ID_zivotinja, datum_kontrole = uiOdabirDatum.Value, status = status, opis = uiUnosOpis.Text, Zivotinja = zivotinja, Veterinar = veterinar }; db.Kontrola.Add(kontrola); db.SaveChanges(); } // Ažurira postojecu kontrolu else { db.Kontrola.Attach(kontrola); Zivotinja zivotinja = uiOdabirZivotinja.SelectedItem as Zivotinja; db.Zivotinja.Attach(zivotinja); db.Veterinar.Attach(veterinar); kontrola.ID_veterinar = veterinar.ID_veterinar; kontrola.ID_zivotinja = zivotinja.ID_zivotinja; kontrola.datum_kontrole = uiOdabirDatum.Value; kontrola.status = status; kontrola.opis = uiUnosOpis.Text; kontrola.Zivotinja = zivotinja; kontrola.Veterinar = veterinar; db.SaveChanges(); } } this.Close(); }