public void DodajPopravniIspit(int odjeljenjeId, int predmetId, DateTime datumIspita)
        {
            PopravniIspit popravniIspit = new PopravniIspit {
                OdjeljenjeID = odjeljenjeId,
                DatumIspita  = datumIspita,
                PredmetID    = predmetId
            };

            _context.Add(popravniIspit);
            _context.SaveChanges();

            HashSet <PopravniIspitStavka> popravniIspitStavke = _context.DodjeljenPredmet
                                                                .Where(dp => dp.OdjeljenjeStavka.OdjeljenjeId == odjeljenjeId && dp.PredmetId == predmetId)
                                                                .Where(dp => dp.ZakljucnoKrajGodine == 1)
                                                                .Select(dp => new PopravniIspitStavka {
                Bodovi             = 50,
                OdjeljenjeStavkaId = odjeljenjeId,
                PopravniIspitId    = popravniIspit.Id,
            })
                                                                .ToHashSet();

            //korak 3
            foreach (var popravniIspitStavka in popravniIspitStavke)
            {
                int brojJedinicaZakljucenih = _context.DodjeljenPredmet.Where(dp => dp.Id == popravniIspitStavka.OdjeljenjeStavkaId)
                                              .Count(dp => dp.ZakljucnoKrajGodine == 1);
                if (brojJedinicaZakljucenih >= 3)
                {
                    popravniIspitStavka.Bodovi = 0;
                }
            }

            _context.AddRange(popravniIspitStavke);
            _context.SaveChanges();
        }
Exemplo n.º 2
0
        public IActionResult Korak4(int Id)
        {
            PopravniIspit popravniIspit = _db.PopravniIspit.Find(Id);
            Korak3        viewModel     = new Korak3
            {
                SkolskaGodinaId = popravniIspit.SkolskaGodinaId,
                PremdetId       = popravniIspit.PredmetId,
                SkolaId         = popravniIspit.SkolaId,
                Skola           = _db.Skola.Find(popravniIspit.SkolaId).Naziv,
                Predmet         = _db.Predmet.Find(popravniIspit.PredmetId).Naziv,
                SkolskaGodina   = _db.SkolskaGodina.Find(popravniIspit.SkolskaGodinaId).Naziv,
                Datum           = popravniIspit.Datum,
                ClanKomisije1Id = popravniIspit.ClanKomisije1Id,
                ClanKomisije2Id = popravniIspit.ClanKomisije2Id,
                ClanKomisije3Id = popravniIspit.ClanKomisije3Id,
                ClanoviKomisije = _db.Nastavnik.Select(x => new SelectListItem
                {
                    Value = x.Id.ToString(),
                    Text  = x.Ime + " " + x.Prezime
                }),
                PopravniIspitId = popravniIspit.Id
            };

            return(View("Korak4", viewModel));
        }
        public IActionResult Uredi(int Id)
        {
            PopravniIspit        ispit = db.PopravniIspit.Where(x => x.Id == Id).SingleOrDefault();
            PopravniIspitDodajVM vm    = new PopravniIspitDodajVM
            {
                SkolskaGodinaId = ispit.SkolskaGodinaId,
                SkolaId         = ispit.SkolaId,
                PredmetId       = ispit.PredmetId,
                Predmeti        = db.Predmet.Select(x => new SelectListItem
                {
                    Value = x.Id.ToString(),
                    Text  = x.Naziv
                }).ToList(),
                Razred          = ispit.Razred,
                Datum           = ispit.DatumIspita,
                ClanKomisije1Id = ispit.ClanKomisije1Id,
                ClanKomisije2Id = ispit.ClanKomisije2Id,
                ClanKomisije3Id = ispit.ClanKomisije3Id,
                Skola           = db.Skola.Find(ispit.SkolaId).Naziv,
                SkolskaGodina   = db.SkolskaGodina.Find(ispit.SkolskaGodinaId).Naziv,
                ClanoviKomisije = db.Nastavnik.Select(x => new SelectListItem
                {
                    Value = x.Id.ToString(),
                    Text  = x.Ime + " " + x.Prezime
                }).ToList(),
                PopravniIspitId = ispit.Id
            };

            return(View("Uredi", vm));
        }
