Ejemplo n.º 1
0
        private void LoadVoznje()
        {
            using (TextReader tr = new StreamReader(@"D:\TaxiService\WEBTaxiService\WEBTaxiService\TaxiService\App_Data\voznje.txt"))
            {
                Voznja    voznja   = null;
                Musterija m        = null;
                Dispecer  d        = null;
                Vozac     v        = null;
                string    podaci   = "";
                int       idVoznje = 1;
                while ((podaci = tr.ReadLine()) != null)
                {
                    string[] parsirani = podaci.Split(';');
                    voznja                                       = new Voznja();
                    voznja.IDVoznje                              = idVoznje;
                    voznja.VremePorudzbine                       = DateTime.Parse(parsirani[0]);
                    voznja.StartLokacija.Adresa.Ulica            = parsirani[1];
                    voznja.StartLokacija.Adresa.Broj             = Int32.Parse(parsirani[2]);
                    voznja.StartLokacija.Adresa.NaseljenoMesto   = parsirani[3];
                    voznja.StartLokacija.Adresa.PozivniBrojMesta = Int32.Parse(parsirani[4]);
                    voznja.ZeljeniTipAutomobila                  = (Enums.TipAutomobila)System.Enum.Parse(typeof(Enums.TipAutomobila), parsirani[5]);
                    if (!parsirani[6].Equals(""))
                    {
                        m = ListeKorisnika.Instanca.Musterije.Find(x => x.Username.Equals(parsirani[6]));
                        voznja.Musterija = m.Username;
                    }
                    else
                    {
                        voznja.Musterija = "";
                    }

                    if (!parsirani[7].Equals(""))
                    {
                        d = ListeKorisnika.Instanca.Dispeceri.Find(x => x.Username.Equals(parsirani[7]));
                        voznja.Dispecer = d.Username;
                    }
                    else
                    {
                        voznja.Dispecer = "";
                    }
                    v = ListeKorisnika.Instanca.Vozaci.Find(x => x.Username.Equals(parsirani[8]));
                    if (v != null)
                    {
                        voznja.Vozac.Username = v.Username;
                    }

                    voznja.EndLokacija.Adresa.Ulica            = parsirani[9];
                    voznja.EndLokacija.Adresa.Broj             = Int32.Parse(parsirani[10]);
                    voznja.EndLokacija.Adresa.NaseljenoMesto   = parsirani[11];
                    voznja.EndLokacija.Adresa.PozivniBrojMesta = Int32.Parse(parsirani[12]);
                    voznja.Iznos  = double.Parse(parsirani[13]);
                    voznja.Status = (Enums.StatusVoznje)System.Enum.Parse(typeof(Enums.StatusVoznje), parsirani[14]);
                    if (parsirani[15] != "")
                    {
                        voznja.Komentar.DatumObjave = parsirani[15];
                        voznja.Komentar.Opis        = parsirani[16];
                        voznja.Komentar.OcenaVoznje = Int32.Parse(parsirani[17]);
                        voznja.Komentar.Korisnik    = parsirani[18];
                    }
                    else
                    {
                        voznja.Komentar.DatumObjave = "";
                        voznja.Komentar.Opis        = "";
                        voznja.Komentar.OcenaVoznje = 0;
                        voznja.Komentar.Korisnik    = "";
                    }

                    if (m != null)
                    {
                        ListeKorisnika.Instanca.Musterije.Remove(m);
                        m.Voznje.Add(voznja);
                        ListeKorisnika.Instanca.Musterije.Add(m);
                    }
                    if (d != null)
                    {
                        ListeKorisnika.Instanca.Dispeceri.Remove(d);
                        d.Voznje.Add(voznja);
                        ListeKorisnika.Instanca.Dispeceri.Add(d);
                    }
                    if (v != null)
                    {
                        ListeKorisnika.Instanca.Vozaci.Remove(v);
                        if (voznja.Status == StatusVoznje.Obradjena || voznja.Status == StatusVoznje.Prihvacena || voznja.Status == StatusVoznje.Formirana)
                        {
                            voznja.Vozac.Zauzet = true;
                            v.Zauzet            = true;
                        }
                        v.Voznje.Add(voznja);
                        ListeKorisnika.Instanca.Vozaci.Add(v);
                    }
                    Voznje.Add(voznja);

                    ++idVoznje;
                }
            }
        }