public PretragaLetova(Letovi_RezervacijaVM letovi, Letovi_RezervacijaVM letoviPovratak) { InitializeComponent(); Letovi = letovi; LetoviPovratak = letoviPovratak; letoviList.ItemsSource = letovi.podaci; BindKlase(); }
public PretragaLetovaPovratak(Letovi_RezervacijaVM.Rows odabraniletPolazak, int odabranaKlasaPolazak, Letovi_RezervacijaVM letoviPovratak) { InitializeComponent(); PovratniLetovi = letoviPovratak; letoviPovratakList.ItemsSource = PovratniLetovi.podaci; OdabraniLetPolazak = odabraniletPolazak; OdabranaKlasaPolazak = odabranaKlasaPolazak; BindKlase(); }
public IHttpActionResult SearchRecommendedLet(int korisnikID) { List <Rows> dosadasnjeRezervacije = RezervacijeKorisnika(korisnikID); Letovi_RezervacijaVM temp = new Letovi_RezervacijaVM(); List <Let> letovi = new List <Let>(); foreach (Rows rows in dosadasnjeRezervacije.Take(5).ToList()) { letovi.AddRange(db.Let.Include(x => x.Grad).Include(x => x.Grad1). Where(x => x.isPosebnaPonuda == false && x.PolazisteID == rows.polazisteID && x.OdredisteID == rows.odredisteID && x.DatumVrijemePolaska > DateTime.Now && x.StatusLeta == false). ToList().Take(5)); } temp.podaci = letovi.OrderBy(x => x.DatumVrijemePolaska).Select(x => new Letovi_RezervacijaVM.Rows { LetID = x.LetID, PolazisteID = x.PolazisteID, OdredisteID = x.OdredisteID, BrojLeta = x.BrojLeta, DatumPolaska = x.DatumVrijemePolaska.ToString("d MMM, yyyy"), DatumDolaska = x.DatumVrijemeDolaska.ToString("d MMM, yyyy"), VrijemePolaska = x.DatumVrijemePolaska.ToString("HH:mm"), VrijemeDolaska = x.DatumVrijemeDolaska.ToString("HH:mm"), CijenaBussOdrasli = x.CijenaBussOdrasli, CijenaBussDjeca = x.CijenaBussDjeca, CijenaEcoDjeca = x.CijenaEcoDjeca, CijenaEcoOdrasli = x.CijenaEcoOdrasli, polaziste = x.Grad1.Naziv + " " + x.Grad1.Oznaka, odrediste = x.Grad.Naziv + " " + x.Grad.Oznaka, BrojSlobodnihBussiness = Convert.ToInt32(db.Sjediste.Where(p => p.LetID == x.LetID && p.isBussiness == true && p.isZauzeto == false).Count()), BrojSlobodnihEkonomska = Convert.ToInt32(db.Sjediste.Where(p => p.LetID == x.LetID && p.isBussiness == false && p.isZauzeto == false).Count()) }).ToList(); Letovi_RezervacijaVM Model = new Letovi_RezervacijaVM(); Model.podaci = new List <Letovi_RezervacijaVM.Rows>(); Model.podaci = temp.podaci.Where(x => x.BrojSlobodnihBussiness > 0 || x.BrojSlobodnihEkonomska > 0).ToList(); return(Ok(Model)); }
private void BindPreporuceniLetovi() { HttpResponseMessage response = recommenderServis.GetActionResponse("SearchRecommendedLet", Global.logiraniKorisnik.KorisnikID.ToString()); if (response.IsSuccessStatusCode) { var jsonResult = response.Content.ReadAsStringAsync(); Letovi_RezervacijaVM letovi = JsonConvert.DeserializeObject <Letovi_RezervacijaVM>(jsonResult.Result); letoviList.ItemsSource = letovi.podaci; Letovi = letovi; if (letovi.podaci.Count == 0) { DisplayAlert("Info", "Trenutno nema preporučenih letova", "Nazad"); } } else { DisplayAlert("Greška", "Nemoguće pristupiti preporučenim letovima", "Nazad"); } }
public IHttpActionResult SearchLetByPolazisteOdrediste(string datum, int polazisteID, int odredisteID) { Letovi_RezervacijaVM temp = new Letovi_RezervacijaVM(); DateTime Datum = DateTime.Parse(datum); List <Let> letovi = db.Let.Include(x => x.Grad).Include(x => x.Grad1). Where(x => x.isPosebnaPonuda == false && x.PolazisteID == polazisteID && x.OdredisteID == odredisteID && DbFunctions.TruncateTime(x.DatumVrijemePolaska) == Datum.Date && x.StatusLeta == false). ToList(); temp.podaci = letovi.Select(x => new Letovi_RezervacijaVM.Rows { LetID = x.LetID, PolazisteID = x.PolazisteID, OdredisteID = x.OdredisteID, BrojLeta = x.BrojLeta, DatumPolaska = x.DatumVrijemePolaska.ToString("d MMM, yyyy"), DatumDolaska = x.DatumVrijemeDolaska.ToString("d MMM, yyyy"), VrijemePolaska = x.DatumVrijemePolaska.ToString("HH:mm"), VrijemeDolaska = x.DatumVrijemeDolaska.ToString("HH:mm"), CijenaBussOdrasli = x.CijenaBussOdrasli, CijenaBussDjeca = x.CijenaBussDjeca, CijenaEcoDjeca = x.CijenaEcoDjeca, CijenaEcoOdrasli = x.CijenaEcoOdrasli, polaziste = x.Grad1.Naziv + " " + x.Grad1.Oznaka, odrediste = x.Grad.Naziv + " " + x.Grad.Oznaka, BrojSlobodnihBussiness = Convert.ToInt32(db.Sjediste.Where(p => p.LetID == x.LetID && p.isBussiness == true && p.isZauzeto == false).Count()), BrojSlobodnihEkonomska = Convert.ToInt32(db.Sjediste.Where(p => p.LetID == x.LetID && p.isBussiness == false && p.isZauzeto == false).Count()) }).ToList(); Letovi_RezervacijaVM Model = new Letovi_RezervacijaVM(); Model.podaci = new List <Letovi_RezervacijaVM.Rows>(); Model.podaci = temp.podaci.Where(x => x.BrojSlobodnihBussiness > 0 || x.BrojSlobodnihEkonomska > 0).ToList(); return(Ok(Model)); }
private void BtnPretraga_Clicked(object sender, EventArgs e) { if (txtDatum.Date < DateTime.Now.Date) { DisplayAlert("Info", "Datum polaska ne smije biti manji od trenutnog vremena", "OK"); return; } if (swPovratak.IsToggled) { if (txtDatumPovratak.Date < txtDatum.Date) { DisplayAlert("Info", "Datum povratka ne smije biti manji od datuma polaska", "OK"); return; } } if (PolazistePicker.SelectedItem != null && OdredistePicker.SelectedItem != null) { int polazisteID = (PolazistePicker.SelectedItem as Grad).GradID; int odredisteID = (OdredistePicker.SelectedItem as Grad).GradID; string datumPolaska = txtDatum.Date.ToString().Replace("/", "-").Replace(":", "."); HttpResponseMessage response = letServis.GetActionResponse("SearchLetByPolazisteOdrediste", datumPolaska, polazisteID.ToString(), odredisteID.ToString()); if (response.IsSuccessStatusCode) { var jsonObj = response.Content.ReadAsStringAsync(); Letovi_RezervacijaVM letovi = JsonConvert.DeserializeObject <Letovi_RezervacijaVM>(jsonObj.Result); if (letovi.podaci.Count == 0) { DisplayAlert("Info", "Nema dostupnih letova za polazak", "OK"); } else { if (swPovratak.IsToggled) { string datumPovratka = txtDatumPovratak.Date.ToString().Replace("/", "-").Replace(":", "."); HttpResponseMessage responsePovratak = letServis.GetActionResponse("SearchLetByPolazisteOdrediste", datumPovratka, odredisteID.ToString(), polazisteID.ToString()); if (responsePovratak.IsSuccessStatusCode) { var jsonObjPovratak = responsePovratak.Content.ReadAsStringAsync(); Letovi_RezervacijaVM letoviPovratak = JsonConvert.DeserializeObject <Letovi_RezervacijaVM>(jsonObjPovratak.Result); if (letoviPovratak.podaci.Count == 0) { DisplayAlert("Info", "Nema dostupnih letova za povratak", "OK"); } else { Navigation.PushAsync(new PretragaLetova(letovi, letoviPovratak)); } } else { DisplayAlert("Greška", "Nemoguće pristupiti letovima za povratak", "OK"); } } else { Navigation.PushAsync(new PretragaLetova(letovi, null)); } } } else { DisplayAlert("Greška", "Nemoguće pristupiti letovima za polazak", "OK"); } } else { DisplayAlert("Greška", "Potrebno je odabrati polazište i destinaciju", "Nazad"); } }