Exemplo n.º 4
0
        public IActionResult PopravniIspitStavkeIndex(int PopravniIspitID)
        {
            PopravniIspit popravniIspit = db.PopravniIspit.Where(x => x.Id == PopravniIspitID)
                                          .Include(x => x.Nastavnik1)
                                          .Include(x => x.Nastavnik2)
                                          .Include(x => x.Nastavnik3)
                                          .Include(x => x.Skola)
                                          .Include(x => x.SkolskaGodina)
                                          .Include(x => x.Predmet)
                                          .FirstOrDefault();

            PopravniIspitStavkeIndexVM model = new PopravniIspitStavkeIndexVM()
            {
                PopravniIspitID = PopravniIspitID,
                Rows            = db.PopravniIspitStavke.Where(x => x.PopravniIspitID == PopravniIspitID).Select(x => new PopravniIspitStavkeIndexVM.Row()
                {
                    PopravniIspitStavkeID = x.Id,
                    Ucenik        = x.OdjeljenjeStavka.Ucenik.ImePrezime,
                    Odjeljenje    = x.OdjeljenjeStavka.Odjeljenje.Oznaka,
                    BrojUDnevniku = x.OdjeljenjeStavka.BrojUDnevniku,
                    PristupIspitu = x.Pristup ? "DA":"NE",
                    Bodovi        = x.Bodovi
                }).ToList()
            };

            return(PartialView(model));
        }
        public IActionResult Snimi(PopravniIspitDodajVM model)
        {
            var PopravniIspit = new PopravniIspit
            {
                OdjeljenjeId = model.OdjeljenjeId,
                PredmetId    = model.PredmetId,
                Datum        = model.Datum
            };

            ctx.Add(PopravniIspit);
            ctx.SaveChanges();

            var Ucenici = ctx.OdjeljenjeStavka
                          .Where(i => i.OdjeljenjeId == model.OdjeljenjeId)
                          .ToList();

            foreach (var Ucenik in Ucenici)
            {
                var negativnaOcjenaPredmet = ctx.DodjeljenPredmet
                                             .Where
                                             (
                    i => i.OdjeljenjeStavkaId == Ucenik.Id &&
                    i.Predmet.Id == model.PredmetId &&
                    i.ZakljucnoKrajGodine == 1
                                             );
                var triPlusNegativneOcjene = ctx.DodjeljenPredmet
                                             .Where
                                             (
                    i => i.OdjeljenjeStavkaId == Ucenik.Id &&
                    i.ZakljucnoKrajGodine == 1
                                             );

                if (triPlusNegativneOcjene.Count() >= 3)
                {
                    var novaStavka = new PopravniIspitStavka
                    {
                        PopravniId         = PopravniIspit.Id,
                        Pristupio          = false,
                        Bodovi             = null,
                        OdjeljenjeStavkaId = Ucenik.Id
                    };
                    ctx.Add(novaStavka);
                }
                else if (negativnaOcjenaPredmet.Any())
                {
                    var novaStavka = new PopravniIspitStavka
                    {
                        PopravniId         = PopravniIspit.Id,
                        Pristupio          = false,
                        Bodovi             = 0,
                        OdjeljenjeStavkaId = Ucenik.Id
                    };
                    ctx.Add(novaStavka);
                }
            }

            ctx.SaveChanges();
            return(Redirect("/PopravniIspit/PopravniPrikaz/" + model.OdjeljenjeId));
        }
        public IActionResult Snimi(PopravniIspitDodajVM model)
        {
            PopravniIspit novi = new PopravniIspit
            {
                PredmetId       = model.PredmetId,
                SkolaId         = model.SkolaId,
                SkolskaGodinaId = model.SkolskaGodinaId,
                Komisija1Id     = model.Komisija1Id,
                Komisija2Id     = model.Komisija2Id,
                Komisija3Id     = model.Komisija3Id,

                Datum = DateTime.Now
            };

            _db.Add(novi);
            _db.SaveChanges();

            //ucenici koji imaju zakljuceno 1 na odabranom predmetu
            List <DodjeljenPredmet> Ucenici = _db.DodjeljenPredmet.Where(x => x.PredmetId == novi.PredmetId &&
                                                                         x.OdjeljenjeStavka.Odjeljenje.SkolskaGodinaID == novi.SkolskaGodinaId &&
                                                                         x.OdjeljenjeStavka.Odjeljenje.SkolaID == novi.SkolaId &&
                                                                         x.ZakljucnoKrajGodine == 1
                                                                         ).Include(x => x.OdjeljenjeStavka).ToList();

            foreach (var u in Ucenici)
            {
                int brojjedinica = _db.DodjeljenPredmet.Where(x => x.OdjeljenjeStavkaId == u.OdjeljenjeStavkaId && x.ZakljucnoKrajGodine == 1).Count();

                //ima li tri ili vise jedinica, ako ima kod dodavanja ce u rezultat spasiti 0, ako ne nece nista
                if (brojjedinica >= 3)
                {
                    PopravniIspitUcenik noviucenik = new PopravniIspitUcenik
                    {
                        OdjeljenjeStavkaId      = u.OdjeljenjeStavkaId,
                        PopravniIspitId         = novi.PopravniIspitId,
                        PristupioIspitu         = false,
                        RezultatPopravnogIspita = 0
                    };
                    _db.Add(noviucenik);
                }

                else
                {
                    PopravniIspitUcenik noviucenik = new PopravniIspitUcenik
                    {
                        OdjeljenjeStavkaId = u.OdjeljenjeStavkaId,
                        PopravniIspitId    = novi.PopravniIspitId,
                        //PristupioIspitu = false
                    };
                    _db.Add(noviucenik);
                }
            }

            _db.SaveChanges();

            return(Redirect("/PopravniIspit/Prikazi/?skolskagodinaId=" + novi.SkolskaGodinaId + "&skolaId=" + novi.SkolaId + "&predmetId=" + novi.PredmetId));
        }
