Exemplo n.º 1
0
        public async Task BindZanrove()
        {
            if (!Zanrovi.Any())
            {
                var zanrovi = (await _zanroviService.Get <List <Zanrovi> >(null)).Select(z => new OdabirViewModel
                {
                    Id    = z.ZanrId,
                    Naziv = z.Naziv
                }).ToList();

                Zanrovi.Insert(0, new OdabirViewModel
                {
                    Naziv = "Odaberite žanr"
                });

                OdabraniZanr = Zanrovi.First();

                foreach (var zanr in zanrovi)
                {
                    Zanrovi.Add(zanr);
                }
            }
        }
 public ZanroviViewModel(Zanrovi model)
 {
     ZanrID = model.ZanrID;
     Naziv  = model.Naziv;
 }
Exemplo n.º 3
0
        public async Task Init()
        {
            if (Zanrovi.Count == 0)
            {
                var zanroviFilmovaList = await _zanroviService.Get <List <Zanr> >(null);

                foreach (var zanr in zanroviFilmovaList)
                {
                    Zanrovi.Add(zanr);
                }
            }

            FilmSearchRequest search = new FilmSearchRequest();

            if (SelectedZanr != null)
            {
                search.ZanrId = _selectedZanr.ZanrId;
            }
            search.Dostupan = true;

            var list = await _filmService.Get <IEnumerable <Film> >(search);

            FilmoviList.Clear();
            PreporuceniFilmovi.Clear();

            foreach (var film in list)
            {
                FilmoviList.Add(film);
            }


            // RECOMMENDER - Filmovi su prikazani po najvecoj prosjecnoj ocjeni

            FilmSearchRequest filmSearch = new FilmSearchRequest();

            filmSearch.Dostupan = true;
            OcjenaSearchRequest ocjenaSearch = new OcjenaSearchRequest();
            var ocjene = await _ocjeneService.Get <List <Model.Models.Ocjena> >(null);

            var sviFilmovi = await _filmService.Get <List <Model.Models.Film> >(filmSearch);

            RezervacijaFilmaSearchRequest rSearch = new RezervacijaFilmaSearchRequest
            {
                Otkazana = false
            };
            var sveRezervacije = await _rezervacijeService.Get <List <Model.Models.RezervacijaFilma> >(rSearch);

            List <Model.Models.Film> filmovi = new List <Model.Models.Film>();

            foreach (var f in sviFilmovi)
            {
                int    brojac  = 0;
                double suma    = 0;
                double prosjek = 0;

                foreach (var r in sveRezervacije)
                {
                    if (f.FilmId == r.FilmId)
                    {
                        foreach (var o in ocjene)
                        {
                            if (r.RezervacijaFilmaId == o.RezervacijaFilmaId)
                            {
                                brojac++;
                                suma += o.Ocjena1;
                            }
                        }
                    }
                }
                prosjek           = suma / brojac;
                f.ProsjecnaOcjena = prosjek;
                filmovi.Add(f);
            }
            var result = filmovi.OrderByDescending(x => x.ProsjecnaOcjena).ToList();

            foreach (var item in result)
            {
                PreporuceniFilmovi.Add(item);
            }
        }