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(); }
public IActionResult Snimi(int Klijent, DateTime Datum, int?Ponuda) { Faktura nova = new Faktura(); nova.KlijentID = Klijent; nova.Datum = Datum; _context.Faktura.Add(nova); _context.SaveChanges(); if (Ponuda != null) { Ponuda odbPonuda = _context.Ponuda.Where(x => x.Id == Ponuda).FirstOrDefault(); odbPonuda.FakturaID = nova.Id; List <FakturaStavka> stavke = _context.PonudaStavka.Where(x => x.PonudaId == Ponuda).Select(s => new FakturaStavka { FakturaID = nova.Id, Kolicina = s.Kolicina, ProizvodID = s.ProizvodId, PopustProcenat = 5 }).ToList(); _context.AddRange(stavke); _context.SaveChanges(); } return(RedirectToAction("Index")); }
public IActionResult Snimi(UputnicaDodajVM model) { if (!ModelState.IsValid) { model.ljekari = _context.Ljekar.Select(x => new SelectListItem { Value = x.Id.ToString(), Text = "Dr." + x.Ime }).ToList(); model.pacijenti = _context.Pacijent.Select(x => new SelectListItem { Value = x.Id.ToString(), Text = x.Ime }).ToList(); model.vrstePretrage = _context.VrstaPretrage.Select(x => new SelectListItem { Value = x.Id.ToString(), Text = x.Naziv }).ToList(); return(View("Dodaj", model)); } Uputnica novaUputnica = new Uputnica() { PacijentId = model.pacijentId, UputioLjekarId = model.ljekarId, VrstaPretrageId = model.vrstaPretrageId, DatumUputnice = (DateTime)model.DatumUputnie }; _context.Uputnica.Add(novaUputnica); _context.SaveChanges(); List <RezultatPretrage> listaPretraga = _context.LabPretraga.Where(x => x.VrstaPretrageId == model.vrstaPretrageId).Select(x => new RezultatPretrage { LabPretragaId = x.Id, UputnicaId = novaUputnica.Id, ModalitetId = null, NumerickaVrijednost = null, }).ToList(); _context.AddRange(listaPretraga); _context.SaveChanges(); return(RedirectToAction("Index")); }
public IActionResult DodajTakmicenje(int skolaId, string nazivPredmeta, int razred, DateTime datum) { int predmetId = _context.Predmet.Where(p => p.Naziv == nazivPredmeta && p.Razred == razred).First().Id; Takmicenje takmicenje = new Takmicenje { Datum = datum, PredmetId = predmetId, Razred = razred, SkolaId = skolaId, }; _context.Add(takmicenje); _context.SaveChanges(); List <TakmicenjeUcesnik> takmicenjeUcesnici = _context.OdjeljenjeStavka .Where( os => os.DodjeljenPredmets .Where(dp => dp.PredmetId == predmetId) .Count(dp => dp.ZakljucnoKrajGodine == 5) > 0 || os.DodjeljenPredmets .Average(dp => dp.ZakljucnoKrajGodine) >= 4.0 ) .Select(os => new TakmicenjeUcesnik { OdjeljenjeStavkaId = os.Id, TakmicenjeId = takmicenje.Id, Pristupio = false, Bodovi = 0, }) .ToList(); _context.AddRange(takmicenjeUcesnici); _context.SaveChanges(); return(RedirectToAction("PrikazTakmicenja", new { razred = razred, skolaId = skolaId })); }
public IActionResult DodajPopravniIspit ( int skolaId, int predmetId, int skolskaGodinaId, int nastavnik1Id, int nastavnik2Id, int nastavnik3Id, DateTime datum ) { PopravniIspit popravniIspit = new PopravniIspit { NastavnikId1 = nastavnik1Id, NastavnikId2 = nastavnik2Id, NastavnikId3 = nastavnik3Id, DatumIspita = datum, PredmetId = predmetId, SkolaId = skolaId, SkolskaGodinaId = skolskaGodinaId }; _context.Add(popravniIspit); _context.SaveChanges(); List <PopravniIspitStavka> odjeljenjaStavke = _context.OdjeljenjeStavka .Where(os => os.DodjeljeniPredmeti.Count(dp => dp.ZakljucnoKrajGodine == 1 && dp.PredmetId == predmetId) > 0) .Select(os => new PopravniIspitStavka { OdjeljenjeStavkaId = os.Id, PopravniIspitId = popravniIspit.Id, Prisutan = false, Bodovi = (os.DodjeljeniPredmeti.Count(dp => dp.ZakljucnoKrajGodine == 1)) >= 3 ? 0.0 : (double?)(null), }).ToList(); _context.AddRange(odjeljenjaStavke); _context.SaveChanges(); return(RedirectToAction("PrikazPopravnihIspita", new { skolaId = skolaId, predmetId = predmetId, skolskaGodinaId = skolskaGodinaId })); }
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")); }