Exemplo n.º 7
0
        public IActionResult Save(PopravniIspitAddVM model)
        {
            PopravniIspit noviPopravniIspit = new PopravniIspit
            {
                Datum           = model.Datum,
                SkolaID         = model.SkolaID,
                SkolskaGodinaID = model.SkolskaGodinaID,
                PredmetID       = model.PredmetID
            };

            db.PopravniIspit.Add(noviPopravniIspit);

            if (model != null)
            {
                var sviPredmeti = db.DodjeljenPredmet.ToList();

                foreach (var uc in sviPredmeti)
                {
                    var uceniciNegativnaZakljucna = db.OdjeljenjeStavka.Where(x => x.Id == uc.OdjeljenjeStavkaId && uc.ZakljucnoKrajGodine == 1).ToList();

                    var uceniciNegZakljucnaPredmet = db.OdjeljenjeStavka.Where(x => x.Id == uc.OdjeljenjeStavkaId && uc.ZakljucnoKrajGodine == 1 && uc.PredmetId == model.PredmetID).ToList();


                    if (uceniciNegZakljucnaPredmet.Any())
                    {
                        PopravniIspitStavke noveStavke = new PopravniIspitStavke
                        {
                            OdjeljenjeStavkaID = uc.OdjeljenjeStavkaId,
                            PopravniIspitID    = noviPopravniIspit.Id,
                            Bodovi             = null,
                            Prisutan           = false
                        };

                        db.PopravniIspitStavke.Add(noveStavke);
                    }

                    if (uceniciNegativnaZakljucna.Count() > 3)
                    {
                        PopravniIspitStavke noveStavke = new PopravniIspitStavke
                        {
                            OdjeljenjeStavkaID = uc.OdjeljenjeStavkaId,
                            PopravniIspitID    = noviPopravniIspit.Id,
                            Bodovi             = 0,
                            Prisutan           = false
                        };

                        db.PopravniIspitStavke.Add(noveStavke);
                    }
                }
            }

            db.SaveChanges();

            return(Redirect("/PopravniIspit/PopravniIspitIndex?PredmetID=" + model.PredmetID));
        }
        public IActionResult Snimi(PopravniIspitDodajVM model)
        {
            PopravniIspit novi = new PopravniIspit
            {
                PredmetId      = model.PopravniIspitId,
                Datum          = model.Datum,
                SkolaId        = model.SkolaId,
                SkolskGodinaId = model.SkolskaGodinaId
            };

            _db.Add(novi);
            _db.SaveChanges();


            //uslovi

            List <DodjeljenPredmet> ucenici = _db.DodjeljenPredmet.Where(x => x.OdjeljenjeStavka.Odjeljenje.SkolaID == novi.SkolaId &&
                                                                         x.OdjeljenjeStavka.Odjeljenje.SkolskaGodinaID == novi.SkolskGodinaId && x.PredmetId == novi.PredmetId && x.ZakljucnoKrajGodine == 1).
                                              Include(x => x.OdjeljenjeStavka).ToList();

            foreach (var i in ucenici)
            {
                int brojjedinica = _db.DodjeljenPredmet.Where(x => x.OdjeljenjeStavkaId == i.OdjeljenjeStavkaId && x.ZakljucnoKrajGodine == 1).Count();

                if (brojjedinica >= 3)
                {
                    PopravniIspitUcenik noviucenik = new PopravniIspitUcenik
                    {
                        PopravniIspitId    = novi.PopravniIspitId,
                        OdjeljenjeStavkaId = i.OdjeljenjeStavkaId,
                        Pristupio          = false,
                        Rezultlat          = 0
                    };
                    _db.Add(noviucenik);
                }
                else
                {
                    PopravniIspitUcenik noviucenik = new PopravniIspitUcenik
                    {
                        PopravniIspitId    = novi.PopravniIspitId,
                        OdjeljenjeStavkaId = i.OdjeljenjeStavkaId,
                        Pristupio          = true
                    };
                    _db.Add(noviucenik);
                }
            }

            _db.SaveChanges();
            return(Redirect("/PopravniIspit/Prikazi/" + novi.PredmetId));
        }
        public ActionResult Snimi(PopravniIspitDodajVM model)
        {
            PopravniIspit p = new PopravniIspit
            {
                ClanKomisije1Id = model.ClanKomisije1Id,
                ClanKomisije2Id = model.ClanKomisije2Id,
                ClanKomisije3Id = model.ClanKomisije3Id,
                Datum           = model.Datum,
                PredmetID       = model.PredmetId,
                SkolaID         = model.SkolaID,
                SkolskaGodinaID = model.SkolskaGodinaID
            };

            _context.Add(p);
            _context.SaveChanges();

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

            foreach (var x in listaOS)
            {
                PopravniUcenik newPU = new PopravniUcenik
                {
                    ImaPravoNaPopravni = true,
                    OdjeljenjeStavkaId = x.Id,
                    PopravniId         = p.Id,
                    Pristupio          = false
                };


                int brojNegativnih = _context.DodjeljenPredmet.Where(a => a.OdjeljenjeStavkaId == x.Id).Count(a => a.ZakljucnoKrajGodine == 1);
                if (brojNegativnih >= 3)
                {
                    newPU.Rezultat           = 0;
                    newPU.ImaPravoNaPopravni = false;
                }

                _context.PopravniUcenik.Add(newPU);
                _context.SaveChanges();
            }


            PopravniIspitIndexVM podaci = new PopravniIspitIndexVM
            {
                Razred          = model.Razred,
                SkolaId         = model.SkolaID,
                SkolskaGodinaId = model.SkolskaGodinaID
            };

            return(RedirectToAction("Odaberi", podaci));
        }
        public IActionResult Save(PopravniIspitDodajVM model)
        {
            var popravniIspit = new PopravniIspit
            {
                OdjeljenjeId    = model.OdjeljenjeId,
                SkolaId         = model.SkolaId,
                SkolskaGodinaId = model.SkolskaGodId,
                PredmetId       = model.PredmetId,
                Datum           = model.DatumIspita
            };

            db.Add(popravniIspit);
            db.SaveChanges();

            var ucenici = db.OdjeljenjeStavka.Where(x => x.Odjeljenje.Skola.Id == model.SkolaId && x.Odjeljenje.Id == model.OdjeljenjeId && x.Odjeljenje.SkolskaGodina.Id == model.SkolskaGodId).ToList();

            foreach (var u in ucenici)
            {
                var negativnaOcjena = db.DodjeljenPredmet.Where(x => x.Predmet.Id == model.PredmetId && x.OdjeljenjeStavkaId == u.Id && x.ZakljucnoKrajGodine == 1).ToList();

                var triNegativne = db.DodjeljenPredmet.Where(x => x.ZakljucnoKrajGodine == 1 && x.OdjeljenjeStavka.Id == u.Id).ToList();

                if (triNegativne.Count() >= 3)
                {
                    var popravniIspitStavka = new PopravniIspitStavka
                    {
                        PopravniIspitId    = popravniIspit.Id,
                        OdjeljenjeStavkaId = u.Id,
                        Bodovi             = 0,
                        IsPristupio        = null
                    };
                    db.Add(popravniIspitStavka);
                    db.SaveChanges();
                }
                else if (negativnaOcjena.Any())
                {
                    var popravniIspitStavka = new PopravniIspitStavka
                    {
                        PopravniIspitId    = popravniIspit.Id,
                        OdjeljenjeStavkaId = u.Id,
                        IsPristupio        = false
                    };
                    db.Add(popravniIspitStavka);
                    db.SaveChanges();
                }
            }

            return(RedirectToAction("Index", "PopravniIspit"));//ne zaboravi redirect
        }
