Exemple #1
0
        public IActionResult Dodaj(int SkolaId, int?Razred)
        {
            var skola         = _context.Skola.Find(SkolaId);
            var listaPredemta = _context.Predmet.Where(p => Razred.HasValue && p.Razred == Razred.Value)
                                .Select(p => new SelectListItem
            {
                Value = p.Id.ToString(),
                Text  = p.Naziv
            }).ToList();
            List <SelectListItem> razredi = new List <SelectListItem>();

            for (var i = 1; i <= 4; i++)
            {
                razredi.Add(new SelectListItem {
                    Value = i.ToString(), Text = i.ToString()
                });
            }
            TakmicenjeDodajVM model = new TakmicenjeDodajVM
            {
                Skola    = skola.Naziv,
                SkolaId  = skola.Id,
                Predmeti = listaPredemta,
                Razredi  = razredi
            };

            return(View(model));
        }
        public IActionResult Snimi(TakmicenjeDodajVM model)
        {
            Takmicenje takmicenje = new Takmicenje
            {
                Datum          = model.Datum,
                PredmetId      = model.PredmetId,
                Razred         = model.Razred,
                SkolaDomacinId = model.SkolaDomacinId
            };

            db.Takmicenje.Add(takmicenje);

            var dodjeljenPredmet = db.DodjeljenPredmet
                                   .Include(x => x.OdjeljenjeStavka)
                                   .ThenInclude(x => x.Ucenik)
                                   .Include(x => x.Predmet);

            foreach (var stavka in dodjeljenPredmet)
            {
                if ((stavka.Predmet.Id == takmicenje.PredmetId && stavka.ZakljucnoKrajGodine == 5) ||
                    db.DodjeljenPredmet.Where(y => y.Id == stavka.Id).Average(y => y.ZakljucnoKrajGodine) > 4.0)
                {
                    TakmicenjeUcesnik ucesnik = new TakmicenjeUcesnik
                    {
                        Takmicenje         = takmicenje,
                        IsPristupio        = false,
                        BrojBodova         = 0,
                        OdjeljenjeStavkaId = stavka.OdjeljenjeStavkaId
                    };
                    db.TakmicenjeUcesnik.Add(ucesnik);
                }
            }
            db.SaveChanges();
            return(Redirect("Index"));
        }
Exemple #3
0
        public IActionResult Dodaj(TakmicenjeDodajVM model)
        {
            Takmicenje novoTakmicenje = new Takmicenje
            {
                SkolaId   = model.SkolaId,
                PredmetId = model.PredmetId,
                Razred    = model.Razred,
                Datum     = model.Datum,
                Zakljucan = false
            };

            _context.Takmicenje.Add(novoTakmicenje);
            _context.SaveChanges();

            var listaPredmeta = _context.DodjeljenPredmet.Where(dp => dp.PredmetId == novoTakmicenje.PredmetId && dp.ZakljucnoKrajGodine == 5).ToList();

            foreach (var p in listaPredmeta)
            {
                if (_context.DodjeljenPredmet.Where(dp => dp.Id == p.Id).Average(dp => dp.ZakljucnoKrajGodine) >= 4)
                {
                    TakmicenjeUcesnik noviUcesnik = new TakmicenjeUcesnik
                    {
                        TakmicenjeId       = novoTakmicenje.Id,
                        OdjeljenjeStavkaId = p.OdjeljenjeStavkaId,
                        Pristupio          = true
                    };
                    _context.TakmicenjeUcesnik.Add(noviUcesnik);
                    _context.SaveChanges();
                }
            }
            return(RedirectToAction(nameof(PrikazTakmicenja), new { SkolaId = model.SkolaId, Razred = model.Razred }));
        }
        public IActionResult Snimi(TakmicenjeDodajVM model)
        {
            var takmicenje = new Takmicenje
            {
                SkolaId    = model.Skola.Id,
                PredmetId  = model.Predmet.Id,
                Datum      = model.Datum,
                Zakljucano = false
            };

            _context.Takmicenje.Add(takmicenje);
            _context.SaveChanges();

            var ucesnici = _context.DodjeljenPredmet.Where(x => x.PredmetId == model.Predmet.Id &&
                                                           x.ZakljucnoKrajGodine > 3).Select(x => new TakmicenjeUcesnik
            {
                TakmicenjeId       = takmicenje.Id,
                OdjeljenjeStavkaId = x.OdjeljenjeStavkaId,
                Pristupio          = false,
                Bodovi             = null
            });

            _context.TakmicenjeUcesnik.AddRange(ucesnici);
            _context.SaveChanges();

            return(Redirect("Index"));
        }
