Ejemplo n.º 1
0
        /*------------------*/

        public async Task <IActionResult> Prikaz()
        {
            var model = new LinijeVM();

            model.PrikaziLinije = await Preporuka();

            model.ListaGradova = new List <Model.Grad>();
            var resGrad = await _gradoviService.Get(null);

            if (resGrad.IsSuccessStatusCode)
            {
                var result  = resGrad.Content.ReadAsStringAsync().Result;
                var gradovi = JsonConvert.DeserializeObject <List <Model.Grad> >(result);

                foreach (var item in gradovi)
                {
                    model.ListaGradova.Add(item);
                }
            }
            return(View(model));
        }
Ejemplo n.º 2
0
        public async Task <IActionResult> PretraziLinije(string polaziste, string odrediste, DateTime datum) //  LinijeVM podaci
        {
            var privremenaLinija = new List <LinijaPodaci>();

            var model = new LinijeVM();

            model.PrikaziLinije = new List <LinijaPodaci>();
            model.ListaGradova  = new List <Grad>();
            model.DatumPretrage = datum;  //podaci.DatumPretrage;

            var searchLinije = new LinijaSearchRequest()
            {
                PoNazivu       = true,
                NazivOdredista = odrediste, //podaci.Odrediste,
                NazivPolazista = polaziste  //podaci.Polaziste
            };

            var resLinije = await _linijeService.Get(searchLinije);

            if (resLinije.IsSuccessStatusCode)
            {
                var result = resLinije.Content.ReadAsStringAsync().Result;
                var linije = JsonConvert.DeserializeObject <List <Model.Linija> >(result);

                var searchKarta = new KartaSearchRequest()
                {
                    PoAngzuje      = false,
                    PoVozilu       = false,
                    PoVremenu      = false,
                    DatumIzdavanja = datum //podaci.DatumPretrage
                };

                var resKarta = await _kartaService.Get(searchKarta);

                if (resKarta.IsSuccessStatusCode)
                {
                    var resultK = resKarta.Content.ReadAsStringAsync().Result;
                    var karte   = JsonConvert.DeserializeObject <List <Model.Karta> >(resultK);

                    //var karte = await vratiKartePoDatumu(datum);

                    //List<Model.Karta> karte = await vratiKartePoDatumu(podaci.DatumPretrage);

                    Dictionary <TimeSpan, int> linijeZaPrikazat = new Dictionary <TimeSpan, int>();



                    foreach (var item in linije)
                    {
                        foreach (var karta in karte)
                        {
                            if (item.Id == karta.Angazuje.LinijaId)
                            {
                                if (!linijeZaPrikazat.ContainsKey(karta.VrijemePolaska))
                                {
                                    var searchCijena = new CijenaSearchRequest()
                                    {
                                        KompanijaID = karta.Sjediste.Vozilo.KompanijaId,
                                        LinijaID    = item.Id
                                    };

                                    var resCijena = await _cijenaService.Get(searchCijena);

                                    if (resCijena.IsSuccessStatusCode)
                                    {
                                        var resultC = resCijena.Content.ReadAsStringAsync().Result;
                                        var cijena  = JsonConvert.DeserializeObject <List <Model.Cijena> >(resultC);

                                        var linijaPodaci = new LinijaPodaci()
                                        {
                                            AngazujeID     = karta.AngazujeId,
                                            Cijena         = cijena[0].Iznos,
                                            DatumPretrage  = datum, //podaci.DatumPretrage,
                                            VoziloID       = karta.Sjediste.VoziloId.Value,
                                            Kompanija      = karta.Sjediste.Vozilo.Kompanija.Naziv,
                                            OdredisteNaziv = odrediste, //podaci.Odrediste,
                                            PolazisteNaziv = polaziste, //podaci.Polaziste,
                                            VrijemePolaska = karta.VrijemePolaska,
                                            kartaID        = karta.Id
                                        };

                                        model.PrikaziLinije.Add(linijaPodaci);
                                    }

                                    linijeZaPrikazat.Add(karta.VrijemePolaska, karta.AngazujeId);
                                }
                            }
                        }
                    }
                }
            }

            // return View( model);

            return(PartialView(model));
        }