private string ProveraGodina(UpisTromesecjaViewModel godine) { var godina = DateTime.Now.Year; if (godine.PrvoPocetak.Year == DateTime.Now.Year && godine.CetvrtoKraj.Year == ++godina) { } else { return("Početna godina mora biti trenutna godina, a krajnja mora biti sledeća"); } ProveraRedosledaUpisanihGodina(godine); return(""); }
private string ProveraRedosledaUpisanihGodina(UpisTromesecjaViewModel tromesecja) { //provera da li je redosled datuma dobar if (tromesecja.PrvoPocetak < tromesecja.PrvoKraj && tromesecja.PrvoKraj < tromesecja.DrugoPocetak && tromesecja.DrugoPocetak < tromesecja.DrugoKraj && tromesecja.DrugoKraj < tromesecja.TrecePocetak && tromesecja.TrecePocetak < tromesecja.TreceKraj && tromesecja.TreceKraj < tromesecja.CetvrtoPocetak && tromesecja.CetvrtoPocetak < tromesecja.CetvrtoKraj) { } else { return("Datumi nisu lepo raspoređeni"); } return(""); }
private ActionResult Create(UpisTromesecjaStringViewModel srpskiDatumi) { UpisTromesecjaViewModel podaci = new UpisTromesecjaViewModel() { PrvoPocetak = KonverizjaDatuma.izSrpskogUAmericki(srpskiDatumi.PrvoPocetak), PrvoKraj = KonverizjaDatuma.izSrpskogUAmericki(srpskiDatumi.PrvoKraj), DrugoPocetak = KonverizjaDatuma.izSrpskogUAmericki(srpskiDatumi.DrugoPocetak), DrugoKraj = KonverizjaDatuma.izSrpskogUAmericki(srpskiDatumi.DrugoKraj), TrecePocetak = KonverizjaDatuma.izSrpskogUAmericki(srpskiDatumi.TrecePocetak), TreceKraj = KonverizjaDatuma.izSrpskogUAmericki(srpskiDatumi.TreceKraj), CetvrtoPocetak = KonverizjaDatuma.izSrpskogUAmericki(srpskiDatumi.CetvrtoPocetak), CetvrtoKraj = KonverizjaDatuma.izSrpskogUAmericki(srpskiDatumi.CetvrtoKraj), Poruka = srpskiDatumi.Poruka }; var poruka = ProveraGodina(podaci); if (poruka != "") { srpskiDatumi.Poruka = poruka; return(View(srpskiDatumi)); } try { try { var poslednjaSkolskaGodina = _context.SkolskaGodine.Single(x => x.PocetakSkolskeGodine.Year == DateTime.Now.Year); if (poslednjaSkolskaGodina != null) { srpskiDatumi.Poruka = "Godina je vec upisana"; return(View(srpskiDatumi)); } } catch (Exception) { } //Pronalazi se stara skolska godina var staraSkolskaGodina = _context.SkolskaGodine.SingleOrDefault(s => s.Aktuelna == true); if (staraSkolskaGodina != null) { //Vrednost stare skolske godine se setuje na false jer se upisuje nova staraSkolskaGodina.Aktuelna = false; _context.SkolskaGodine.AddOrUpdate(staraSkolskaGodina); _context.SaveChanges(); } var skolskaGodina = new SkolskaGodina() { PocetakSkolskeGodine = podaci.PrvoPocetak, KrajSkolskeGodine = podaci.CetvrtoKraj, Aktuelna = true }; _context.SkolskaGodine.Add(skolskaGodina); _context.SaveChanges(); //uzimamo id od skolske godine da bi mogli da unesemo polugodista var skolskaGodinaId = _context.SkolskaGodine.Single(x => x.PocetakSkolskeGodine == podaci.PrvoPocetak).SkolskaGodinaId; var odeljenja = _context.Odeljenja.Where(o => o.SkolskaGodinaId == null && o.StatusID == 2) .Select(o => o) .ToList(); if (odeljenja != null) { //Dodeljuje se skolska godina odeljenima koja nemaju skolsku godinu for (int i = 0; i < odeljenja.Count(); i++) { var odeljenje = odeljenja.ElementAt(i); odeljenje.SkolskaGodinaId = skolskaGodina.SkolskaGodinaId; _context.Odeljenja.AddOrUpdate(odeljenje); _context.SaveChanges(); } } var prvoPolugodiste = new Polugodiste() { PocetakPolugodista = podaci.PrvoPocetak, KrajPolugodista = podaci.DrugoKraj, SkolskaGodinaId = skolskaGodinaId, TipPolugodista = 1 }; _context.Polugodista.Add(prvoPolugodiste); _context.SaveChanges(); var drugoPolugodiste = new Polugodiste() { PocetakPolugodista = podaci.TrecePocetak, KrajPolugodista = podaci.CetvrtoKraj, SkolskaGodinaId = skolskaGodinaId, TipPolugodista = 2 }; _context.Polugodista.Add(drugoPolugodiste); _context.SaveChanges(); // uzimamo id od polugodista da bi mogli da unesemo tromesecja var prvoPolugodisteId = _context.Polugodista.Single(x => x.PocetakPolugodista == podaci.PrvoPocetak).PolugodisteId; var drugoPolugodisteId = _context.Polugodista.Single(x => x.PocetakPolugodista == podaci.TrecePocetak).PolugodisteId; var prvoTromesecje = new Tromesecje() { PolugodisteId = prvoPolugodisteId, PocetakTromesecja = podaci.PrvoPocetak, KrajTromesecja = podaci.PrvoKraj, TipTromesecja = 1 }; _context.Tromesecja.Add(prvoTromesecje); _context.SaveChanges(); var drugoTromesecje = new Tromesecje() { PolugodisteId = prvoPolugodisteId, PocetakTromesecja = podaci.DrugoPocetak, KrajTromesecja = podaci.DrugoKraj, TipTromesecja = 2 }; _context.Tromesecja.Add(drugoTromesecje); _context.SaveChanges(); var treceTromesecje = new Tromesecje() { PolugodisteId = drugoPolugodisteId, PocetakTromesecja = podaci.TrecePocetak, KrajTromesecja = podaci.TreceKraj, TipTromesecja = 3 }; _context.Tromesecja.Add(treceTromesecje); _context.SaveChanges(); var cetvrtoTromesecje = new Tromesecje() { PolugodisteId = drugoPolugodisteId, PocetakTromesecja = podaci.CetvrtoPocetak, KrajTromesecja = podaci.CetvrtoKraj, TipTromesecja = 4 }; _context.Tromesecja.Add(cetvrtoTromesecje); _context.SaveChanges(); } catch (Exception) { srpskiDatumi.Poruka = "Greška pri upisu u bazu"; return(View(srpskiDatumi)); } poruka = "uspesno"; srpskiDatumi.Poruka = poruka; return(View(srpskiDatumi)); }