Exemple #5
0
        public IActionResult Dodaj(TakmicenjeDodajVM model)
        {
            Takmicenje t = new Takmicenje
            {
                SkolaID   = model.skolaID,
                PredmetID = model.predmetID,
                razred    = model.razred,
                datum     = model.datum
            };

            List <TakmicenjeUcesnik> lista = new List <TakmicenjeUcesnik>();

            lista = db.DodjeljenPredmet.Where(x => x.PredmetId == model.predmetID && x.ZakljucnoKrajGodine == 5).Select(x => new TakmicenjeUcesnik()
            {
                OdjeljenjeStavkaID = x.OdjeljenjeStavkaId,
                bodovi             = 0,
                isPristupio        = false,
            }).ToList();

            foreach (var x in lista)
            {
                if (db.DodjeljenPredmet.Where(o => o.OdjeljenjeStavkaId == x.OdjeljenjeStavkaID).Select(o => o.ZakljucnoKrajGodine).Average() > 4)
                {
                    t.ucesnici.Add(x);
                }
            }

            db.Takmicenje.Add(t);
            db.SaveChanges();
            return(RedirectToAction("Pregled", new { skolaID = model.skolaID, razred = model.razred }));
        }
        public IActionResult Dodaj(int SkolaFilterId, int PredmetFilterId)
        {
            var model = new TakmicenjeDodajVM
            {
                Skola   = _context.Skola.Find(SkolaFilterId),
                Predmet = _context.Predmet.Find(PredmetFilterId),
                Datum   = DateTime.Now
            };

            return(View(model));
        }
Exemple #7
0
        public IActionResult Dodaj(int skolaID)
        {
            TakmicenjeDodajVM model = db.Skola.Where(x => x.Id == skolaID).Select(x => new TakmicenjeDodajVM
            {
                skolaID = x.Id,
                skola   = x.Naziv
            }).FirstOrDefault();

            model.predmeti = db.Predmet.Select(x => new SelectListItem
            {
                Value = x.Id.ToString(),
                Text  = x.Naziv
            }).ToList();

            return(View(model));
        }
Exemple #8
0
        // GET: TakmicenjeController/Create
        public ActionResult Dodaj(int skolaId)
        {
            TakmicenjeDodajVM model = new TakmicenjeDodajVM();

            model.SkolaDomacin = _db.Skola.Where(x => x.Id == skolaId).Select(x => x.Naziv).FirstOrDefault();
            model.SkolaId      = skolaId;

            model.PredmetiList = _db.Predmet.GroupBy(x => x.Naziv).Select(x => x.First()).Select(x =>
                                                                                                 new SelectListItem()
            {
                Text  = x.Naziv,
                Value = x.Naziv.ToString()
            }).ToList();

            return(View(nameof(Dodaj), model));
        }