Exemplo n.º 11
0
        public IActionResult Dodaj(int id)
        {
            PopravniIspit     it    = _db.PopravniIspit.Find(id);
            AjaxStavkeDodajVM model = new AjaxStavkeDodajVM
            {
                PopravniIspitId = it.PopravniIspitId,
                Ucenici         = _db.Ucenik.Select(x => new Microsoft.AspNetCore.Mvc.Rendering.SelectListItem
                {
                    Value = x.Id.ToString(),
                    Text  = x.ImePrezime
                }).ToList()
            };

            return(PartialView(model));
        }
Exemplo n.º 12
0
        public ActionResult UrediPopravni(int popravniID)
        {
            PopravniIspit popravniIspit = db.PopravniIspit.Find(popravniID);
            var           model         = new PopravniIspit_VM_Uredi
            {
                popravniID     = popravniID,
                predmetNaziv   = db.Predmet.Where(p => p.Id == popravniIspit.PredmetID).Select(p => p.Naziv).FirstOrDefault(),
                datumIspita    = popravniIspit.DatumIspita.ToString("dd.MM.yyyy"),
                skolaNaziv     = db.Skola.Where(p => p.Id == popravniIspit.SkolaID).Select(p => p.Naziv).FirstOrDefault(),
                skolskaGOdina  = db.SkolskaGodina.Where(p => p.Id == popravniIspit.SkolskaGodinaID).Select(p => p.Naziv).FirstOrDefault(),
                odjeljenjNaziv = db.Odjeljenje.Where(p => p.Id == popravniIspit.OdjeljenjeID).Select(p => p.Oznaka).FirstOrDefault()
            };

            return(View(model));
        }
Exemplo n.º 13
0
        public IActionResult Dodaj(DodajVM vm)
        {
            PopravniIspit pi = new PopravniIspit()
            {
                Datum           = vm.DatumIspita,
                PredmetId       = vm.PredmetID,
                SkolaId         = vm.SkolaId,
                SkolskaGodinaId = vm.SkolskaGodinaId
            };


            _context.PopravniIspit.Add(pi);
            _context.SaveChanges();
            return(RedirectToAction(nameof(Prikaz), new { PredmetID = vm.PredmetID }));
        }
        public IActionResult Uredi(int id)
        {
            PopravniIspit pi = _db.PopravniIspit.Where(x => x.PopravniIspitId == id).Include(x => x.Predmet).Include(x => x.Skola)
                               .Include(x => x.SkolskaGodina).FirstOrDefault();
            PopravniIspitUrediVM model = new PopravniIspitUrediVM
            {
                PopravniIspitId = pi.PopravniIspitId,
                Datum           = pi.Datum,
                Predmet         = pi.Predmet.Naziv,
                Skola           = pi.Skola.Naziv,
                SkolskaGodina   = _db.SkolskaGodina.Where(x => x.Aktuelna == true).FirstOrDefault().Naziv,
                Razred          = pi.Predmet.Razred
            };

            return(View(model));
        }
Exemplo n.º 15
0
        public IActionResult Snimi(PopravniIspitDodajVM vm)
        {
            var ispit = new PopravniIspit {
                SkolaID         = vm.SkolaID,
                SkoslkaGodinaID = vm.SkolskaGodinaID,
                PredmetID       = vm.PredmetID,
                Datum           = vm.Datum
            };

            db.Add(ispit);
            db.SaveChanges();



            return(Redirect("/PopravniIspit/Index"));
        }
Exemplo n.º 16
0
        public IActionResult Uredi(int popravniID)
        {
            PopravniIspit ispit = _context.PopravniIspit.Find(popravniID);

            var model = new Ispit_UrediVM
            {
                popravniID = popravniID,
                predmet    = _context.Predmet.Where(e => e.Id == ispit.PredmetID).Select(e => e.Naziv).FirstOrDefault(),
                datum      = ispit.Datum,
                odjeljenje = _context.Odjeljenje.Where(e => e.Id == ispit.OdjeljenjeID).Select(e => e.Oznaka).FirstOrDefault(),
                skola      = _context.Skola.Where(e => e.Id == ispit.SkolaID).Select(e => e.Naziv).FirstOrDefault(),
                skolska    = _context.SkolskaGodina.Where(e => e.Id == ispit.SkolskaGodinaID).Select(e => e.Naziv).FirstOrDefault()
            };

            return(View("Uredi", model));
        }
