コード例 #1
0
ファイル: Program.cs プロジェクト: IrhadOmanovic/RPR
        static void RasporedPregleda()
        {
            Console.WriteLine("Unesite matični broj pacijenta čije raspored pregleda želite" + Environment.NewLine);
            string jmbg = Console.ReadLine();

            while (jmbg.Length != 13)
            {
                Console.WriteLine("Matični broj neispravno unesen. Molimo pokušajte ponovo:" + Environment.NewLine);
                jmbg = Console.ReadLine();
            }

            normalniPacijent p = K.ListaPacijenata.FirstOrDefault(x => x.JMBG == jmbg);

            while (p == null)
            {
                Console.WriteLine("Ne postoji pacijent sa tim matičnim brojem. Pokušajte ponovo: \n");
                jmbg = Console.ReadLine();
                p    = K.ListaPacijenata.FirstOrDefault(x => x.JMBG == jmbg);
            }

            int piii = K.ListaPacijenata.FindIndex(x => x.JMBG == jmbg);

            for (int i = 0; i < K.ListaPacijenata[piii].NaziviOrdinacija.Count; i++)
            {
                ordinacija o   = K.Ordinacije.FirstOrDefault(x => x.NazivOrdinacije == K.ListaPacijenata[piii].NaziviOrdinacija[i]);
                int        iee = 1 + o.PacijentiJMBG.FindIndex(x => x == jmbg);
                Console.WriteLine("Pacijent ima " + iee + ". pregled u ordinaciji " + o.NazivOrdinacije);
            }
        }
コード例 #2
0
ファイル: Program.cs プロジェクト: IrhadOmanovic/RPR
        static void RegistrujNoviPregled()
        {
            Console.WriteLine("Unesite matični broj pacijenta za kojeg želite registrovati novi pregled:" + Environment.NewLine);
            string jmbg = Console.ReadLine();

            while (jmbg.Length != 13)
            {
                Console.WriteLine("Matični broj neispravno unesen. Molimo pokušajte ponovo:" + Environment.NewLine);
                jmbg = Console.ReadLine();
            }
            del      delegat = (s1, s2) => s1 == s2;
            pacijent p       = K.ListaPacijenata.FirstOrDefault(x => delegat(x.JMBG, jmbg));

            if (p == null)
            {
                Console.WriteLine("Ne postoji pacijent sa unesenim matičnim brojem!" + Environment.NewLine);
                return;
            }

            int index1 = K.ListaPacijenata.FindIndex(x => delegat(x.JMBG, jmbg));



            Console.WriteLine("Unesite broj pregleda koji su izvšeni :");
            int brPregleda = 0;

            if (!Int32.TryParse(Console.ReadLine(), out brPregleda) && brPregleda > (K.ListaPacijenata[index1]).NaziviOrdinacija.Count())
            {
                Console.WriteLine("Pogrešan unos!" + Environment.NewLine);
                return;
            }
            K.ListaPacijenata[index1].RacunPacijenta             = new racun();
            K.ListaPacijenata[index1].RacunPacijenta.Ordinacijee = new List <string>();

            for (int i = 0; i < brPregleda; i++)
            {
                Console.WriteLine("Unesite naziv ordinacije u kojoj je izvršen pregled:" + Environment.NewLine);
                string ulaz = Console.ReadLine();

                ordinacija ordi = K.Ordinacije.FirstOrDefault(x => delegat(x.NazivOrdinacije, ulaz));

                while (ordi == null)
                {
                    Console.WriteLine("Ne postoji ordinacija s unesenim imenom!" + Environment.NewLine);
                    ulaz = Console.ReadLine();
                    ordi = K.Ordinacije.FirstOrDefault(ordinacija => ordinacija.NazivOrdinacije == ulaz);
                }



                int index          = K.ListaDoktora.FindIndex(doktor => doktor.JMBG == ordi.Dr);
                int index2         = K.Ordinacije.FindIndex(ordinacija => ordinacija.NazivOrdinacije == ordi.NazivOrdinacije);
                int index3         = K.Ordinacije[index2].PacijentiJMBG.FindIndex(x => x == jmbg);
                int indexpacijenta = K.ListaPacijenata.FindIndex(pacijent => pacijent.JMBG == jmbg);
                K.ListaDoktora[index].PregledanoPacijenata++;

                (K.ListaPacijenata[indexpacijenta]).NaziviOrdinacija.Add(ulaz);


                K.ListaPacijenata[indexpacijenta].RacunPacijenta.KrajnjiRacun += K.Ordinacije[index2].CijenaUsluge;

                K.ListaPacijenata[indexpacijenta].RacunPacijenta.Ordinacijee.Add(ulaz);
                K.ListaPacijenata[indexpacijenta].ObavljenoPregleda++;
            }
        }