Exemple #9
0
        public ActionResult Dodaj(int skolaId, int razred)
        {
            TakmicenjeDodajVM model = new TakmicenjeDodajVM
            {
                Razred        = razred,
                ListaPredmeta = _context.Predmet.Select(p => new Microsoft.AspNetCore.Mvc.Rendering.SelectListItem
                {
                    Value = p.Id.ToString(),
                    Text  = p.Naziv
                }).ToList(),
                SkolaId = skolaId,
                Skola   = _context.Skola.Find(skolaId).Naziv
            };

            return(View(model));
        }
        public IActionResult DodajTakmicenje(TakmicenjeDodajVM model)
        {
            //Dodavnanje novog takmicenja

            //Preuzimanje predmeta po nazivu i za izabranu godinu
            Predmet p = _db.Predmet.Where(x => x.Naziv.Equals(model.Predmet) && x.Razred == model.Razred).FirstOrDefault();

            Takmicenje takmicenje = new Takmicenje()
            {
                SkolaID   = model.SkolaID,
                PredmetID = p.Id,
                Razred    = model.Razred,
                Datum     = model.Datum
            };

            //Dodavanje Ucenika na Takmicenje


            List <TakmicenjeUcesnik> temp = new List <TakmicenjeUcesnik>();

            //preuzimanje ucenika i kreiranje liste Za TakmicenjeUcesnik, uslov : učenici iz svih škola koji imaju zaključnu ocjenu 5 za odabrani predmet

            temp = _db.DodjeljenPredmet.Where(x => x.Predmet.Id == p.Id && x.ZakljucnoKrajGodine == 5).Select(x => new TakmicenjeUcesnik()
            {
                OdjeljenjeStavkaID = x.OdjeljenjeStavkaId,
                Pristupio          = false,
                Bodovi             = 0
            }).ToList();

            takmicenje.Ucesnici = new List <TakmicenjeUcesnik>();


            // Uslov :  iskjučiti učenike čiji je prosjek ocjena iz svih  predmeta manji od 4.0, provjera prosjeka za svaki dodjeljeniPredmet (DodjeljeniPredmet sadrzi sve informacije koje su potrebne za dodavanje ucenika na Takmicenje(Razred,Ocjene) za jednog ucenika(OdjeljenjeStavka))
            foreach (var item in temp)
            {
                if (_db.DodjeljenPredmet.Where(x => x.OdjeljenjeStavkaId == item.OdjeljenjeStavkaID && x.OdjeljenjeStavka.Odjeljenje.Razred == takmicenje.Razred).Select(x => x.ZakljucnoKrajGodine).Average() > 4)
                {
                    takmicenje.Ucesnici.Add(item);
                }
            }

            _db.Takmicenje.Add(takmicenje);
            _db.SaveChanges();

            return(RedirectToActionPermanent(nameof(Detalji), new { SkolaID = model.SkolaID }));
        }
        public IActionResult Dodaj(int skoladomacinId)
        {
            TakmicenjeDodajVM model = new TakmicenjeDodajVM
            {
                Predmeti = db.Predmet
                           .GroupBy(x => x.Naziv)
                           .Select(x => x.First())
                           .Select(x => new SelectListItem
                {
                    Text  = x.Naziv,
                    Value = x.Id.ToString()
                }).ToList(),
                SkolaDomacin   = db.Skola.Where(x => x.Id == skoladomacinId).SingleOrDefault().Naziv,
                SkolaDomacinId = db.Skola.Where(x => x.Id == skoladomacinId).SingleOrDefault().Id
            };

            return(View(model));
        }
Exemple #12
0
        public ActionResult Snimi(TakmicenjeDodajVM model)
        {
            Takmicenje t = new Takmicenje
            {
                Datum      = model.Datum,
                PredmetId  = model.PredmetId,
                SkolaID    = model.SkolaId,
                Zakljucano = false
            };

            _context.Takmicenje.Add(t);
            _context.SaveChanges();

            List <OdjeljenjeStavka> listaOS = _context.DodjeljenPredmet.Where(dp => dp.PredmetId == model.PredmetId && dp.ZakljucnoKrajGodine == 5).Select(dp => dp.OdjeljenjeStavka).ToList();

            foreach (var x in listaOS)
            {
                double prosjek = _context.DodjeljenPredmet.Where(dp => dp.OdjeljenjeStavkaId == x.Id).Average(dp => dp.ZakljucnoKrajGodine);

                if (prosjek >= 4)
                {
                    TakmicenjeUcesnik tu = new TakmicenjeUcesnik
                    {
                        OdjeljenjeStavkaId = x.Id,
                        Pristupio          = false,
                        Rezultat           = 0,
                        TakmicenjeId       = t.Id
                    };

                    _context.TakmicenjeUcesnik.Add(tu);
                    _context.SaveChanges();
                }
            }



            TakmicenjeIndexVM newTI = new TakmicenjeIndexVM
            {
                SkolaId = model.SkolaId,
                Razred  = model.Razred
            };

            return(RedirectToAction("Index"));
        }
        //Korak 3: Akcija za otvaranje View-a za dodavanje Takmicenja
        public IActionResult DodajTakmicenje(int SkolaID)
        {
            TakmicenjeDodajVM dodajVM = _db.Skola.Where(x => x.Id == SkolaID).Select(x => new TakmicenjeDodajVM()
            {
                SkolaID = x.Id,
                Skola   = x.Naziv
            }).FirstOrDefault();

            //Posto u tabeli ima istih naziva predemta, grupiramo po nazivu nakon toga selektiramo prvi u grupi te selektiramo i pravimo new SelectLsitItem
            dodajVM.Predmeti = _db.Predmet.GroupBy(x => x.Naziv).Select(x => x.First()).Select(x => new SelectListItem()
            {
                Text  = x.Naziv,
                Value = x.Naziv.ToString()
            }).ToList();



            return(View(dodajVM));
        }