Exemplo n.º 17
0
        public IActionResult Save(PopravniIspitAddVM model)
        {
            PopravniIspit noviPopravniIspit = new PopravniIspit()
            {
                Nastavnik1ID    = model.Nastavnik1ID,
                Nastavnik2ID    = model.Nastavnik2ID,
                Nastavnik3ID    = model.Nastavnik3ID,
                SkolaID         = model.SkolaID,
                SkolskaGodinaID = model.SkolskaGodinaID,
                PredmetID       = model.PredmetID,
                Datum           = model.Datum
            };

            db.PopravniIspit.Add(noviPopravniIspit);

            var ucenici = db.OdjeljenjeStavka.Where(x => x.Odjeljenje.SkolaID == model.SkolaID).ToList();

            PopravniIspitStavke noveStavke;

            foreach (var u in ucenici)
            {
                if (db.DodjeljenPredmet.Where(x => x.OdjeljenjeStavkaId == u.Id && x.ZakljucnoKrajGodine == 1).Count() >= 3)
                {
                    noveStavke = new PopravniIspitStavke()
                    {
                        PopravniIspitID    = noviPopravniIspit.Id,
                        OdjeljenjeStavkaID = u.Id,
                        Pristup            = false,
                        Bodovi             = 0,
                    };
                    db.PopravniIspitStavke.Add(noveStavke);
                }
                else if (db.DodjeljenPredmet.Where(x => x.OdjeljenjeStavkaId == u.Id && x.PredmetId == model.PredmetID && x.ZakljucnoKrajGodine == 1).Count() >= 1)
                {
                    noveStavke = new PopravniIspitStavke()
                    {
                        PopravniIspitID    = noviPopravniIspit.Id,
                        OdjeljenjeStavkaID = u.Id,
                        Pristup            = true,
                        Bodovi             = null,
                    };
                    db.PopravniIspitStavke.Add(noveStavke);
                }
            }
            db.SaveChanges();
            return(RedirectToAction(nameof(Index)));
        }
        public ActionResult DodavanjePopravnig(PopravniISpit_VM_Dodavnje temp)
        {
            PopravniIspit popravniIspit = new PopravniIspit
            {
                DatumPopravnogIspita = temp.datumPopravnog,
                OdjeljenjeId         = temp.odjeljenjeId,
                PredmetId            = temp.PredmetID,
                SkolaId         = temp.skolaID,
                SkolskaGodinaId = temp.skGOdinaID
            };

            db.Add(popravniIspit); db.SaveChanges();

            List <DodjeljenPredmet> dodjeljenPredmets = db.DodjeljenPredmet.Where(d => d.PredmetId == temp.PredmetID && d.ZakljucnoKrajGodine == 1).ToList();

            List <OdjeljenjeStavka> odjeljenjeStavkas = db.OdjeljenjeStavka.Where(s => dodjeljenPredmets.Any(d => d.OdjeljenjeStavkaId == s.Id)).ToList();

            foreach (var stavke in odjeljenjeStavkas)
            {
                if (db.DodjeljenPredmet.Where(d => d.OdjeljenjeStavkaId == stavke.Id).Count(d => d.ZakljucnoKrajGodine == 1) >= 3)
                {
                    PopravniIspitDetalji popravniIspitDetalji = new PopravniIspitDetalji
                    {
                        imaPravoPristupa         = false,
                        isPristupio              = false,
                        PopravniIspitId          = popravniIspit.Id,
                        rezultatiMaturskogBodovi = 0,
                        UcenikId = stavke.UcenikId
                    };
                    db.Add(popravniIspitDetalji); db.SaveChanges();
                }
                else
                {
                    PopravniIspitDetalji popravniIspitDetalji = new PopravniIspitDetalji
                    {
                        imaPravoPristupa         = true,
                        isPristupio              = false,
                        PopravniIspitId          = popravniIspit.Id,
                        rezultatiMaturskogBodovi = 0,
                        UcenikId = stavke.UcenikId
                    };
                    db.Add(popravniIspitDetalji); db.SaveChanges();
                }
            }

            return(Redirect("/PopravniIspit/PrikazPopravnog?odjeljenjeID=" + temp.odjeljenjeId + "&skolaID=" + temp.skolaID + "&skGOdinaID=" + temp.skolaID));
        }
Exemplo n.º 19
0
        public IActionResult Snimi(PopravniIspitDodajVM model)
        {
            PopravniIspit novi = new PopravniIspit
            {
                OdjeljenjeId   = model.Id,
                PredmetId      = model.PredmetId,
                DatumPopravnog = model.Datum,
            };

            _db.Add(novi);
            _db.SaveChanges();

            //ucenici tog odjeljenje
            List <OdjeljenjeStavka> ucenici = _db.OdjeljenjeStavka.Where(x => x.OdjeljenjeId == novi.OdjeljenjeId).ToList();

            foreach (var i in ucenici)
            {
                //gdje je taj ucenik i na kojem predmetu ima 1
                var uceniciSaNegativnom     = _db.DodjeljenPredmet.Where(x => x.OdjeljenjeStavkaId == i.Id && x.ZakljucnoKrajGodine == 1 && x.PredmetId == novi.PredmetId).ToList();
                var uceniciSaViseNegativnih = _db.DodjeljenPredmet.Where(x => x.OdjeljenjeStavkaId == i.Id && x.ZakljucnoKrajGodine == 1).ToList();
                PopravniIspitUcenik novinovi;
                if (uceniciSaViseNegativnih.Count() >= 3 && uceniciSaViseNegativnih.Any(x => x.PredmetId == novi.PredmetId))
                {
                    novinovi = new PopravniIspitUcenik
                    {
                        OdjeljenjeStavkaId = i.Id,
                        PopravniIspitId    = novi.PopravniIspitId,
                        Bodovi             = 0,
                        Pristupio          = false
                    };
                    _db.Add(novinovi);
                }
                else if (uceniciSaNegativnom.Any())
                {
                    novinovi = new PopravniIspitUcenik
                    {
                        OdjeljenjeStavkaId = i.Id,
                        PopravniIspitId    = novi.PopravniIspitId,
                        Bodovi             = null,
                        Pristupio          = false
                    };
                    _db.Add(novinovi);
                }
            }
            _db.SaveChanges();
            return(Redirect("/PopravniIspit/Prikazi/" + novi.OdjeljenjeId));
        }
