public bool IzmijeniBolnicu(BolnicaIzmijeniDTO bolnicaDTO) { log.Info("Podaci o bolnici su izmijenjeni"); bool uspjesno = dataServisProxy.IzmijeniBolnicu(sesija, bolnicaDTO); return(uspjesno); }
public void SacuvajBolnicu() { if (TrenutnaBolnica == null) { BolnicaKreirajDTO kreiranaBolnica = new BolnicaKreirajDTO() { NazivBolnice = NazivBolnice, VrstaBol = IzabranaVrstaBolnice, BrojLjekara = BrojLjekara, BrojOdjeljenja = BrojOdjeljenja }; TrenutnaBolnica = KreirajKomunikaciju.Komunikacija.KreirajBolnicu(kreiranaBolnica); } BolnicaIzmijeniDTO izmijeniBolnicuDTO = new BolnicaIzmijeniDTO() { NoviNazivBolnice = NazivBolnice, IdBolnice = TrenutnaBolnica.IdBolnice, NoviBrojLjekara = BrojLjekara, NoviBrojOdjeljenja = BrojOdjeljenja, NovaVrstaBol = IzabranaVrstaBolnice, NovaListaLjekara = ListaLjekaraIzTabele.ToList(), NovaListaPacijenata = ListaPacijenataIzTabele.ToList(), Verzija = TrenutnaBolnica.Verzija, }; bool uspjesnoIzmijenjen = KreirajKomunikaciju.Komunikacija.IzmijeniBolnicu(izmijeniBolnicuDTO); if (!uspjesnoIzmijenjen) { MessageBoxResult dialogResult = MessageBox.Show("Bolnica je vec izmijenjena od strane drugog korisnika. Da li zelite pregaziti tudje izmjene", "Pregazi izmjene", MessageBoxButton.YesNoCancel, MessageBoxImage.Question); switch (dialogResult) { case MessageBoxResult.Yes: log.Warn("Pregazi tudje izmjene"); izmijeniBolnicuDTO.Azurirano = true; uspjesnoIzmijenjen = KreirajKomunikaciju.Komunikacija.IzmijeniBolnicu(izmijeniBolnicuDTO); break; case MessageBoxResult.Cancel: return; } } Roditelj.Close(); }
public bool IzmijeniBolnicu(Sesija sesija, BolnicaIzmijeniDTO bolnicaIzmijeniDTO) { try { SesijaManager.Instance.AutentifikacijaIzuzetak(sesija); Bolnica izmijenjenaBolnica = DbManager.Instance.VratiBolnicu(bolnicaIzmijeniDTO.IdBolnice); if (!bolnicaIzmijeniDTO.Azurirano && bolnicaIzmijeniDTO.Verzija != izmijenjenaBolnica.Verzija) { return(false); } if (bolnicaIzmijeniDTO.NoviNazivBolnice != null) { izmijenjenaBolnica.Naziv = bolnicaIzmijeniDTO.NoviNazivBolnice; } if (bolnicaIzmijeniDTO.NoviBrojLjekara >= 0) { izmijenjenaBolnica.BrojLjekara = bolnicaIzmijeniDTO.NoviBrojLjekara; } if (bolnicaIzmijeniDTO.NoviBrojOdjeljenja >= 0) { izmijenjenaBolnica.BrojOdjeljenja = bolnicaIzmijeniDTO.NoviBrojOdjeljenja; } if (bolnicaIzmijeniDTO.NovaVrstaBol.ToString() != "") { izmijenjenaBolnica.Vrsta = bolnicaIzmijeniDTO.NovaVrstaBol; } if (bolnicaIzmijeniDTO.NovaListaLjekara != null) { if (izmijenjenaBolnica.LjekariUBolnici != null) { DbManager.Instance.ObrisiLjekaraIzBolnice(izmijenjenaBolnica.IdBolnice); } foreach (var item in bolnicaIzmijeniDTO.NovaListaLjekara) { Ljekar ljekar = new Ljekar() { Ime = item.Ime, Odjeljenje = item.Odjeljenje, Prezime = item.Prezime, Specijalizacija = item.Specijalizacija, Titula = item.Titula }; izmijenjenaBolnica.LjekariUBolnici.Add(ljekar); } } if (bolnicaIzmijeniDTO.NovaListaPacijenata != null) { if (izmijenjenaBolnica.PacijentiUBolnici != null) { DbManager.Instance.ObrisiPacijentaIzBolnice(izmijenjenaBolnica.IdBolnice); } foreach (var item in bolnicaIzmijeniDTO.NovaListaPacijenata) { Pacijent pacijent = new Pacijent() { Ime = item.Ime, Prezime = item.Prezime, Jmbg = item.Jmbg }; izmijenjenaBolnica.PacijentiUBolnici.Add(pacijent); DbManager.Instance.SacuvajPromjene(); } } ++izmijenjenaBolnica.Verzija; DbManager.Instance.SacuvajPromjene(); log.Info("Bolnica sa id-em " + izmijenjenaBolnica.IdBolnice + " je izmijenjena"); Bolnica b = DbManager.Instance.VratiBolnicu(izmijenjenaBolnica.IdBolnice); return(true); } catch (FaultException <Izuzetak> ex) { Console.WriteLine("Greska: " + ex.Detail.Poruka); return(false); } }