Exemple #14
0
        public IActionResult Dodaj(int id)
        {
            TakmicenjeDodajVM vm = new TakmicenjeDodajVM
            {
                Datum   = DateTime.Today,
                Predmet = _context.Predmet.GroupBy(i => i.Naziv).Select(a => a.First()).Select(x => new SelectListItem
                {
                    Text  = x.Naziv,
                    Value = x.Id.ToString()
                }).ToList(),
                Razred = _context.Odjeljenje.Select(x => new SelectListItem
                {
                    Text  = x.Razred.ToString(),
                    Value = x.Razred.ToString()
                }).Distinct().ToList(),
                SkolaDomacin = _context.Skola.Where(x => x.Id == id).Select(x => x.Naziv).FirstOrDefault(),
                SkolaID      = id
            };

            return(View(vm));
        }
        public IActionResult Dodaj(int Id)
        {
            var skola   = ctx.Skola.Find(Id);
            var Razredi = new List <int> {
                1, 2, 3, 4
            };
            var model = new TakmicenjeDodajVM
            {
                SkolaId  = Id,
                Skola    = skola.Naziv,
                Predmeti = ctx.Predmet
                           .GroupBy(i => i.Naziv)
                           .Select(i => i.First())
                           .Select
                           (
                    i => new SelectListItem
                {
                    Value = i.Naziv,
                    Text  = i.Naziv
                }
                           )
                           .ToList(),
                Razredi = Razredi
                          .ConvertAll
                          (
                    i =>
                {
                    return(new SelectListItem()
                    {
                        Text = i.ToString(),
                        Value = i.ToString(),
                        Selected = false
                    });
                }
                          )
            };

            return(View(model));
        }
Exemple #16
0
        public ActionResult Dodaj(TakmicenjeDodajVM 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,
                Datum      = model.Datum,
                Razred     = model.Razred,
                Zakljuceno = false
            };
            List <TakmicenjeUcesnik> temp = new List <TakmicenjeUcesnik>();

            temp = _db.DodjeljenPredmet.Where(x => x.PredmetId == p.Id && x.ZakljucnoKrajGodine == 5).Select(x =>
                                                                                                             new TakmicenjeUcesnik()
            {
                OdjeljenjeStavkaId = x.OdjeljenjeStavkaId,
                Pristupio          = false,
                Bodovi             = 0
            }).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(Detalji), new { skolaId = model.SkolaId }));
        }
        public IActionResult Snimi(TakmicenjeDodajVM model)
        {
            var Predmet = ctx.Predmet
                          .Where(i => i.Naziv.Equals(model.Predmet) && i.Razred == model.Razred)
                          .FirstOrDefault();

            var Takmicenje = new Takmicenje
            {
                SkolaId      = model.SkolaId,
                PredmetId    = Predmet.Id,
                Razred       = model.Razred,
                Datum        = model.Datum,
                IsZakljucano = false
            };

            ctx.Add(Takmicenje);
            ctx.SaveChanges();

            var Takmicari = ctx.DodjeljenPredmet
                            .Where
                            (
                i => i.Predmet.Id == Predmet.Id &&
                i.ZakljucnoKrajGodine == 5
                            )
                            .Select
                            (
                i => new TakmicenjeUcesnik
            {
                OdjeljenjeStavkaId = i.OdjeljenjeStavkaId,
                IsPristupio        = false,
                Bodovi             = 0
            }
                            )
                            .ToList();

            foreach (var Takmicar in Takmicari)
            {
                bool flag = ctx.DodjeljenPredmet
                            .Where
                            (
                    i => i.OdjeljenjeStavkaId == Takmicar.OdjeljenjeStavkaId &&
                    i.OdjeljenjeStavka.Odjeljenje.Razred == Takmicenje.Razred
                            )
                            .Select
                            (
                    i => i.ZakljucnoKrajGodine
                            )
                            .Average() > 4;

                if (flag)
                {
                    var NoviTakmicar = new TakmicenjeUcesnik()
                    {
                        TakmicenjeId       = Takmicenje.Id,
                        OdjeljenjeStavkaId = Takmicar.OdjeljenjeStavkaId,
                        IsPristupio        = false,
                        Bodovi             = 0
                    };

                    ctx.Add(NoviTakmicar);
                    ctx.SaveChanges();
                }
            }



            return(Redirect("/Takmicenje/Index"));
        }
