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); }
public void Insert(ArtikliInsertRequest request) { Model.Database.Artikli entity = _mapper.Map <Model.Database.Artikli>(request); _context.Artikli.Add(entity); _context.SaveChanges(); }
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); } } }