Ejemplo n.º 1
0
        public async Task <IActionResult> Uredi(AdminVarijacijaVM model)
        {
            Slika slika;
            ProizvodVarijacija varijacija = dbContext.ProizvodVarijacija.Find(model.Id);

            if (!ModelState.IsValid)
            {
                slika = dbContext.Slika.Find(varijacija.SlikaId);
                var proizvodi = dbContext.Proizvod.Select(p => new Proizvod
                {
                    Id            = p.Id,
                    Kategorija    = p.Kategorija,
                    KategorijaId  = p.Kategorija.Id,
                    Naziv         = p.Naziv,
                    Proizvodjac   = p.Proizvodjac,
                    ProizvodjacId = p.Proizvodjac.Id
                }).ToList();
                //.Select(v => new ProizvodVarijacija { Id = v.Id, Cijena = v.Cijena, Opis = v.Opis, Proizvod = v.Proizvod, ProizvodId =v.ProizvodId, Velicina = v.Velicina, Slika = v.Slika, SlikaId = v.SlikaId }).ToList();
                model.ProizvodList = proizvodi;
                model.Slika        = slika.Putanja;

                model.Title = "Uredi";
                return(View("Views/Admin/Varijacija/Uredi.cshtml", model));
            }

            if (varijacija == null)
            {
                return(NotFound());
            }

            if (model.SlikaFile != null)
            {
                string uniqueFileName = UploadedFile(model);
                slika = new Slika
                {
                    Putanja = uniqueFileName
                };

                dbContext.Add(slika);
                await dbContext.SaveChangesAsync();

                varijacija.SlikaId = slika.Id;
                varijacija.Slika   = slika;
            }


            varijacija.Opis       = model.Opis;
            varijacija.Velicina   = model.Velicina;
            varijacija.Cijena     = model.Cijena;
            varijacija.ProizvodId = model.ProizvodId;

            dbContext.Update(varijacija);

            dbContext.SaveChanges();
            return(RedirectToRoute("AdminVarijacijaIndex"));
        }
Ejemplo n.º 2
0
        public async Task <IActionResult> Dodaj(AdminVarijacijaVM model)
        {
            if (!ModelState.IsValid /*|| model.SlikaFile == null*/)
            {
                //    if(model.SlikaFile == null)
                //    {
                //        ModelState.AddModelError("Slika", "Slika je obavezna");
                //    }

                var proizvodi = dbContext.Proizvod.Select(p => new Proizvod
                {
                    Id            = p.Id,
                    Kategorija    = p.Kategorija,
                    KategorijaId  = p.Kategorija.Id,
                    Naziv         = p.Naziv,
                    Proizvodjac   = p.Proizvodjac,
                    ProizvodjacId = p.Proizvodjac.Id
                }).ToList();
                model.ProizvodList = proizvodi;

                model.Title = "Varijacija";

                return(View("Views/Admin/Varijacija/Dodaj.cshtml", model));
            }

            string uniqueFileName = UploadedFile(model);
            Slika  slika          = new Slika
            {
                Putanja = uniqueFileName
            };

            dbContext.Add(slika);
            await dbContext.SaveChangesAsync();

            var varijacija = new ProizvodVarijacija
            {
                Id         = model.Id,
                Cijena     = model.Cijena,
                Opis       = model.Opis,
                Velicina   = model.Velicina,
                ProizvodId = model.ProizvodId,
                SlikaId    = model.SlikaId,
                Slika      = slika
            };

            dbContext.Add(varijacija);

            dbContext.SaveChanges();

            var v = dbContext.ProizvodVarijacija.Include(x => x.Proizvod).Include(x => x.Proizvod.Proizvodjac).Where(x => x.Id == varijacija.Id).FirstOrDefault();

            _hubContext.Clients.All.SendAsync("ReceiveMessage", "korisniče", v.Proizvod.Naziv + " " + "proizvodjača" + " " + v.Proizvod.Proizvodjac.Naziv);
            return(RedirectToRoute("AdminVarijacijaIndex"));
        }
Ejemplo n.º 3
0
        public async Task <IActionResult> Obrisi(int id)
        {
            try
            {
                ProizvodVarijacija varijacija = dbContext.ProizvodVarijacija.Find(id);

                dbContext.ProizvodVarijacija.Attach(varijacija);
                dbContext.ProizvodVarijacija.Remove(varijacija);

                await dbContext.SaveChangesAsync();
            }
            catch (Exception)
            {
                if (!dbContext.ProizvodVarijacija.Any(i => i.Id == id))
                {
                    return(NotFound());
                }
            }
            return(RedirectToRoute("AdminVarijacijaIndex"));
        }