Exemple #18
0
        public IActionResult Snimi(TakmicenjeDodajVM takmicenjeDodajVM)
        {
            Takmicenje tak = new Takmicenje
            {
                Datum        = takmicenjeDodajVM.Datum,
                IsZakljucano = false,
                PredmetID    = takmicenjeDodajVM.PredmetID,
                Razred       = takmicenjeDodajVM.RazredID,
                SkolaID      = takmicenjeDodajVM.SkolaID
            };

            _context.Add(tak);
            _context.SaveChanges();

            //var ucesnici = _context.DodjeljenPredmet.Include(i=>i.OdjeljenjeStavka).Include(i=>i.OdjeljenjeStavka.Odjeljenje).Where(x => x.ZakljucnoKrajGodine == 5).Select(i => new TakmicenjeStavka
            //{
            //    OdjeljenjeStavkaID = i.OdjeljenjeStavkaId,
            //    IsPristupio = false,
            //    Bodovi = 0,
            //    OdjeljenjeStavka = i.OdjeljenjeStavka
            //}).ToList();

            var ucesnici = _context.DodjeljenPredmet
                           .Include(i => i.OdjeljenjeStavka)
                           .ThenInclude(i => i.Odjeljenje)
                           .Where
                           (
                i => i.Predmet.Id == takmicenjeDodajVM.PredmetID &&
                i.ZakljucnoKrajGodine == 5
                           )
                           .Select
                           (
                i => new TakmicenjeStavka
            {
                OdjeljenjeStavkaID = i.OdjeljenjeStavkaId,
                OdjeljenjeStavka   = i.OdjeljenjeStavka,
                IsPristupio        = false,
                Bodovi             = 0
            }
                           )
                           .ToList();

            var noviTakmicari = new List <TakmicenjeStavka>();

            foreach (var item in ucesnici)
            {
                var predmeti = _context.DodjeljenPredmet
                               .Include(i => i.OdjeljenjeStavka)
                               .ThenInclude(i => i.Odjeljenje)
                               .Where
                               (
                    i => i.OdjeljenjeStavkaId == item.OdjeljenjeStavkaID
                               )
                               .ToList();
                bool flag =
                    predmeti.Any() ?
                    predmeti.Select
                    (
                        i => i.ZakljucnoKrajGodine
                    )
                    .Average() > 4 :
                    false;


                if (flag)
                {
                    var NoviTakmicar = new TakmicenjeStavka()
                    {
                        TakmicenjeID       = tak.Id,
                        OdjeljenjeStavkaID = item.OdjeljenjeStavkaID,
                        IsPristupio        = false,
                        Bodovi             = 0
                    };

                    noviTakmicari.Add(NoviTakmicar);
                }
            }

            _context.AddRange(noviTakmicari);
            _context.SaveChanges();
            return(Redirect("Index"));
        }