Exemplo n.º 20
0
        public ActionResult DodavanjePopravnogIspita(PopravniIspit_DOdavanje_VM temp)
        {
            //dodavanje popravnog:
            PopravniIspit popravniIspit = new PopravniIspit
            {
                DatumIspita     = temp.datumPopravnogIspita,
                OdjeljenjeID    = temp.odjeljenjeID,
                PredmetID       = temp.PredmetID,
                SkolaID         = temp.skolaID,
                SkolskaGodinaID = temp.skolskaGOdinaINT
            };

            db.Add(popravniIspit); db.SaveChanges();

            List <DodjeljenPredmet> dodijeljeniPredmet = db.DodjeljenPredmet.Where(d => d.PredmetId == temp.PredmetID && d.ZakljucnoKrajGodine == 1).ToList();
            List <OdjeljenjeStavka> odjeljenjeStavka   = db.OdjeljenjeStavka.Where(os => dodijeljeniPredmet.Any(dd => dd.OdjeljenjeStavkaId == os.Id)).ToList();

            foreach (var stavke in odjeljenjeStavka)
            {
                if (db.DodjeljenPredmet.Where(d => d.OdjeljenjeStavkaId == stavke.Id).Count(d => d.ZakljucnoKrajGodine == 1) >= 3) //ako imaju negativne 1 ili vise
                {
                    PopravniIspitDetalji popravniIspitDetalji = new PopravniIspitDetalji
                    {
                        imePravoPristupa         = false,
                        isPristupio              = false,
                        OdjeljenjeStavkaId       = stavke.Id,
                        PopravniIspitID          = popravniIspit.Id,
                        RezultatiMaturskogIspita = 0
                    };
                    db.Add(popravniIspitDetalji); db.SaveChanges();
                }
                else
                {
                    PopravniIspitDetalji popravniIspitDetalji = new PopravniIspitDetalji
                    {
                        imePravoPristupa         = true,
                        isPristupio              = false,
                        OdjeljenjeStavkaId       = stavke.Id,
                        PopravniIspitID          = popravniIspit.Id,
                        RezultatiMaturskogIspita = 0
                    };
                    db.Add(popravniIspitDetalji); db.SaveChanges();
                }
            }
            return(Redirect("/PopravniIspit/PrikazPopravnogIspita?odjeljenjeID=" + temp.odjeljenjeID));
        }
        private async Task <DetaljiPopravniIspitVM> BuildDetaljiPopravniIspitVM(PopravniIspit popravni)
        {
            var komisija = await _context.PopravniIspitKomisija
                           .Include(x => x.Nastavnik)
                           .Where(x => x.PopravniIspitId == popravni.Id)
                           .Select(x => x.Nastavnik.ImePrezime())
                           .ToListAsync();

            var polaganja = _context.PopravniIspitStavke
                            .Include(x => x.Ucenik)
                            .Where(x => x.PopravniIspitId == popravni.Id);
            var polaganjaVM = new List <PopravniIspitStavkaVM>();

            if (await polaganja.AnyAsync())
            {
                foreach (var p in polaganja)
                {
                    var tempOdjeljenjeStavka = await _context.OdjeljenjeStavka
                                               .Include(x => x.Odjeljenje)
                                               .FirstOrDefaultAsync(x => x.UcenikId == p.UcenikId);

                    polaganjaVM.Add(new PopravniIspitStavkaVM {
                        Id              = p.Id,
                        BrojUDnevniku   = tempOdjeljenjeStavka?.BrojUDnevniku ?? 0,
                        ImaPravoIzlaska = p.ImaPravoNaIzlazask,
                        IsPristupio     = p.IsPrisutupio,
                        Odjeljenje      = tempOdjeljenjeStavka?.Odjeljenje?.Oznaka ?? "",
                        OsvojenoBodova  = p.OsvojeniBodovi ?? 0,
                        Ucenik          = p.Ucenik.ImePrezime
                    });
                }
            }

            return(new DetaljiPopravniIspitVM {
                ClanoviKomisije = komisija,
                DatumIspita = popravni.DatumOdrzavanja,
                Id = popravni.Id,
                Polaganja = polaganjaVM,
                Predmet = popravni.Predmet.Naziv,
                PredmetId = popravni.PredmetId,
                Skola = popravni.Skola.Naziv,
                SkolaId = popravni.SkolaId,
                SkolskaGodinaId = popravni.SkolskaGodinaId,
                SkolskaGodina = popravni.SkolskaGodina.Naziv
            });
        }
        public IActionResult Uredi(int id)
        {
            PopravniIspit pi = _db.PopravniIspit.Where(x => x.PopravniIspitId == id).Include(x => x.SkolskaGodina).Include(x => x.Predmet
                                                                                                                           ).Include(x => x.Skola).Include(x => x.Komisija1).Include(x => x.Komisija2).Include(x => x.Komisija3).FirstOrDefault();
            PopravniIspitUrediVM model = new PopravniIspitUrediVM
            {
                PopravniIspitId = pi.PopravniIspitId,
                Komisija1       = pi.Komisija1.Ime + " " + pi.Komisija1.Prezime,
                Komisija2       = pi.Komisija2.Ime + " " + pi.Komisija2.Prezime,
                Komisija3       = pi.Komisija3.Ime + " " + pi.Komisija3.Prezime,
                Datum           = pi.Datum,
                Skola           = pi.Skola.Naziv,
                SkolskaGodina   = pi.SkolskaGodina.Naziv,
                Predmet         = pi.Predmet.Naziv
            };

            return(View(model));
        }
