public IActionResult Index(int?vrstaID, int?bojaID) { ProizvodiIndexVM model = new ProizvodiIndexVM(); model.Vrste = ctx.VrstaProizvoda.Select(y => new Microsoft.AspNetCore.Mvc.Rendering.SelectListItem { Value = y.Id.ToString(), Text = y.Naziv }).ToList(); model.Boje = ctx.Boja.Select(y => new Microsoft.AspNetCore.Mvc.Rendering.SelectListItem { Value = y.Id.ToString(), Text = y.Naziv }).ToList(); int katalogAkt = ctx.AkcijskiKatalog.Where(a => a.Aktivan == true).Count(); int?katalogID = null; if (katalogAkt > 0) { katalogID = ctx.AkcijskiKatalog.Where(a => a.Aktivan == true).FirstOrDefault().Id; } if (vrstaID == null && bojaID == null) { model.Proizvodi = ctx.Proizvod.Select(x => new ProizvodiIndexVM.ProizvodiInfo { Id = x.Id, Naziv = x.Naziv, Cijena = x.Cijena, Sifra = x.Sifra, Slika = x.Slika, BrojacBoja = ctx.ProizvodBoja.Where(p => p.ProizvodId == x.Id).Count(), Popust = (katalogID == null)?0:ctx.KatalogStavka.Where(s => s.ProizvodId == x.Id && s.AkcijskiKatalogId == katalogID).FirstOrDefault().PopustProcent, KonacnaCijena = x.Cijena - (x.Cijena * ctx.KatalogStavka.Where(s => s.AkcijskiKatalogId == 1 && s.ProizvodId == x.Id).FirstOrDefault().PopustProcent / 100) }).ToList(); } else { model.Proizvodi = ctx.Proizvod.Where(x => x.VrstaProizvodaId == vrstaID && bojaID == null || ((x.ProizvodBojas.Any(pb => pb.BojaId == bojaID) && vrstaID == null) || (x.VrstaProizvodaId == vrstaID && x.ProizvodBojas.Any(pb => pb.BojaId == bojaID))) ).Select(x => new ProizvodiIndexVM.ProizvodiInfo { Id = x.Id, Naziv = x.Naziv, Cijena = x.Cijena, Sifra = x.Sifra, Slika = x.Slika, BrojacBoja = ctx.ProizvodBoja.Where(p => p.ProizvodId == x.Id).Count(), Popust = (katalogID == null) ? 0 : ctx.KatalogStavka.Where(s => s.ProizvodId == x.Id && s.AkcijskiKatalogId == katalogID).FirstOrDefault().PopustProcent, KonacnaCijena = x.Cijena - (x.Cijena * ctx.KatalogStavka.Where(s => s.AkcijskiKatalogId == 1 && s.ProizvodId == x.Id).FirstOrDefault().PopustProcent / 100) }).ToList(); } return(View(model)); }
public IActionResult Index() { ProizvodiIndexVM Model = new ProizvodiIndexVM(); Model.listaProizvoda = new List <ProizvodiIndexVM.Row>(); Model.listaProizvoda = _db.Proizvodi.Select(x => new ProizvodiIndexVM.Row { ProizvodId = x.ProizvodID, Naziv = x.Naziv, CijenaBezPDV = x.CijenaBezPDV, CijenaSaPDV = x.CijenaSaPDV, MasaUKg = x.Masa, BarKod = x.BarKod }).ToList(); return(View(Model)); }