コード例 #3
0
ファイル: Program.cs プロジェクト: IrhadOmanovic/RPR
        static void RegBrisiPacijenta()
        {
            Console.WriteLine(Environment.NewLine + "Odaberite jednu od opcija:" +
                              Environment.NewLine + "1 - Registruj pacijenta" +
                              Environment.NewLine + "2 - Briši pacijenta");
            string ulaz = Console.ReadLine();

            if (ulaz == "1")
            {
                Console.WriteLine(Environment.NewLine + "Odaberite jednu od opcija:" +
                                  Environment.NewLine + "1 - Normalan pacijent" +
                                  Environment.NewLine + "2 - Hitan slučaj");
                string u2 = Console.ReadLine();
                if (u2 == "1")
                {
                    Console.WriteLine("Unesite ime pacijenta :");
                    string ime = Console.ReadLine();

                    Console.WriteLine("Unesite prezime pacijenta");
                    string prezime = Console.ReadLine();

                    Console.WriteLine("Unesite datum rođenja pacijenta");
                    DateTime datumRodjenja;
                    while (!DateTime.TryParse(Console.ReadLine(), out datumRodjenja))
                    {
                        Console.WriteLine("Datum neispravno unesen. Molimo pokušajte ponovo(DD-MM-GGGG):");
                    }

                    Console.WriteLine("Unesite JMBG pacijenta");
                    string jmbg = Console.ReadLine();
                    while (jmbg.Length != 13)
                    {
                        Console.WriteLine("Matični broj neispravno unesen. Molimo pokušajte ponovo:");
                        jmbg = Console.ReadLine();
                    }

                    Console.WriteLine("Unesite spol pacijenta");
                    string spol = Console.ReadLine();
                    while (spol != "M" && spol != "Ž")
                    {
                        Console.WriteLine("Spol pogrešno unesen. Pokušajte ponovo.");
                        spol = Console.ReadLine();
                    }

                    Console.WriteLine("Unesite adresu pacijenta");
                    string adresa = Console.ReadLine();
                    while (adresa.Length > 50)
                    {
                        Console.WriteLine("Adresa je preduga, unesite je ponovo!");
                        adresa = Console.ReadLine();
                    }

                    Console.WriteLine("Unesite bračno stanje pacijenta : ");
                    string bracnoStanje = Console.ReadLine();
                    if (spol == "M")
                    {
                        while (bracnoStanje != "Oženjen" && bracnoStanje != "Neoženjen")
                        {
                            Console.WriteLine("Unijeli ste pogrešne podatke. Opcije koje možete unijeti su: Oženjen ili Neoženjen.");
                            bracnoStanje = Console.ReadLine();
                        }
                    }
                    else
                    {
                        while (bracnoStanje != "Udana" && bracnoStanje != "Nedudana")
                        {
                            Console.WriteLine("Unijeli ste pogrešne podatke. Opcije koje možete unijeti su: Udana ili Neudana.");
                            bracnoStanje = Console.ReadLine();
                        }
                    }

                    Console.WriteLine("Unesite datum prijema pacijenta");
                    DateTime datumPrijema;
                    while (!DateTime.TryParse(Console.ReadLine(), out datumPrijema))
                    {
                        Console.WriteLine("Datum neispravno unesen. Molimo pokušajte ponovo(DD-MM-GGGG):");
                    }



                    Console.WriteLine("Unesite broj pregleda koje želite izvršiti :");
                    int brPregleda = 0;

                    while (!Int32.TryParse(Console.ReadLine(), out brPregleda) && brPregleda < 1)
                    {
                        Console.WriteLine("Pogrešan unos! Pokušajte ponovo: " + Environment.NewLine);
                    }



                    int           kBrPrg           = brPregleda;
                    List <string> naziviOrdinacija = new List <string>();
                    List <int>    prg = new List <int>();

                    Console.WriteLine("Dostupne ordinacije : \n");
                    bool tac = false;
                    for (int j = 0; j < K.Ordinacije.Count; j++)
                    {
                        if (K.Ordinacije[j].Zauzetost == false)
                        {
                            Console.WriteLine(K.Ordinacije[j].NazivOrdinacije);
                            tac = true;
                        }
                    }

                    if (tac == false)
                    {
                        Console.WriteLine("Nema dostupnih ordinacija!\n");
                        return;
                    }

                    for (int i = 0; i < brPregleda; i++)
                    {
                        Console.WriteLine("Unesite naziv ordinacije u kojoj se vrši pregled:" + Environment.NewLine);
                        string ulaz1 = Console.ReadLine();

                        ordinacija ordi = K.Ordinacije.FirstOrDefault(ordinacija => ordinacija.NazivOrdinacije == ulaz1);
                        while (ordi == null)
                        {
                            Console.WriteLine("Ne postoji ordinacija s unesenim imenom!" + Environment.NewLine);
                            ulaz1 = Console.ReadLine();
                            ordi  = K.Ordinacije.FirstOrDefault(ordinacija => ordinacija.NazivOrdinacije == ulaz1);
                        }

                        int index = K.pronadjiIndexOrdinacije(ulaz1);

                        if (K.Ordinacije[index].Zauzetost == true)
                        {
                            Console.WriteLine("Ordinacija nedostupna.");
                            ulaz1 = Console.ReadLine();
                            kBrPrg--;
                            continue;
                        }

                        bool taci = false;
                        for (int ii = 0; ii < naziviOrdinacija.Count(); ii++)
                        {
                            if (naziviOrdinacija[ii] == ulaz1)
                            {
                                Console.WriteLine("Već je registrovan pregled u toj ordinaciji.");
                                taci = true;
                            }
                        }

                        if (taci == true)
                        {
                            return;
                        }

                        naziviOrdinacija.Add(ulaz1);
                        K.Ordinacije[index].PacijentiJMBG.Add(jmbg);
                        prg.Add(index);
                    }

                    K.registrujPacijenta(new normalniPacijent(ime, prezime, jmbg, brPregleda, naziviOrdinacija, datumRodjenja, spol, adresa, bracnoStanje, datumPrijema));

                    List <int> lista = new List <int>();

                    while (prg.Count() != 0)
                    {
                        int min = prg[0];
                        for (int i = 0; i < prg.Count(); i++)
                        {
                            if (K.Ordinacije[prg[i]].PacijentiJMBG.Count() < K.Ordinacije[min].PacijentiJMBG.Count())
                            {
                                min = prg[i];
                            }
                        }
                        lista.Add(min);
                        prg.Remove(min);
                    }

                    Console.WriteLine("Raspored pregleda : ");

                    for (int j = 0; j < lista.Count(); j++)
                    {
                        int k = j + 1;
                        Console.WriteLine(k + ". pregled je zakazan u " + K.Ordinacije[lista[j]].NazivOrdinacije + " ordinaciji"
                                          + ". Mjesto u redu " + K.Ordinacije[j].PacijentiJMBG.Count() + "\n");
                    }


                    Console.WriteLine("--- Pacijent uspješno dodan! ---");
                }
                else if (u2 == "2")
                {
                    Console.WriteLine("Unesite izvještaj o prvoj pomoći :" + Environment.NewLine);
                    string prvaPomoc = Console.ReadLine();

                    Console.WriteLine("Unesite razlog pružanja prve pomoći :" + Environment.NewLine);
                    string razlogPrvePomoci = Console.ReadLine();

                    Console.WriteLine("Unesite ime pacijenta :" + Environment.NewLine);
                    string ime = Console.ReadLine();

                    Console.WriteLine("Unesite prezime pacijenta :" + Environment.NewLine);
                    string prezime = Console.ReadLine();

                    Console.WriteLine("Unesite datum rođenja :" + Environment.NewLine);
                    DateTime datumRodjenja;
                    while (!DateTime.TryParse(Console.ReadLine(), out datumRodjenja))
                    {
                        Console.WriteLine("Datum neispravno unešen. Molimo, pokušajte ponovo(DD-MM-GGGG) :" + Environment.NewLine);
                    }

                    Console.WriteLine("Unesite JMBG pacijenta :" + Environment.NewLine);
                    string jmbg = Console.ReadLine();

                    while (jmbg.Length != 13)
                    {
                        Console.WriteLine("Matični broj neispravno unesen. Molimo pokušajte ponovo:" + Environment.NewLine);
                        jmbg = Console.ReadLine();
                    }

                    Console.WriteLine("Da li je pacijent preminuo(Da/Ne) ?" + Environment.NewLine);
                    string ziv = Console.ReadLine();

                    while (ziv != "Da" && ziv != "Ne")
                    {
                        Console.WriteLine("Neispravan unos! Odaberite opciju 'Da' ili 'Ne'. " + Environment.NewLine);
                        ziv = Console.ReadLine();
                    }
                    if (ziv == "Da")
                    {
                        Console.WriteLine("Unesite vrijeme nastupanja smrti :" + Environment.NewLine);
                        TimeSpan vrijemeSmrti;
                        while (!TimeSpan.TryParse(Console.ReadLine(), out vrijemeSmrti))
                        {
                            Console.WriteLine("Vrijeme neispravno uneseno. Molimo pokušajte ponovo(HH-MM):" + Environment.NewLine);
                        }

                        Console.WriteLine("Unesite preliminarni uzrok smrti: " + Environment.NewLine);
                        string preEliminarniUzrokSmrti = Console.ReadLine();

                        Console.WriteLine("Unesite datum obdukcije :" + Environment.NewLine);
                        DateTime vrijemeObdukcije;
                        while (!DateTime.TryParse(Console.ReadLine(), out vrijemeObdukcije))
                        {
                            Console.WriteLine("Vrijeme neispravno uneseno. Molimo pokušajte ponovo(DD-MM-GGGG):" + Environment.NewLine);
                        }
                    }

                    hitniPacijent p = new hitniPacijent(ime, prezime, jmbg, prvaPomoc, razlogPrvePomoci);
                    K.registrujPacijenta(p);

                    Console.WriteLine("--- Pacijent uspješno dodan! ---");
                }
                else
                {
                    Console.WriteLine("Nerazumljiva komanda");
                }
            }
            else if (ulaz == "2")
            {
                Console.WriteLine("1 - Hitni slučaj \n2 -Normalni slučaj.\n");
                string ulaz1 = Console.ReadLine();
                if (ulaz1 == "2")
                {
                    Console.WriteLine("Unesite JMBG pacijenta :" + Environment.NewLine);
                    string jmbg = Console.ReadLine();

                    while (jmbg.Length != 13)
                    {
                        Console.WriteLine("Matični broj neispravno unesen. Molimo pokušajte ponovo:" + Environment.NewLine);
                        jmbg = Console.ReadLine();
                    }

                    pacijent p = K.ListaPacijenata.FirstOrDefault(x => x.JMBG == jmbg);
                    while (p == null)
                    {
                        Console.WriteLine("Ne postoji takav pacijent u registru! Pokušajte ponovo: \n");
                        jmbg = Console.ReadLine();
                        p    = K.ListaPacijenata.FirstOrDefault(x => x.JMBG == jmbg);
                    }

                    K.brisiPacijenta(jmbg);
                }
                else if (ulaz == "1")
                {
                    Console.WriteLine("Unesite JMBG pacijenta :" + Environment.NewLine);
                    string jmbg = Console.ReadLine();

                    while (jmbg.Length != 13)
                    {
                        Console.WriteLine("Matični broj neispravno unesen. Molimo pokušajte ponovo:" + Environment.NewLine);
                        jmbg = Console.ReadLine();
                    }

                    pacijent p = K.ListaPacijenataa.FirstOrDefault(x => x.JMBG == jmbg);
                    while (p == null)
                    {
                        Console.WriteLine("Ne postoji takav pacijent u registru! Pokušajte ponovo: \n");
                        jmbg = Console.ReadLine();
                        p    = K.ListaPacijenataa.FirstOrDefault(x => x.JMBG == jmbg);
                    }

                    K.brisiPacijentaa(jmbg);
                }
                else
                {
                    Console.WriteLine("Nerazumljiva komanda!");
                    return;
                }
            }
            else
            {
                Console.WriteLine("Nerazumljiva komanda! " + Environment.NewLine);
            }
        }