Exemplo n.º 23
0
        public IActionResult Snimi(PopravniIspitDodajVM model)
        {
            PopravniIspit popravniIspit = new PopravniIspit
            {
                ClanKomisije1Id            = model.ClanKomisije1Id,
                ClanKomisije2Id            = model.ClanKomisije2Id,
                ClanKomisije3Id            = model.ClanKomisije3Id,
                Datum                      = model.Datum,
                PopravniIspitOpstiPodaciId = model.OpstiPodaciId
            };

            db.PopravniIspit.Add(popravniIspit);
            db.SaveChanges();
            foreach (var x in db.DodjeljenPredmet.Where(y => y.PredmetId == model.PredmetId))
            {
                if (db.DodjeljenPredmet.Where(y => y.Id == x.Id).Count(y => y.ZakljucnoKrajGodine == 1) >= 3)
                {
                    PopravniIspitStavka pps = new PopravniIspitStavka
                    {
                        BrojBodova         = null,
                        ImaPravo           = false,
                        IsPrisutan         = false,
                        OdjeljenjeStavkaId = x.OdjeljenjeStavkaId,
                        PopravniIspitId    = popravniIspit.Id,
                    };
                    db.PopravniIspitStavka.Add(pps);
                    continue;
                }
                if (x.ZakljucnoKrajGodine == 1)
                {
                    PopravniIspitStavka pps = new PopravniIspitStavka
                    {
                        BrojBodova         = null,
                        ImaPravo           = true,
                        IsPrisutan         = false,
                        OdjeljenjeStavkaId = x.OdjeljenjeStavkaId,
                        PopravniIspitId    = popravniIspit.Id,
                    };
                    db.PopravniIspitStavka.Add(pps);
                }
            }
            db.SaveChanges();
            return(Redirect("Index"));
        }
Exemplo n.º 24
0
        public IActionResult Detalji(int PopravniIspitID)
        {
            PopravniIspit popravniIspit = db.PopravniIspit.Where(x => x.Id == PopravniIspitID)
                                          .Include(x => x.Predmet)
                                          .Include(x => x.Skola)
                                          .Include(x => x.SkolskaGodina)
                                          .FirstOrDefault();
            PopravniIspitDetaljiVM model = new PopravniIspitDetaljiVM()
            {
                PopravniIspitID = PopravniIspitID,
                Predmet         = popravniIspit.Predmet.Naziv,
                Razred          = popravniIspit.Predmet.Razred,
                Datum           = popravniIspit.Datum,
                Skola           = popravniIspit.Skola.Naziv,
                SkolskaGodina   = popravniIspit.SkolskaGodina.Naziv
            };

            return(View(model));
        }
