Ejemplo n.º 1
0
        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));
        }
Ejemplo n.º 2
0
        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));
        }