static void Main(string[] args) { //kontejnerska klinika_ Klinika klinika17818 = new Klinika(); NormalniPacijent n = new NormalniPacijent(); Karton karton17818_1 = new Karton(n); bool postojiPacijent = false, postojiKartonPacijenta = false; int izbor; do { Console.WriteLine("Dobro dosli!Odaberite jednu od opcija:\n" + "1.Registruj/Briši pacijenta\n" + "2.Prikaži raspored pregleda pacijenta\n" + "3.Kreiranje kartona pacijenta\n" + "4.Pretraga kartona pacijenta\n" + "5.Registruj novi pregled\n" + "6.Analiza sadržaja\n" + "7.Naplata\n" + "8.Izlaz"); izbor = Convert.ToInt32(Console.ReadLine()); switch (izbor) { case 1: Console.WriteLine("Zelite li dodati pacijenta ili brisati?\n" + "1-DODATI PACIJENTA\n" + "2-BRISATI PACIJENTA"); int BrisiPisi = Convert.ToInt32(Console.ReadLine()); if (BrisiPisi == 1) { Console.WriteLine("Da li se radi o hitnom slucaju?\n1-DA\n2-NE"); int izborHitnogSlucaja = Convert.ToInt32(Console.ReadLine()); if (izborHitnogSlucaja == 1) { Registruj(klinika17818, n, true); } else { Registruj(klinika17818, n, false); } } else if (BrisiPisi == 2) { if (klinika17818.pacijenti.Count == 0) { Console.WriteLine("Nema pacijenata za brisanje"); } else { Console.WriteLine("Kojeg pacijenta zelite brisati? Unesite ime..."); string unosImePacijenta = Console.ReadLine(); Console.WriteLine("Kojeg pacijenta zelite brisati? Unesite prezime..."); string unosPrezimePacijenta = Console.ReadLine(); foreach (NormalniPacijent pacijent17818_1 in klinika17818.pacijenti) { //trazi postoji li taj pacijent if (pacijent17818_1.Ime == unosImePacijenta && pacijent17818_1.Prezime == unosPrezimePacijenta) { klinika17818.pacijenti.Remove(pacijent17818_1); Console.WriteLine("Obrisan pacijent!\n"); break; } } } } break; case 2: do { Console.WriteLine("Za kojeg pacijenta zelite prikazati preglede? Unesite ime..."); string unosImePacijenta = Console.ReadLine(); Console.WriteLine("Za kojeg pacijenta zelite prikazati preglede? Unesite prezime..."); string unosPrezimePacijenta = Console.ReadLine(); foreach (NormalniPacijent pacijent17818_1 in klinika17818.pacijenti) { //trazi postoji li taj pacijent if (pacijent17818_1.Ime == unosImePacijenta && pacijent17818_1.Prezime == unosPrezimePacijenta) { n = pacijent17818_1; //dodjela da ide u funkciju postojiPacijent = true; } } if (postojiPacijent == false) { Console.WriteLine("Nije pronadjen pacijent {0} {1}.\n" + "1-PONOVNI POKUSAJ\n" + "2-ODUSTAJANJE OD PRIKAZA PREGLEDA", unosImePacijenta, unosPrezimePacijenta); int ponovoProbaj = Convert.ToInt32(Console.ReadLine()); if (ponovoProbaj == 2) { break; } } else { PrikaziRaspored(klinika17818, n); } } while (postojiPacijent == false); break; case 3: do { Console.WriteLine("Kojem pacijentu zelite kreirati karton? Unesite ime..."); string unosImePacijenta = Console.ReadLine(); Console.WriteLine("Kojem pacijentu zelite kreirati karton? Unesite prezime..."); string unosPrezimePacijenta = Console.ReadLine(); foreach (NormalniPacijent pacijent17818_1 in klinika17818.pacijenti) { //trazi postoji li taj pacijent if (pacijent17818_1.Ime == unosImePacijenta && pacijent17818_1.Prezime == unosPrezimePacijenta) { n = pacijent17818_1; //dodjela da ide u funkciju postojiPacijent = true; } } if (postojiPacijent == false) { Console.WriteLine("Nije pronadjen pacijent {0} {1}.\n" + "1-PONOVNI POKUSAJ\n" + "2-ODUSTAJANJE OD KREIRANJA KARTONA", unosImePacijenta, unosPrezimePacijenta); int ponovoProbaj = Convert.ToInt32(Console.ReadLine()); if (ponovoProbaj == 2) { break; } } else { StvoriKarton(klinika17818, n); } } while (postojiPacijent == false); break; case 4: do { Console.WriteLine("Kojem pacijentu zelite pretraziti karton? Unesite ime..."); string unosImePacijenta = Console.ReadLine(); Console.WriteLine("Kojem pacijentu zelite pretraziti karton? Unesite prezime..."); string unosPrezimePacijenta = Console.ReadLine(); foreach (NormalniPacijent pacijent17818_1 in klinika17818.pacijenti) { //trazi postoji li taj pacijent if (pacijent17818_1.Ime == unosImePacijenta && pacijent17818_1.Prezime == unosPrezimePacijenta) { n = pacijent17818_1; //dodjela da ide u funkciju postojiPacijent = true; Console.WriteLine("Pronadjen pacijent!"); } } if (postojiPacijent == false) { Console.WriteLine("Nije pronadjen pacijent {0} {1} pa samim time niti njegov karton.\n" + "1-PONOVNI POKUSAJ\n" + "2-ODUSTAJANJE OD PRETRAGE KARTONA", unosImePacijenta, unosPrezimePacijenta); int ponovoProbaj = Convert.ToInt32(Console.ReadLine()); if (ponovoProbaj == 2) { break; } } else { foreach (Karton k in klinika17818.kartoniPacijenata) { if (k.Pacijent17818.Ime == unosImePacijenta && k.Pacijent17818.Prezime == unosPrezimePacijenta) { karton17818_1 = k; postojiKartonPacijenta = true; Console.WriteLine("Pronadjen karton pacijenta!"); } } if (postojiKartonPacijenta == false) { Console.WriteLine("Nije pronadjen karton pacijenta {0} {1}. Provjerite da ste kreirali karton pacijentu\n" + "1-PONOVNI POKUSAJ\n" + "2-ODUSTAJANJE OD PRETRAGE KARTONA", unosImePacijenta, unosPrezimePacijenta); int ponovoProbaj = Convert.ToInt32(Console.ReadLine()); if (ponovoProbaj == 2) { break; } } else { PronadjiUKartonu(klinika17818, karton17818_1); } } } while (!postojiPacijent); break; case 5: do { Console.WriteLine("Kojem pacijentu zelite registrovati pregled? Unesite ime..."); string unosImePacijenta = Console.ReadLine(); Console.WriteLine("Kojem pacijentu zelite registrovati pregled? Unesite prezime..."); string unosPrezimePacijenta = Console.ReadLine(); foreach (NormalniPacijent pacijent17818_1 in klinika17818.pacijenti) { //trazi postoji li taj pacijent if (pacijent17818_1.Ime == unosImePacijenta && pacijent17818_1.Prezime == unosPrezimePacijenta) { n = pacijent17818_1; //dodjela da ide u funkciju postojiPacijent = true; Console.WriteLine("Pronadjen pacijent!"); } } if (postojiPacijent == false) { Console.WriteLine("Nije pronadjen pacijent {0} {1} pa samim time niti njegov karton.\n" + "1-PONOVNI POKUSAJ\n" + "2-ODUSTAJANJE OD REGISTRACIJE PREGLEDA", unosImePacijenta, unosPrezimePacijenta); int ponovoProbaj = Convert.ToInt32(Console.ReadLine()); if (ponovoProbaj == 2) { break; } } else { foreach (Karton k in klinika17818.kartoniPacijenata) { if (k.Pacijent17818.Ime == unosImePacijenta && k.Pacijent17818.Prezime == unosPrezimePacijenta) { karton17818_1 = k; postojiKartonPacijenta = true; Console.WriteLine("Pronadjen karton pacijenta!"); } } if (postojiKartonPacijenta == false) { Console.WriteLine("Nije pronadjen karton pacijenta {0} {1}. Provjerite da ste kreirali karton pacijentu\n" + "1-PONOVNI POKUSAJ\n" + "2-ODUSTAJANJE OD REGISTRACIJE PREGLEDA", unosImePacijenta, unosPrezimePacijenta); int ponovoProbaj = Convert.ToInt32(Console.ReadLine()); if (ponovoProbaj == 2) { break; } } else { RegistrujPregledPacijentu(klinika17818, n); } } } while (!postojiPacijent); break; case 6: Console.WriteLine("Koju metodu analize poslovanja zelite?\n" + "1-UDIO HITNIH SLUCAJEVA U UKUPNOM BROJU PACIJENATA\n" + "2-NAJPOSJECENIJI DOKTORI U 2017. GODINI\n" + "3-PROSJECNA STAROST PACIJENATA U KLINICI"); int izborAnalize = Convert.ToInt32(Console.ReadLine()); switch (izborAnalize) { case 1: int brojacHitnih = 0; if (klinika17818.pacijenti.Count == 0) { Console.WriteLine("Nema pacijenata pa nije ni moguce analizirati procente"); } else { foreach (NormalniPacijent pacijent17818 in klinika17818.pacijenti) { brojacHitnih++; } Console.WriteLine("Od ukupno {0} pacijenata, {1} je hitnih, odnosno", klinika17818.pacijenti.Count, brojacHitnih, (brojacHitnih / klinika17818.pacijenti.Count) * 100); } break; case 2: int brojac = 0; if (klinika17818.pregledi.Count == 0) { Console.WriteLine("Nema pregleda pa nije ni moguce analizirati procente"); } else { foreach (Pregled pregled17818 in klinika17818.pregledi) { if (pregled17818.DatumPregleda1.Year != 2017) { Doktor doktor17818_1 = pregled17818.OdgovorniDoktor1; if (pregled17818.OdgovorniDoktor1.BrojPregledanihPacijenata1 == 0) { continue; } pregled17818.OdgovorniDoktor1.BrojPregledanihPacijenata1--; brojac++; Console.WriteLine("Doktor {0} je pregledao {1} pacijenata u 2017. godini", doktor17818_1.Prezime1, pregled17818.OdgovorniDoktor1.BrojPregledanihPacijenata1); pregled17818.OdgovorniDoktor1.BrojPregledanihPacijenata1 += brojac; } } } break; case 3: double sumaGodina = 0; if (klinika17818.pacijenti.Count == 0) { Console.WriteLine("Nema pacijenata pa nije ni moguce analizirati prosjecnu starost"); } else { foreach (NormalniPacijent pacijent17818 in klinika17818.pacijenti) { var danasnjiDatum = DateTime.Today; var starost = danasnjiDatum.Year - pacijent17818.Datumrodjenja.Year; if (pacijent17818.Datumrodjenja > danasnjiDatum.AddYears(-starost)) { starost--; } sumaGodina += starost; } Console.WriteLine("Prosjecna starost pacijenata u klinici je {0} godina", sumaGodina / klinika17818.pacijenti.Count); } break; } break; case 7: do { Console.WriteLine("Kojem pacijentu zelite printati racun? Unesite ime..."); string unosImePacijenta = Console.ReadLine(); Console.WriteLine("Kojem pacijentu zelite printati racun? Unesite prezime..."); string unosPrezimePacijenta = Console.ReadLine(); foreach (NormalniPacijent pacijent17818_1 in klinika17818.pacijenti) { //trazi postoji li taj pacijent if (pacijent17818_1.Ime == unosImePacijenta && pacijent17818_1.Prezime == unosPrezimePacijenta) { n = pacijent17818_1; //dodjela da ide u funkciju postojiPacijent = true; Console.WriteLine("Pronadjen pacijent!"); } } if (postojiPacijent == false) { Console.WriteLine("Nije pronadjen pacijent {0} {1} pa samim time niti njegov karton.\n" + "1-PONOVNI POKUSAJ\n" + "2-ODUSTAJANJE OD PRINTANJA RACUNA", unosImePacijenta, unosPrezimePacijenta); int ponovoProbaj = Convert.ToInt32(Console.ReadLine()); if (ponovoProbaj == 2) { break; } } else { foreach (Karton k in klinika17818.kartoniPacijenata) { if (k.Pacijent17818.Ime == unosImePacijenta && k.Pacijent17818.Ime == unosPrezimePacijenta) { karton17818_1 = k; postojiKartonPacijenta = true; Console.WriteLine("Pronadjen karton pacijenta!"); } } if (postojiKartonPacijenta == false) { Console.WriteLine("Nije pronadjen karton pacijenta {0} {1}. Provjerite da ste kreirali karton pacijentu\n" + "1-PONOVNI POKUSAJ\n" + "2-ODUSTAJANJE OD PRINTANJA RACUNA", unosImePacijenta, unosPrezimePacijenta); int ponovoProbaj = Convert.ToInt32(Console.ReadLine()); if (ponovoProbaj == 2) { break; } } else { DajRacun(klinika17818, n); } } } while (!postojiPacijent); break; case 8: break; default: Console.WriteLine("Neispravan unos. Pokusajte ponovo."); break; } } while (izbor != 8); }
public Pregled(Doktor odgovorniDoktor, NormalniPacijent pacijentKojiSePregleda) { OdgovorniDoktor = odgovorniDoktor; this.pacijentKojiSePregleda = pacijentKojiSePregleda; }
static void RegistrujPregledPacijentu(Klinika klinika17818, NormalniPacijent n) { int brojac = 1, brojPregleda; bool tacanIndeks = true; Pregled pregled17818 = new Pregled(); Doktor doktor17818 = new Doktor(); if (klinika17818.pregledi.Count == 0) { Console.WriteLine("Pacijent nema upisanih pregleda!"); } else { Console.WriteLine("Pacijent {0} {1} ima zakazane preglede:\n"); foreach (Pregled p in klinika17818.pregledi) { if (p.PacijentKojiSePregleda == n) { Console.WriteLine("{0} Pregled kod specijaliste {1}, {2} {3}", brojac, p.OdgovorniDoktor1.VrstaDoktora, p.OdgovorniDoktor1.Ime1, p.OdgovorniDoktor1.Prezime1); doktor17818 = p.OdgovorniDoktor1; brojac++; } } do { Console.WriteLine("Unesite indeks pregleda koji zelite obaviti..."); brojPregleda = Convert.ToInt32(Console.ReadLine()); if (brojPregleda > brojac || brojPregleda < 1) { Console.WriteLine("Neispravan indeks!"); } } while (tacanIndeks == false); brojac = 0; foreach (Pregled p in klinika17818.pregledi) { if (p.PacijentKojiSePregleda == n) { if (brojPregleda == brojac) { pregled17818 = p; } } } Console.WriteLine("Koju vrstu pregleda zelite obaviti?"); pregled17818.TipPregleda1 = Console.ReadLine(); Console.WriteLine("Unesite datum na koji se obavlja pregled..."); pregled17818.DatumPregleda1 = Convert.ToDateTime(Console.ReadLine()); Console.WriteLine("Unesite rezultat pregleda..."); pregled17818.RezultatiPregleda1 = Console.ReadLine(); Console.WriteLine("Unesite preporucenu terapiju..."); pregled17818.Terapija = Console.ReadLine(); Console.WriteLine("Terapiju treba uzimati dugorocno?\n" + "1-DA\n" + "2-NE"); int dugorocnaTerapija = Convert.ToInt32(Console.ReadLine()); if (dugorocnaTerapija == 1) { pregled17818.DugorocnaTerapija = true; } string unosGarancije; do { Console.WriteLine("Unesite svoju doktorsku garanciju..."); unosGarancije = Console.ReadLine(); if (unosGarancije != doktor17818.Mojagarancija) { Console.WriteLine("Pristup odbijen! Pogresna garancija"); } } while (unosGarancije != doktor17818.Mojagarancija); n.postupci.Add(pregled17818.TipPregleda1); n.cijenePregleda.Add(doktor17818.ordinacijaDoktora.IznosNaplate()); doktor17818.BrojPregledanihPacijenata1++; } }
public Pregled(string tipPregleda, DateTime datumPregleda, string rezultatiPregleda, string terapija, bool dugorocnaTerapija, Doktor odgovorniDoktor) { TipPregleda1 = tipPregleda; DatumPregleda1 = datumPregleda; RezultatiPregleda1 = rezultatiPregleda; this.Terapija = terapija; this.DugorocnaTerapija = dugorocnaTerapija; this.OdgovorniDoktor1 = odgovorniDoktor; }