Example #1
0
        public async Task Init()
        {
            Pacijent        pacijent        = new Pacijent();
            var             username        = APIService.Username;
            List <Pacijent> listaPacijenata = await _pacijent.Get <List <Pacijent> >(null);

            foreach (var item in listaPacijenata)
            {
                if (item.KorisnickoIme == username)
                {
                    pacijent = item;
                    break;
                }
            }
            var request = new OcjenaSearchRequest
            {
                ClanakId   = Clanak.ClanakId,
                PacijentId = pacijent.PacijentId
            };
            var ocjene = await _ocjene.Get <List <Ocjena> >(request);

            if (ocjene != null && ocjene.Count > 0)
            {
                Ocjena  = ocjene[0];
                Ocjena1 = Ocjena.Ocjena1;
            }
        }
Example #2
0
        public async Task Init()
        {
            Posjetilac        posjetilac = new Posjetilac();
            var               username   = APIService.Username;
            List <Posjetilac> lista      = await _apiposjetilac.Get <List <Posjetilac> >(null);

            foreach (var posjetilac1 in lista)
            {
                if (posjetilac1.KorisnickoIme == username)
                {
                    posjetilac = posjetilac1;
                    break;
                }
            }
            var req = new OcjenaSearchRequest
            {
                ReceptId     = recept.ReceptId,
                PosjetilacId = posjetilac.PosjetilacId
            };
            var ocjene = await _apiocjena.Get <List <Ocjena> >(req);

            if (ocjene != null && ocjene.Count > 0)
            {
                ocjena = ocjene[0];
                Ocjena = ocjena.ocjena;
            }
        }
Example #3
0
        public async Task Init(int eventId)
        {
            EventId = eventId;
            OcjenaSearchRequest request = new OcjenaSearchRequest {
                EventId = eventId, KorisnikId = Global.Korisnik.Id
            };
            List <Ocjena> ocjene = await _ocjenaService.Get <List <Ocjena> >(request);

            if (ocjene != null && ocjene.Count == 1)
            {
                Ocjena = ocjene[0];
                switch (Ocjena.OcjenaEventa)
                {
                case 1: ImgSourceZ1 = "starfilled.png"; break;

                case 2: ImgSourceZ1 = "starfilled.png"; ImgSourceZ2 = "starfilled.png"; break;

                case 3: ImgSourceZ1 = "starfilled.png"; ImgSourceZ2 = "starfilled.png"; ImgSourceZ3 = "starfilled.png"; break;

                case 4: ImgSourceZ1 = "starfilled.png"; ImgSourceZ2 = "starfilled.png"; ImgSourceZ3 = "starfilled.png"; ImgSourceZ4 = "starfilled.png";  break;

                case 5: ImgSourceZ1 = "starfilled.png"; ImgSourceZ2 = "starfilled.png"; ImgSourceZ3 = "starfilled.png"; ImgSourceZ4 = "starfilled.png"; ImgSourceZ5 = "starfilled.png"; break;

                default: break;
                }
                ocjena = Ocjena.OcjenaEventa;
                Poruka = "Ovaj event ste ocijenili sa ocjenom " + ocjena;
            }
        }
