private void button11_Click(object sender, EventArgs e) { ISession s = DataLayer.GetSession(); Pacijent pac = s.Get <Pacijent>("0000"); Specijalista sp = new Specijalista() { Datum_rodjenja = new DateTime(1950, 5, 5), Ime = "ORM", Prezime = "TEST", Jmbg = "testorm", Srednje_slovo = "a", Titula = "aaa" }; Bolnica b = new Bolnica() { Adresa = "test", Ime = "test", Lokacija = "test", Mbr = "1", Opstina = "22" }; b.Specijaliste.Add(sp); sp.RadiUBolnici = b; TerminBolnica tb = new TerminBolnica() { Datum = new DateTime(2018, 1, 1), LSpecijalista = sp, Napomena = "aa", Pacijent = pac, Vreme = 1200 }; pac.TerminiBolnica.Add(tb); sp.Termini.Add(tb); s.Save(b); s.Flush(); s.Close(); }
private bool MakeAnApointment(int time, string napomena, SpecijalistaKC specijalista_oracle) { IList <Pregled> zakazaniPregledi = oracle_session_local.QueryOver <Pregled>().List <Pregled>(); foreach (Pregled p in zakazaniPregledi) { if (p.Datum.Date == metroDateTime1.Value.Date && p.Vreme == time) { return(false); //zakazan u medjuvremenu } } PacijentKlinickogCentra pkc = oracle_session_local.QueryOver <PacijentKlinickogCentra>().Where(x => x.JMBG == pacijent_local.Jmbg).SingleOrDefault <PacijentKlinickogCentra>(); if (pkc == null) //nema ga pacijent u evidenciji KC, treba da se unese { DomZdravljaOracle dz = new DomZdravljaOracle() { Mbr = pacijent_local.Lekar.RadiUDomuZdravlja.Mbr, Adresa = pacijent_local.Lekar.RadiUDomuZdravlja.Adresa, Ime = pacijent_local.Lekar.RadiUDomuZdravlja.Ime, Lokacija = pacijent_local.Lekar.RadiUDomuZdravlja.Lokacija, Opstina = pacijent_local.Lekar.RadiUDomuZdravlja.Opstina }; IzabraniLekarOracle il = new IzabraniLekarOracle() { Jmbg = pacijent_local.Lekar.Jmbg, Adresa = "/", DatumRodjenja = pacijent_local.Lekar.Datum_rodjenja, Ime = pacijent_local.Lekar.Ime, DomZdravlja = dz, Prezime = pacijent_local.Lekar.Prezime, Password = "******" }; dz.Lekari.Add(il); oracle_session_local.SaveOrUpdate(dz); oracle_session_local.Flush(); //snimljeni DZ i IL u ORACLE PacijentKlinickogCentra pkdodaj = new PacijentKlinickogCentra() { Adresa = "/", BracniStatus = "/", DatumRodjenja = pacijent_local.Datum_rodjenja, Ime = pacijent_local.Ime, JMBG = pacijent_local.Jmbg, Pol = "/", Prezime = pacijent_local.Prezime }; Pregled pregled = new Pregled() { Datum = metroDateTime1.Value, IdIzabranogLekara = il.Jmbg, Pacijent = pkdodaj, Prostorija = specijalista_local.BrojOrdinacije, Specijalista = specijalista_local, Vreme = time }; oracle_session_local.Save(pkdodaj); oracle_session_local.Flush(); oracle_session_local.Save(pregled); oracle_session_local.Flush(); } else { IzabraniLekarOracle il = oracle_session_local.QueryOver <IzabraniLekarOracle>().Where(x => x.Jmbg == pacijent_local.Lekar.Jmbg).SingleOrDefault <IzabraniLekarOracle>(); if (il == null) { DomZdravljaOracle dz = new DomZdravljaOracle() { Mbr = pacijent_local.Lekar.RadiUDomuZdravlja.Mbr, Adresa = pacijent_local.Lekar.RadiUDomuZdravlja.Adresa, Ime = pacijent_local.Lekar.RadiUDomuZdravlja.Ime, Lokacija = pacijent_local.Lekar.RadiUDomuZdravlja.Lokacija, Opstina = pacijent_local.Lekar.RadiUDomuZdravlja.Opstina }; IzabraniLekarOracle iz = new IzabraniLekarOracle() { Jmbg = pacijent_local.Lekar.Jmbg, Adresa = "/", DatumRodjenja = pacijent_local.Lekar.Datum_rodjenja, Ime = pacijent_local.Lekar.Ime, DomZdravlja = dz, Prezime = pacijent_local.Lekar.Prezime }; dz.Lekari.Add(iz); oracle_session_local.SaveOrUpdate(dz); oracle_session_local.Flush(); } Pregled pregled = new Pregled() { Datum = metroDateTime1.Value, IdIzabranogLekara = il.Jmbg, Pacijent = pkc, Prostorija = specijalista_local.BrojOrdinacije, Specijalista = specijalista_local, Vreme = time }; oracle_session_local.Save(pregled); oracle_session_local.Flush(); } //termini i bolnica Bolnica b = new Bolnica() { Mbr = specijalista_local.Klinika.Id.ToString(), Ime = specijalista_local.Klinika.Naziv, Adresa = specijalista_local.Klinika.Lokacija, Opstina = "/", Lokacija = "/", }; Specijalista spec = new Specijalista() { Ime = specijalista_local.Ime, Datum_rodjenja = specijalista_local.DatumRodjenja, Jmbg = specijalista_local.JMBG, Prezime = specijalista_local.Prezime, Srednje_slovo = "/", Titula = "/", }; if (!b.Specijaliste.Contains(spec)) { b.Specijaliste.Add(spec); } spec.RadiUBolnici = b; mysql_session_local.SaveOrUpdate(b); mysql_session_local.Flush(); TerminBolnica t = new TerminBolnica() { LSpecijalista = spec, Datum = metroDateTime1.Value, Napomena = napomena, Pacijent = pacijent_local, Vreme = time }; mysql_session_local.Save(t); mysql_session_local.Flush(); oracle_session_local.Flush(); oracle_session_local.Refresh(specijalista_local); RefreshControls(specijalista_local); return(true); }