Esempio n. 1
0
        // GET: TakmicenjeController/Create
        public ActionResult Dodaj(int skolaID)
        {
            TakDodajVM model = new TakDodajVM()
            {
                SkolaID      = skolaID,
                SkolaDomacin = _db.Skola.Where(x => x.Id == skolaID).Select(x => x.Naziv).FirstOrDefault()
            };

            model.PredmetiList = _db.Predmet.GroupBy(x => x.Naziv).Select(x => x.First()).Select(x => new SelectListItem()
            {
                Value = x.Naziv,
                Text  = x.Naziv
            }).ToList();
            return(View(model));
        }
Esempio n. 2
0
        public ActionResult Dodaj(TakDodajVM model)
        {
            Predmet    p = _db.Predmet.Where(x => x.Naziv == model.Predmet && x.Razred == model.Razred).FirstOrDefault();
            Takmicenje t = new Takmicenje()
            {
                SkolaID    = model.SkolaID,
                PredmetID  = p.Id,
                Razred     = model.Razred,
                Datum      = model.Datum,
                Zakljucano = false
            };
            List <TakmicenjeUcesnik> temp = _db.DodjeljenPredmet
                                            .Where(x => x.Predmet.Id == p.Id && x.ZakljucnoKrajGodine == 5)
                                            .Select(x => new TakmicenjeUcesnik()
            {
                OdjeljenjeStavkaID = x.OdjeljenjeStavkaId,
                Bodovi             = 0,
                Pristupio          = false
            }).ToList();

            t.Ucesnici = new List <TakmicenjeUcesnik>();
            foreach (var item in temp)
            {
                if (_db.DodjeljenPredmet
                    .Where(x => x.OdjeljenjeStavkaId == item.OdjeljenjeStavkaID && x.Predmet.Razred == t.Razred)
                    .Select(x => x.ZakljucnoKrajGodine).Average() >= 4)
                {
                    t.Ucesnici.Add(item);
                }
            }

            _db.Add(t);
            _db.SaveChanges();

            return(RedirectToAction(nameof(Index)));
        }