Esempio n. 1
0
        public List <Artikli> GetSlicneArtikle(int artikalID)
        {
            UcitajProizvode(artikalID);


            List <Ocjene> ocjenePosmatranogProizvoda  = new List <Ocjene>();
            List <Model.Database.Ocjene> ocjeneizbaze = _context.Ocjene.Where(x => x.ArtikalId == artikalID).OrderBy(y => y.KlijentId).ToList();

            _mapper.Map(ocjeneizbaze, ocjenePosmatranogProizvoda);



            List <Ocjene> zajednickeOcjene1 = new List <Ocjene>();
            List <Ocjene> zajednickeOcjene2 = new List <Ocjene>();
            List <Model.Models.Artikli> preporuceniProizvodi = new List <Model.Models.Artikli>();

            foreach (var item in proizvodi)
            {
                foreach (Ocjene o in ocjenePosmatranogProizvoda)
                {
                    if (item.Value.Where(x => x.KlijentId == o.KlijentId).Count() > 0)
                    {
                        zajednickeOcjene1.Add(o);
                        zajednickeOcjene2.Add(item.Value.Where(x => x.KlijentId == o.KlijentId).First());
                    }
                }

                double slicnosti = 0;
                slicnosti = GetSlicnost(zajednickeOcjene1, zajednickeOcjene2);


                if (slicnosti > 0.99)
                {
                    Model.Database.Artikli element1 = _context.Artikli.Include(y => y.Proizvodjaci).Include(z => z.Modeli).Where(x => x.ArtikalId == item.Key).FirstOrDefault();
                    Model.Models.Artikli   element2 = new Model.Models.Artikli();

                    element2.Model            = element1.Modeli.Naziv;
                    element2.Proizvodjac      = element1.Proizvodjaci.Naziv;
                    element2.KarakteristikeId = element1.KarakteristikeId;
                    element2.Cijena           = element1.Cijena;
                    element2.ArtikalId        = element1.ArtikalId;
                    element2.Naziv            = element1.Naziv;
                    element2.Sifra            = element1.Sifra;
                    element2.Slika            = element1.Slika;
                    element2.SlikaThumb       = element1.SlikaThumb;
                    element2.Status           = element1.Status;
                    element2.ModelId          = element1.ModelId;
                    element2.ProizvodjacId    = element1.ProizvodjacId;



                    preporuceniProizvodi.Add(element2);
                }

                zajednickeOcjene1.Clear();
                zajednickeOcjene2.Clear();
            }

            return(preporuceniProizvodi);
        }
        public List <StavkeNabavke> Get()
        {
            var list = _context.NabavkaStavke.Include(x => x.Artikal).ToList();

            var StavkeNabavkeList = new List <StavkeNabavke>();

            foreach (var item in list)
            {
                Model.Database.Artikli artikal = _context.Artikli
                                                 .Where(x => x.ArtikalId == item.ArtikalId)
                                                 .Include(y => y.Karakteristike).Include(p => p.Modeli).Include(z => z.Proizvodjaci)
                                                 .SingleOrDefault();

                StavkeNabavke stavka = new StavkeNabavke();

                stavka.ArtikalId       = item.ArtikalId;
                stavka.Cijena          = item.Cijena;
                stavka.NabavkaId       = item.NabavkaId;
                stavka.Kolicina        = item.Kolicina;
                stavka.StavkeNabavkeId = item.NabavkaStavkeId;
                stavka.Artikal         = artikal.Naziv;
                stavka.Model           = artikal.Modeli.Naziv;
                stavka.Proizvodjac     = artikal.Proizvodjaci.Naziv;
                stavka.Slika           = artikal.SlikaThumb;

                StavkeNabavkeList.Add(stavka);
            }

            return(StavkeNabavkeList);
        }
Esempio n. 3
0
        public void Insert(ArtikliInsertRequest request)
        {
            Model.Database.Artikli entity = _mapper.Map <Model.Database.Artikli>(request);


            _context.Artikli.Add(entity);
            _context.SaveChanges();
        }
Esempio n. 4
0
        private void UcitajProizvode(int artikalId)
        {
            List <Model.Database.Artikli> aktivniProizvodi = _context.Artikli.Include(y => y.Proizvodjaci).Include(z => z.Modeli).Where(x => x.ArtikalId != artikalId).ToList();

            Model.Database.Artikli posmatraniartikal = _context.Artikli.Where(x => x.ArtikalId == artikalId).SingleOrDefault();

            List <Model.Models.Artikli> novalista = new List <Model.Models.Artikli>();

            _mapper.Map(aktivniProizvodi, novalista);



            List <Model.Models.Artikli> listakonacna = new List <Model.Models.Artikli>();

            foreach (var item in novalista)
            {
                if (item.ProizvodjacId == posmatraniartikal.ProizvodjacId)
                {
                    listakonacna.Add(item);
                }
            }


            foreach (Artikli a in listakonacna)
            {
                List <Model.Database.Ocjene> novalistaocjena = _context.Ocjene.Where(x => x.ArtikalId == a.ArtikalId).ToList();
                List <Ocjene> ocjene = new List <Ocjene>();
                foreach (var item2 in novalistaocjena)
                {
                    Ocjene novaocjena = new Ocjene();
                    novaocjena.Datum     = item2.Datum;
                    novaocjena.Ocjena    = item2.Ocjena;
                    novaocjena.OcjenaId  = item2.OcjenaId;
                    novaocjena.ArtikalId = item2.ArtikalId;
                    novaocjena.KlijentId = item2.KlijentId;


                    ocjene.Add(novaocjena);
                }

                if (ocjene.Count > 0)
                {
                    proizvodi.Add(a.ArtikalId, ocjene);
                }
            }
        }