static void StvoriKarton(Klinika klinika17818, NormalniPacijent pacijent17818_1) { Karton karton17818_1 = new Karton(pacijent17818_1); Console.WriteLine("Pocinje stvaranje kartona za pacijenta..."); Console.WriteLine("Unesite podatke o prijasnjim bolestima pacijenta..."); karton17818_1.Bolesti = Console.ReadLine(); Console.WriteLine("Koje vakcine je pacijent primio?"); karton17818_1.Vakcinacija = Console.ReadLine(); Console.WriteLine("Unesite datum kreiranja kartona..."); karton17818_1.DatumOtvaranjaKartona = Convert.ToDateTime(Console.ReadLine()); Console.WriteLine("Pacijent je pusac?\n1-DA\n2-NE"); int pacijentPusi = Convert.ToInt32(Console.ReadLine()); karton17818_1.PacijentPusac = (pacijentPusi == 1); Console.WriteLine("Pacijent je alkoholicar?\n1-DA\n2-NE"); int pacijentAlkohol = Convert.ToInt32(Console.ReadLine()); karton17818_1.PacijentAlkohol = (pacijentAlkohol == 1); Console.WriteLine("Pacijent je uzivalac opojnih droga?\n1-DA\n2-NE"); int pacijentDroga = Convert.ToInt32(Console.ReadLine()); karton17818_1.PacijentDroga = (pacijentDroga == 1); Console.WriteLine("Kreiran karton za pacijenta {0} {1}, rodjenog {2}", pacijent17818_1.Ime, pacijent17818_1.Prezime, pacijent17818_1.Datumrodjenja); klinika17818.kartoniPacijenata.Add(karton17818_1); }
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); }
static void PronadjiUKartonu(Klinika klinika17818, Karton karton17818) { Console.WriteLine("Odaberite kriterij pretrage...\n" + "1-DOKTOR KOJI JE PREGLEDAO PACIJENTA" + "2-PODACI O PRIJASNJIM BOLESTIMA" + "3-DATUM VRSENJA PREGLEDA" + "4-TIP DOKTORA KOJI JE PREGLEDAO PACIJENTA"); int izborKriterija = Convert.ToInt32(Console.ReadLine()); switch (izborKriterija) { case 1: Console.WriteLine("Cije preglede zelite pronaci u kartonu pacijenta? Unesite ime doktora..."); string unosImeDoktora = Console.ReadLine(); Console.WriteLine("Cije preglede zelite pronaci u kartonu pacijenta? Unesite prezime doktora..."); string unosPrezimeDoktora = Console.ReadLine(); foreach (Pregled p in karton17818.PreglediPacijenta) { if (p.OdgovorniDoktor1.Ime1 == unosImeDoktora && p.OdgovorniDoktor1.Prezime1 == unosPrezimeDoktora) { Console.WriteLine("Doktor {0} je dana {1} pregledao pacijenta i propisao terapiju {2}. Rezultat pregleda je {3}", unosPrezimeDoktora, p.DatumPregleda1, p.Terapija, p.RezultatiPregleda1); } } break; case 2: Console.WriteLine("Unesite podatke o prijasnjim bolestima koje zelite pretraziti unutar kartona..."); string unosBolesti = Console.ReadLine(); foreach (Pregled p in karton17818.PreglediPacijenta) { if (karton17818.Bolesti.Contains(unosBolesti)) { Console.WriteLine("Pronadjen podstring {0} u prijasnjim bolestima pacijenta\n{1}", unosBolesti, karton17818.Bolesti); } } break; case 3: Console.WriteLine("Na koji datum zelite pretraziti preglede?"); DateTime unosDatuma = Convert.ToDateTime(Console.ReadLine()); foreach (Pregled p in karton17818.PreglediPacijenta) { if (p.DatumPregleda1 == unosDatuma) { Console.WriteLine("Ovo su pregledi na datum {0}:\n", unosDatuma); } Console.WriteLine("Doktor {0} je dana {1} pregledao pacijenta i propisao terapiju {2}. Rezultat pregleda je {3}", p.OdgovorniDoktor1.Prezime1, p.DatumPregleda1, p.Terapija, p.RezultatiPregleda1); } break; case 4: Console.WriteLine("Kojeg tipa su doktori cije preglede zelite izlistati?"); string unosTipaDoktora = Console.ReadLine(); foreach (Pregled p in karton17818.PreglediPacijenta) { if (p.OdgovorniDoktor1.VrstaDoktora == unosTipaDoktora) { Console.WriteLine("Doktor {0} je dana {1} pregledao pacijenta i propisao terapiju {2}. Rezultat pregleda je {3}", p.OdgovorniDoktor1.Prezime1, p.DatumPregleda1, p.Terapija, p.RezultatiPregleda1); } } break; } }