Example #4
0
        private async void cmbKompanije_SelectedIndexChanged(object sender, EventArgs e)
        {
            try
            {
                if (int.TryParse(cmbKompanije.SelectedValue.ToString(), out int id))
                {
                    if (id > 0)
                    {
                        var search = new OcjenaSearchRequest()
                        {
                            KompanijaId = id
                        };

                        var lista = await _ocjene.Get <List <Model.Ocjena> >(search);


                        dgvOcjene.DataSource = lista;
                    }
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, "Ocjena", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
Example #5
0
        private async void UcitajNekretnine(int nekretninaID)
        {
            NekretninaSearchRequest request      = new NekretninaSearchRequest();
            OcjenaSearchRequest     ocjenaSearch = new OcjenaSearchRequest();

            ocjenaSearch.NekretninaId  = nekretninaID;
            ocjenePosmatraneNekretnine = await _ocjeneService.Get <List <Model.Models.Ocjena> >(ocjenaSearch);

            _nekretnine = await _nekretninaService.Get <List <Nekretnina> >(request);

            List <Model.Models.Nekretnina> _aktivneNekretnine = await _nekretninaService.Get <List <Model.Models.Nekretnina> >(null);

            List <Model.Models.Ocjena> ocjene;

            foreach (var item in _aktivneNekretnine)
            {
                ocjenaSearch.NekretninaId = item.NekretninaId;
                ocjene = await _ocjeneService.Get <List <Model.Models.Ocjena> >(ocjenaSearch);

                if (ocjene.Count > 0)
                {
                    nekretnine.Add(item.NekretninaId, ocjene);
                }
            }
        }
Example #6
0
        public async Task LoadOcjeneDestinacije()
        {
            if (DestinacijaID != null)
            {
                var search = new OcjenaSearchRequest();
                search.DestinacijaID = int.Parse(DestinacijaID.ToString());

                var list = await _ocjeneservice.Get <IEnumerable <Ocjena> >(search);

                ListaOcjena.Clear();

                foreach (var x in list)
                {
                    var korisnik = await _korisniciservice.GetById <Korisnik>(x.KorisnikId);

                    KomentariModels komentar = new KomentariModels()
                    {
                        Id            = x.Id,
                        DestinacijaId = x.DestinacijaId,
                        Komentar      = x.Komentar,
                        OcjenaUsluge  = x.OcjenaUsluge,
                        KorisnikId    = korisnik.Id,
                        KorisnickoIme = korisnik.KorisnikoIme,
                        Slika         = korisnik.Slika
                    };


                    ListaOcjena.Add(komentar);
                }
            }
        }
        public List <Model.Models.Automobil> GetSlicnaVozila(int VoziloID)
        {
            UcitajVozila(VoziloID);
            OcjenaSearchRequest ocjenaSearch = new OcjenaSearchRequest()
            {
                VoziloId = VoziloID
            };

            List <Ocjena> zajednickeOcjene1 = new List <Ocjena>();
            List <Ocjena> zajednickeOcjene2 = new List <Ocjena>();


            List <Model.Models.Automobil> preporucenaVozila = new List <Automobil>();

            foreach (var item in vozila)
            {
                bool prvi = true;

                foreach (var o in ocjenePosmatranogVozila)
                {
                    foreach (var ocjeneVozila in item.Value.ToArray())
                    {
                        if (ocjeneVozila.KlijentId == o.KlijentId)
                        {
                            zajednickeOcjene1.Add(o);
                            if (prvi)
                            {
                                zajednickeOcjene2.Add(ocjeneVozila);
                                prvi = false;
                            }
                        }
                    }
                }
                double slicnost = GetSlicnost(zajednickeOcjene1, zajednickeOcjene2);
                if (slicnost > 0.5)
                {
                    bool ima = true;
                    foreach (var v in _vozila)
                    {
                        if (v.AutomobilId == VoziloID && ima)
                        {
                            preporucenaVozila.Add(v);
                            ima = false;
                        }
                    }
                }
                zajednickeOcjene1.Clear();
                zajednickeOcjene2.Clear();
            }

            return(preporucenaVozila);
        }
Example #8
0
        public async Task Init()
        {
            PreporuceniFilmovi.Clear();

            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);
            }
        }
        private async void Button_Clicked_4(object sender, EventArgs e)
        {
            var btn  = sender as Button;
            var item = btn.BindingContext as Recept;

            var p = item.ReceptId;

            KomentarSearchRequest       komentar = new KomentarSearchRequest();
            OcjenaSearchRequest         ocjena   = new OcjenaSearchRequest();
            ReceptSastojakSearchRequest sastojak = new ReceptSastojakSearchRequest();
            FavoritiSearchRequest       favoriti = new FavoritiSearchRequest();

            komentar.ReceptId = p;
            ocjena.ReceptId   = p;
            sastojak.ReceptId = p;
            favoriti.ReceptId = p;

            var listakomentara = await _apiKomentar.Get <IEnumerable <Komentar> >(komentar);

            var listaocjena = await _apiOcjena.Get <IEnumerable <Ocjena> >(ocjena);

            var listareceptsastojaka = await _apiReceptSastojak.Get <IEnumerable <ReceptSastojak> >(sastojak);

            var listafavorita = await _apiFavoriti.Get <IEnumerable <Favoriti> >(favoriti);

            foreach (var y in listakomentara)
            {
                await _apiKomentar.Delete <Komentar>(y.KomentarId);
            }
            foreach (var y in listaocjena)
            {
                await _apiOcjena.Delete <Ocjena>(y.OcjenaId);
            }
            foreach (var y in listareceptsastojaka)
            {
                await _apiReceptSastojak.Delete <ReceptSastojak>(y.ReceptSastojakId);
            }
            foreach (var y in listafavorita)
            {
                await _apiFavoriti.Delete <Favoriti>(y.FavoritiId);
            }
            await _apiRecept.Delete <Recept>(item.ReceptId);

            await DisplayAlert("OK", "Uspješno ste izbrisali recept", "OK");

            await Navigation.PushAsync(new MojiRecepti());
        }
        /*Ucitava vozila koja su: - dostupna
         *                       - iste kategorije kao i posmatrano vozilo
         *                       - imaju ocjenu
         *                       - cijena iznajmljivanja u rangu +-20%
         */
        private async void UcitajVozila(int voziloID)
        {
            OcjenaSearchRequest ocjenaSearch = new OcjenaSearchRequest()
            {
                VoziloId = voziloID
            };

            ocjenePosmatranogVozila = await _ocjeneService.Get <List <Model.Models.Ocjena> >(ocjenaSearch);


            var vozilo = await _vozilaService.GetById <Model.Models.Automobil>(voziloID);

            AutomobilSearchRequest request = new AutomobilSearchRequest();

            request.Dostupan = true;

            _vozila = await _vozilaService.Get <List <Model.Models.Automobil> >(request);

            request.KategorijaId = vozilo.KategorijaId;
            List <Model.Models.Automobil> aktivnaVozila = await _vozilaService.Get <List <Model.Models.Automobil> >(request);

            List <Model.Models.Ocjena> ocjene;


            ////Samo vozila sa cijenom iznajmljivanja u rangu +-20%
            //foreach (var item in aktivnaVozila)
            //{
            //    decimal posmatraniSaUmanjenomCijenom=item.CijenaIznajmljivanja*((decimal)(0.2));
            //    decimal donjaGranica =  vozilo.CijenaIznajmljivanja - posmatraniSaUmanjenomCijenom;
            //    decimal gornjaGranica = vozilo.CijenaIznajmljivanja + posmatraniSaUmanjenomCijenom;

            //    if (!(item.CijenaIznajmljivanja > donjaGranica && item.CijenaIznajmljivanja < gornjaGranica))
            //        aktivnaVozila.Remove(item);
            //}
            Dictionary <int, List <Ocjena> > vv = new Dictionary <int, List <Ocjena> >();

            foreach (var v in aktivnaVozila)
            {
                ocjenaSearch.VoziloId = v.AutomobilId;
                ocjene = await _ocjeneService.Get <List <Model.Models.Ocjena> >(ocjenaSearch);

                if (ocjene.Count > 0)
                {
                    vozila.Add(v.AutomobilId, ocjene);
                }
            }
        }
Example #11
0
        public async Task Init()
        {
            OcjenaSearchRequest searchRequest = new OcjenaSearchRequest();

            searchRequest.KlijentId    = _klijentId;
            searchRequest.NekretninaId = _nekretninaId;
            var entity = await _ocjeneService.Get <List <Model.Models.Ocjena> >(searchRequest);

            if (entity.Count > 0)
            {
                MozeOcijenit = false;
            }
            else
            {
                MozeOcijenit = true;
            }
        }
Example #12
0
        private async void EventIzvjestaj_Load(object sender, EventArgs e)
        {
            Event = await _eventiService.GetById <Event>(eventId);

            ProdajaTipSearchRequest request = new ProdajaTipSearchRequest {
                EventId = eventId
            };

            prodajaTipovi = await _prodajaTipService.Get <List <ProdajaTip> >(request);

            OcjenaSearchRequest ocjenaSearch = new OcjenaSearchRequest {
                EventId = eventId
            };

            Ocjene = await _ocjeneService.Get <List <Ocjena> >(ocjenaSearch);

            LikeSearchRequest likeSearch = new LikeSearchRequest {
                EventId = eventId
            };

            Likes = await _likeService.Get <List <Like> >(likeSearch);


            EventBindingSource.DataSource = Event;
            this.reportViewer1.LocalReport.SetParameters(new ReportParameter("Naziv", Event.Naziv));
            this.reportViewer1.LocalReport.SetParameters(new ReportParameter("Kategorija", Event.KategorijaNaziv));
            this.reportViewer1.LocalReport.SetParameters(new ReportParameter("Mjesto", Event.ProstorOdrzavanjaGradAdresa));
            this.reportViewer1.LocalReport.SetParameters(new ReportParameter("Naziv", Event.Naziv));
            this.reportViewer1.LocalReport.SetParameters(new ReportParameter("DatumOdrzavanja", Event.DatumOdrzavanja.ToShortDateString()));
            this.reportViewer1.LocalReport.SetParameters(new ReportParameter("Vrijeme", Event.VrijemeOdrzavanja));

            ReportDataSource rds = new ReportDataSource("DataSet1", prodajaTipovi);

            this.reportViewer1.LocalReport.DataSources.Add(rds);

            ReportDataSource rds2 = new ReportDataSource("DataSet2", Ocjene);

            this.reportViewer1.LocalReport.DataSources.Add(rds2);

            ReportDataSource rds3 = new ReportDataSource("DataSet3", Likes);

            this.reportViewer1.LocalReport.DataSources.Add(rds3);

            this.reportViewer1.RefreshReport();
        }
Example #13
0
        public override List <Model.Models.Ocjena> Get(OcjenaSearchRequest search)
        {
            var query = _context.Set <Database.Ocjena>().AsQueryable();

            if (search.KlijentId > 0)
            {
                query = query.Where(x => x.KlijentId == search.KlijentId);
            }

            if (search.NekretninaId > 0)
            {
                query = query.Where(x => x.NekretninaId == search.NekretninaId);
            }

            var list = query.ToList();

            List <Model.Models.Ocjena> result = _mapper.Map <List <Model.Models.Ocjena> >(list);

            return(result);
        }
Example #14
0
        public async Task <List <Nekretnina> > GetPreporuceneNekretnine(int nekretninaId)
        {
            List <Nekretnina> _preporuceneNekretnine = new List <Nekretnina>();

            Nekretnina posmatranaNekretnina = new Nekretnina();

            posmatranaNekretnina = await _nekretninaService.GetById <Nekretnina>(nekretninaId);

            NekretninaSearchRequest nekretninaSearchRequest = new NekretninaSearchRequest();

            nekretninaSearchRequest.GradId = posmatranaNekretnina.GradId;

            OcjenaSearchRequest ocjenaSearchRequest = new OcjenaSearchRequest();

            List <Nekretnina> nekretnine = await _nekretninaService.Get <List <Model.Models.Nekretnina> >(nekretninaSearchRequest);

            foreach (var nekretnina in nekretnine)
            {
                if (nekretnina.NekretninaId != nekretninaId)
                {
                    ocjenaSearchRequest.NekretninaId = nekretnina.NekretninaId;
                    List <Ocjena> ocjeneNekretnine = await _ocjeneService.Get <List <Ocjena> >(ocjenaSearchRequest);

                    double prosjekOcjena = 0;
                    foreach (var o in ocjeneNekretnine)
                    {
                        prosjekOcjena += o.Ocjena1;
                    }

                    prosjekOcjena = prosjekOcjena / ocjeneNekretnine.Count;

                    if (prosjekOcjena >= 2.5 && nekretnina.NekretninaId != nekretninaId)
                    {
                        _preporuceneNekretnine.Add(nekretnina);
                    }
                }
            }
            return(_preporuceneNekretnine);
        }
Example #15
0
        public override List <Model.Ocjena> Get([FromQuery] OcjenaSearchRequest request)
        {
            List <Model.Ocjena> ocjene = new List <Model.Ocjena>();

            if (request.KorisnikId == null)
            {
                ocjene = _context.Ocjena.Include(x => x.Korisnik).Where(x => x.PlanId == request.PlanId).Select(x => new Model.Ocjena
                {
                    ID                 = x.Id,
                    KorisnikId         = x.KorisnikId,
                    KorisnikImePrezime = x.Korisnik.Ime + " " + x.Korisnik.Prezime,
                    Opis               = x.Opis,
                    Rating             = x.Rating,
                    Vrijeme            = x.Vrijeme,
                    Datum              = x.Datum
                }).OrderByDescending(x => x.Datum)
                         .OrderByDescending(x => x.Vrijeme)
                         .ToList();
            }
            else
            {
                ocjene = _context.Ocjena.Include(x => x.Korisnik).Where(x => x.PlanId == request.PlanId && x.KorisnikId == request.KorisnikId).Select(x => new Model.Ocjena
                {
                    ID                 = x.Id,
                    KorisnikId         = x.KorisnikId,
                    KorisnikImePrezime = x.Korisnik.Ime + " " + x.Korisnik.Prezime,
                    Opis               = x.Opis,
                    Rating             = x.Rating,
                    Vrijeme            = x.Vrijeme,
                    Datum              = x.Datum
                }).OrderByDescending(x => x.Datum)
                         .OrderByDescending(x => x.Vrijeme)
                         .ToList();
            }
            return(ocjene);
        }
        public async Task LoadOcjene()
        {
            try
            {
                OcjenaSearchRequest request = new OcjenaSearchRequest
                {
                    byVoznjaID = true,
                    VoznjaID   = voznjaID
                };
                var ocjene = await _ocjena.Get <List <Ocjene> >(request);

                _OcjeneList.Clear();
                if (ocjene.Count != 0)
                {
                    foreach (var o in ocjene)
                    {
                        _OcjeneList.Add(o);
                    }
                }
            }
            catch (Exception)
            {
            }
        }
        private async void Button_Clicked_1(object sender, EventArgs e)
        {
            var btn  = sender as Button;
            var item = btn.BindingContext as GrupaJela;
            var p    = item.GrupaJelaId;
            ReceptSearchRequest searchrecept = new ReceptSearchRequest();

            searchrecept.GrupaJelaId = p;
            var listarecepata = await _serviceRecept.Get <IEnumerable <Recept> >(searchrecept);

            foreach (var y in listarecepata)
            {
                var receptid = y.ReceptId;
                ReceptSastojakSearchRequest receptsastojakrequest = new ReceptSastojakSearchRequest();
                receptsastojakrequest.ReceptId = receptid;
                var list1 = await _serviceReceptSastojak.Get <IEnumerable <ReceptSastojak> >(receptsastojakrequest);

                foreach (var a in list1)
                {
                    await _serviceReceptSastojak.Delete <ReceptSastojak>(a.ReceptSastojakId);
                }
                FavoritiSearchRequest favoritirequest = new FavoritiSearchRequest();
                favoritirequest.ReceptId = receptid;
                var list2 = await _serviceFavoriti.Get <IEnumerable <Favoriti> >(favoritirequest);

                foreach (var b in list2)
                {
                    await _serviceFavoriti.Delete <Favoriti>(b.FavoritiId);
                }
                NotifikacijaSearchRequest notifikacijarequest = new NotifikacijaSearchRequest();
                notifikacijarequest.ReceptId = receptid;
                var list3 = await _serviceNotifikacija.Get <IEnumerable <Notifikacija> >(notifikacijarequest);

                foreach (var c in list3)
                {
                    await _serviceNotifikacija.Delete <Notifikacija>(c.NotifikacijaId);
                }
                OcjenaSearchRequest ocjenarequest = new OcjenaSearchRequest();
                ocjenarequest.ReceptId = receptid;
                var list4 = await _serviceOcjena.Get <IEnumerable <Ocjena> >(ocjenarequest);

                foreach (var a in list4)
                {
                    await _serviceOcjena.Delete <IEnumerable <Ocjena> >(a.OcjenaId);
                }
                KomentarSearchRequest komentarrequest = new KomentarSearchRequest();
                komentarrequest.ReceptId = receptid;
                var list5 = await _serviceKomentar.Get <IEnumerable <Komentar> >(komentarrequest);

                foreach (var b in list5)
                {
                    await _serviceKomentar.Delete <Komentar>(b.KomentarId);
                }
                await _serviceRecept.Delete <Recept>(y.ReceptId);
            }
            await _service.Delete <GrupaJela>(p);

            await DisplayAlert("OK", "Uspješno ste izbrisali grupu jela", "OK");

            await Navigation.PushAsync(new PrikazGrupeJela());
        }
Example #18
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);
            }
        }