public IActionResult Create() { var item = _context.Zanimanje.ToList(); NatjecajViewModel m1 = new NatjecajViewModel(); m1.Zanimanja = item.Select(vm => new CheckBoxViewModel() { ID = vm.ZanimanjeClassID, Ime = vm.Naziv, MaxKolicina = vm.Kolicina, }).ToList();; var opre = _context.Oprema.ToList(); m1.Oprema = opre.Select(vmo => new CheckBoxViewModelOprema() { ID = vmo.OpremaClassID, Ime = vmo.Naziv, MaxKolicina = vmo.Kolicina, }).ToList();; return(View(m1)); }
public IActionResult Create(NatjecajViewModel NVM, NatjecajClass natjecaji, ArhivaNatjecajClass arhiva, NatjecajToZanimanje NZ, NatjecajToOprema UP, ZanimanjeClass ZC) { List <NatjecajToZanimanje> utz = new List <NatjecajToZanimanje>(); List <NatjecajToOprema> utp = new List <NatjecajToOprema>(); List <ArhivaNatjecajToZanimanje> atz = new List <ArhivaNatjecajToZanimanje>(); List <ArhivaNatjecajToOprema> atp = new List <ArhivaNatjecajToOprema>(); natjecaji.Naziv = NVM.Naziv; natjecaji.Cijena = NVM.Cijena; natjecaji.Opis = NVM.Opis; natjecaji.Lokacija = NVM.Lokacija; _context.Natjecaj.Add(natjecaji); _context.SaveChanges(); arhiva.Naziv = NVM.Naziv; arhiva.Cijena = NVM.Cijena; arhiva.Opis = NVM.Opis; arhiva.Lokacija = NVM.Lokacija; arhiva.NatjecajClassID = natjecaji.NatjecajClassID; _context.ArhivaNatjecaj.Add(arhiva); _context.SaveChanges(); int natjecajid = natjecaji.NatjecajClassID; int arhivaid = arhiva.ArhivaNatjecajClassID; foreach (var item in NVM.Zanimanja) { var oduzmi = _context.Zanimanje.Where(x => item.ID == x.ZanimanjeClassID).ToList(); foreach (var stock in oduzmi) { stock.Kolicina = stock.Kolicina - item.Kolicina; } if (item.Kolicina > 0) { utz.Add(new NatjecajToZanimanje() { NatjecajClassID = natjecajid, ZanimanjeClassID = item.ID, Kolicina = item.Kolicina, Naziv = item.Ime }); atz.Add(new ArhivaNatjecajToZanimanje() { ArhivaNatjecajClassID = arhivaid, ZanimanjeClassID = item.ID, Kolicina = item.Kolicina, Naziv = item.Ime }); } } foreach (var item in utz) { _context.NatjecajToZanimanjes.Add(item); } foreach (var item in atz) { _context.ArhivaNatjecajToZanimanjes.Add(item); } foreach (var item2 in NVM.Oprema) { var oduzmi = _context.Oprema.Where(x => item2.ID == x.OpremaClassID).ToList(); foreach (var stock in oduzmi) { stock.Kolicina = stock.Kolicina - item2.Kolicina; } if (item2.Kolicina > 0) { utp.Add(new NatjecajToOprema() { NatjecajClassID = natjecajid, OpremaClassID = item2.ID, Kolicina = item2.Kolicina, Naziv = item2.Ime }); atp.Add(new ArhivaNatjecajToOprema() { ArhivaNatjecajClassID = arhivaid, OpremaClassID = item2.ID, Kolicina = item2.Kolicina, Naziv = item2.Ime }); } } foreach (var item2 in utp) { _context.NatjecajToOpremas.Add(item2); } foreach (var item2 in atp) { _context.ArhivaNatjecajToOpremas.Add(item2); } _context.SaveChanges(); return(RedirectToAction("Index", "Natjecaj")); }