Exemplo n.º 25
0
        public ActionResult DetaljiPopravniPrikaz(int popravniIspitID)
        {
            PopravniIspit popravniIspit = db.PopravniIspit.Find(popravniIspitID);
            var           model         = new PopravniDetalji_VM_Prikaz
            {
                podaciDetaljiPopravni = db.PopravniIspitDetalji.Where(p => p.PopravniIspitID == popravniIspitID).Select(p => new PopravniDetalji_VM_Prikaz.Row()
                {
                    popravniDetaljiID = p.Id,
                    ucenikImePrezime  = db.OdjeljenjeStavka.Where(os => os.Id == p.OdjeljenjeStavkaId).Select(os => os.Ucenik.ImePrezime).FirstOrDefault(),
                    brojUDnevniku     = db.OdjeljenjeStavka.Where(os => os.Id == p.OdjeljenjeStavkaId).Select(os => os.BrojUDnevniku).FirstOrDefault(),
                    odjeljenjeNaziv   = db.Odjeljenje.Where(o => o.Id == p.OdjeljenjeStavka.OdjeljenjeId).Select(o => o.Oznaka).FirstOrDefault(),
                    imaPravoPristupa  = p.imePravoPristupa,
                    prisutan          = p.isPristupio,
                    rezultatMaturskog = p.RezultatiMaturskogIspita
                }).ToList()
            };

            return(PartialView(model));
        }
        public IActionResult Snimi(PopravniIspitDodajVM model)
        {
            PopravniIspit ispit = new PopravniIspit
            {
                ClanKomisije1Id = model.ClanKomisije1Id,
                ClanKomisije2Id = model.ClanKomisije2Id,
                ClanKomisije3Id = model.ClanKomisije3Id,
                DatumIspita     = model.Datum,
                PredmetId       = model.PredmetId,
                SkolskaGodinaId = model.SkolskaGodinaId,
                SkolaId         = model.SkolaId,
                Razred          = model.Razred
            };

            db.PopravniIspit.Add(ispit);
            db.SaveChanges();
            Random rnd = new Random();
            IEnumerable <PopravniIspitStavka> stavka = db.DodjeljenPredmet.Where(x => x.ZakljucnoKrajGodine < 2 && x.PredmetId == model.PredmetId).Select(x => new PopravniIspitStavka
            {
                OdjeljenjeStavkaId = x.OdjeljenjeStavkaId,
                PopravniIspitId    = ispit.Id,
                IsPristupio        = true,
                BrojUDnevniku      = x.OdjeljenjeStavka.BrojUDnevniku,
                MozePristupit      = true,
                Bodovi             = rnd.Next(1, 101)
            });

            foreach (var s in stavka)
            {
                if (db.DodjeljenPredmet.Where(x => x.OdjeljenjeStavkaId == s.OdjeljenjeStavkaId).Count(x => x.ZakljucnoKrajGodine < 2) >= 3)
                {
                    s.MozePristupit = false;
                    s.Bodovi        = 0;
                }
                db.PopravniIspitStavka.Add(s);
            }
            db.SaveChanges();


            return(RedirectToAction("Prikaz", new PopravniIspitPrikazVM {
                Razred = model.Razred, SkolaId = model.SkolaId, SkolskaGodinaId = model.SkolskaGodinaId
            }));
        }
        public ActionResult UredivanjePopravnig(int popravniID)
        {
            PopravniIspit popravniIspit = db.PopravniIspit.Find(popravniID);
            var           model         = new UredjivanjePopravnog_VM_Prikaz
            {
                popravniID      = popravniID,
                PredmetID       = popravniIspit.PredmetId,
                PredmeNaziv     = db.Predmet.Where(p => p.Id == popravniIspit.PredmetId).Select(p => p.Naziv).FirstOrDefault(),
                datumPopravnog  = popravniIspit.DatumPopravnogIspita.ToString("dd.MM.yyyy"),
                odjeljenjeId    = popravniIspit.OdjeljenjeId,
                odjeljenjeNaziv = db.Odjeljenje.Where(p => p.Id == popravniIspit.OdjeljenjeId).Select(p => p.Oznaka).FirstOrDefault(),
                skGOdinaID      = popravniIspit.SkolskaGodinaId,
                skGOdinaNaziv   = db.SkolskaGodina.Where(p => p.Id == popravniIspit.SkolskaGodinaId).Select(p => p.Naziv).FirstOrDefault(),
                skolaID         = popravniIspit.SkolaId,
                skolaNaziv      = db.Skola.Where(p => p.Id == popravniIspit.SkolaId).Select(p => p.Naziv).FirstOrDefault()
            };

            return(View(model));
        }
        public ActionResult PrikazDetaljaPopravnog(int popravniID)
        {
            PopravniIspit popravniIspit = db.PopravniIspit.Find(popravniID);
            var           model         = new PopravvvniIspitDeetalji_VM_Prikaz
            {
                detaljiPrikaz = db.PopravniIspitDetalji.Where(p => p.PopravniIspitId == popravniID).Select(p => new PopravvvniIspitDeetalji_VM_Prikaz.Row()
                {
                    detaljID         = p.Id,
                    ucenikIme        = db.Ucenik.Where(u => u.Id == p.UcenikId).Select(u => u.ImePrezime).FirstOrDefault(),
                    odjeljenjeIme    = db.Odjeljenje.Where(o => o.Id == popravniIspit.OdjeljenjeId).Select(o => o.Oznaka).FirstOrDefault(),
                    brojBodova       = p.rezultatiMaturskogBodovi,
                    brojUDnevniku    = db.OdjeljenjeStavka.Where(os => os.UcenikId == p.UcenikId).Select(ps => ps.BrojUDnevniku).FirstOrDefault(),
                    imaPravoPristupa = p.imaPravoPristupa,
                    pristupio        = p.isPristupio
                }).ToList()
            };

            return(PartialView(model));
        }
Exemplo n.º 29
0
        public IActionResult Index(int id)
        {
            PopravniIspit     pi    = _db.PopravniIspit.Find(id);
            AjaxStavkeIndexVM model = new AjaxStavkeIndexVM
            {
                PopravniIspitId = pi.PopravniIspitId,
                Ucenici         = _db.PopravniIspitUcenik.Where(x => x.PopravniIspitId == id).Select(x => new AjaxStavkeIndexVM.Row
                {
                    UcenikId          = x.PopravniIspitUcenikId,
                    Ucenik            = x.OdjeljenjeStavka.Ucenik.ImePrezime,
                    PristupioIspitu   = x.PristupioIspitu,
                    RezultatPopravnog = x.RezultatPopravnogIspita,
                    BrojUDnevniku     = x.OdjeljenjeStavka.BrojUDnevniku,
                    Odjeljenje        = x.OdjeljenjeStavka.Odjeljenje.Oznaka
                }).ToList()
            };

            return(PartialView(model));
        }
        public IActionResult Index(int PopravniIspitID)
        {
            PopravniIspit popravniIspit = db.PopravniIspit.Find(PopravniIspitID);

            PopravniIspitStavkeIndexVM model = new PopravniIspitStavkeIndexVM()
            {
                PopravniIspitID = PopravniIspitID,
                Rows            = db.PopravniIspitStavke.Select(x => new PopravniIspitStavkeIndexVM.Row()
                {
                    PopravniIspitStavkeID = x.Id,
                    Ucenik        = x.OdjeljenjeStavka.Ucenik.ImePrezime,
                    Odjeljenje    = x.OdjeljenjeStavka.Odjeljenje.Oznaka,
                    BrojUDnevniku = x.OdjeljenjeStavka.BrojUDnevniku,
                    PristupIspitu = x.Prisutan ? "DA" : "NE",
                    Rezultat      = x.Bodovi
                }).ToList()
            };

            return(PartialView(model));
        }