public static void Izvrsi(MojContext context) { // Look for any Skola. if (context.Skola.Any()) { return; // DB has been seeded } int maxRazredi = 4; int maxPredmeti = 10; int maxUcenici = 15; int maxOdjeljenja = 2; var predmeti = new List <Predmet>(); var odjeljenja = new List <Odjeljenje>(); var skolskeGodine = new List <SkolskaGodina>(); var skole = new List <Skola>(); var odjeljenjeStavke = new List <OdjeljenjeStavka>(); var ucenici = new List <Ucenik>(); var predajePredmete = new List <PredajePredmet>(); var nastavnici = new List <Nastavnik>(); var dodjeljenPredmet = new List <DodjeljenPredmet>(); for (int i = 1; i <= maxRazredi; i++) { predmeti.Add(new Predmet { Naziv = "Informtika", Razred = i }); predmeti.Add(new Predmet { Naziv = "Matematika", Razred = i }); predmeti.Add(new Predmet { Naziv = "Fizika", Razred = i }); } skolskeGodine.Add(new SkolskaGodina { Aktuelna = false, Naziv = "2018/19" }); skolskeGodine.Add(new SkolskaGodina { Aktuelna = false, Naziv = "2019/20" }); skolskeGodine.Add(new SkolskaGodina { Aktuelna = true, Naziv = "2020/21" }); skole.Add(new Skola() { Naziv = "I Srednja škola Mostar" }); skole.Add(new Skola() { Naziv = "II Srednja škola Mostar" }); skole.Add(new Skola() { Naziv = "III Srednja škola Mostar" }); skole.Add(new Skola() { Naziv = "IV Srednja škola Mostar" }); int nBrojac = 0; foreach (Skola s in skole) { for (int i = 1; i <= 15; i++) { nastavnici.Add(new Nastavnik { Skola = s, Ime = MyRandomExtensions.MyRandomString(4), Prezime = MyRandomExtensions.MyRandomString(4), }); } foreach (SkolskaGodina skolskaGodina in skolskeGodine) { for (int bRazred = 1; bRazred <= maxRazredi; bRazred++) { for (int bOdjeljenja = 1; bOdjeljenja < maxOdjeljenja; bOdjeljenja++) { Odjeljenje newOdjeljenje = new Odjeljenje() { SkolskaGodina = skolskaGodina, Oznaka = bRazred + "-" + bOdjeljenja, Razred = bRazred, Skola = s, Razrednik = nastavnici.MyRandom() }; odjeljenja.Add(newOdjeljenje); foreach (Predmet p in predmeti.Where(p => newOdjeljenje.Razred == bRazred)) { predajePredmete.Add(new PredajePredmet { Predmet = p, Odjeljenje = newOdjeljenje, Nastavnik = nastavnici.Where(w => w.Skola == s).ToList().MyRandom() }); } for (int bUcenik = 1; bUcenik <= maxUcenici; bUcenik++) { Ucenik ucenik = new Ucenik() { ImePrezime = MyRandomExtensions.MyRandomString(5), }; ucenici.Add(ucenik); OdjeljenjeStavka odjeljenjeStavka = new OdjeljenjeStavka { Ucenik = ucenik, Odjeljenje = newOdjeljenje, BrojUDnevniku = bUcenik, }; odjeljenjeStavke.Add(odjeljenjeStavka); foreach (Predmet p in predmeti.Where(q => q.Razred == bRazred)) { int zakljucnoKrajGodine = MyRandomExtensions.RandomOcjena(); DodjeljenPredmet dp = new DodjeljenPredmet() { Predmet = p, OdjeljenjeStavka = odjeljenjeStavka, ZakljucnoKrajGodine = zakljucnoKrajGodine, }; dodjeljenPredmet.Add(dp); } } } } } } context.Nastavnik.AddRange(nastavnici); context.Predmet.AddRange(predmeti); context.Odjeljenje.AddRange(odjeljenja); context.SkolskaGodina.AddRange(skolskeGodine); context.Skola.AddRange(skole); context.OdjeljenjeStavka.AddRange(odjeljenjeStavke); context.Ucenik.AddRange(ucenici); context.PredajePredmet.AddRange(predajePredmete); context.Nastavnik.AddRange(nastavnici); context.DodjeljenPredmet.AddRange(dodjeljenPredmet); context.SaveChanges(); }
public static void Izvrsi(MojContext context) { // Look for any Skola. if (context.Skola.Any()) { return; // DB has been seeded } int maxRazredi = 4; int maxPredmeti = 10; int maxUcenici = 15; int maxOdjeljenja = 2; var predmeti = new List <SelectListItem>(); var odjeljenja = new List <Odjeljenje>(); var skolskeGodine = new List <SkolskaGodina>(); var skole = new List <Skola>(); var odjeljenjeStavke = new List <OdjeljenjeStavka>(); var ucenici = new List <Ucenik>(); var predajePredmete = new List <PredajePredmet>(); var nastavnici = new List <Nastavnik>(); var dodjeljenPredmet = new List <DodjeljenPredmet>(); for (int i = 1; i <= maxRazredi; i++) { predmeti.Add(new SelectListItem { Naziv = "Informtika", Razred = i }); predmeti.Add(new SelectListItem { Naziv = "Matematika", Razred = i }); predmeti.Add(new SelectListItem { Naziv = "Fizika", Razred = i }); } skolskeGodine.Add(new SkolskaGodina { Aktuelna = false, Naziv = "2018/19" }); skolskeGodine.Add(new SkolskaGodina { Aktuelna = false, Naziv = "2019/20" }); skolskeGodine.Add(new SkolskaGodina { Aktuelna = true, Naziv = "2020/21" }); skole.Add(new Skola() { Naziv = "I Srednja škola Mostar" }); skole.Add(new Skola() { Naziv = "II Srednja škola Mostar" }); skole.Add(new Skola() { Naziv = "III Srednja škola Mostar" }); skole.Add(new Skola() { Naziv = "IV Srednja škola Mostar" }); int nBrojac = 0; foreach (Skola s in skole) { for (int i = 1; i <= 15; i++) { nastavnici.Add(new Nastavnik { Skola = s, Ime = MyRandomExtensions.MyRandomString(4), Prezime = MyRandomExtensions.MyRandomString(4), }); } foreach (SkolskaGodina skolskaGodina in skolskeGodine) { for (int bRazred = 1; bRazred <= maxRazredi; bRazred++) { for (int bOdjeljenja = 1; bOdjeljenja < maxOdjeljenja; bOdjeljenja++) { Odjeljenje newOdjeljenje = new Odjeljenje() { SkolskaGodina = skolskaGodina, Oznaka = bRazred + "-" + bOdjeljenja, Razred = bRazred, Skola = s, Razrednik = nastavnici.MyRandom() }; odjeljenja.Add(newOdjeljenje); foreach (SelectListItem p in predmeti.Where(p => newOdjeljenje.Razred == bRazred)) { predajePredmete.Add(new PredajePredmet { Predmet = p, Odjeljenje = newOdjeljenje, Nastavnik = nastavnici.Where(w => w.Skola == s).ToList().MyRandom() }); } for (int bUcenik = 1; bUcenik <= maxUcenici; bUcenik++) { Ucenik ucenik = new Ucenik() { ImePrezime = MyRandomExtensions.MyRandomString(5), }; ucenici.Add(ucenik); OdjeljenjeStavka odjeljenjeStavka = new OdjeljenjeStavka { Ucenik = ucenik, Odjeljenje = newOdjeljenje, BrojUDnevniku = bUcenik, }; odjeljenjeStavke.Add(odjeljenjeStavka); foreach (SelectListItem p in predmeti.Where(q => q.Razred == bRazred)) { int zakljucnoKrajGodine = MyRandomExtensions.RandomOcjena(); DodjeljenPredmet dp = new DodjeljenPredmet() { Predmet = p, OdjeljenjeStavka = odjeljenjeStavka, ZakljucnoKrajGodine = zakljucnoKrajGodine, }; dodjeljenPredmet.Add(dp); } } } } } } context.Nastavnik.AddRange(nastavnici); context.Predmet.AddRange(predmeti); context.Odjeljenje.AddRange(odjeljenja); context.SkolskaGodina.AddRange(skolskeGodine); context.Skola.AddRange(skole); context.OdjeljenjeStavka.AddRange(odjeljenjeStavke); context.Ucenik.AddRange(ucenici); context.PredajePredmet.AddRange(predajePredmete); context.Nastavnik.AddRange(nastavnici); context.DodjeljenPredmet.AddRange(dodjeljenPredmet); context.SaveChanges(); var skoleC = context.Skola.ToList(); foreach (var item in skoleC) { var pred = context.Predmet; var takmicenja = new List <Takmicenje>(); var takmicenjeUcesnik = new List <TakmicenjeUcesnik>(); for (int j = 0; j < pred.Count(); j++) { var predmet = pred.ToList().MyRandom(); takmicenja.Add(new Takmicenje { SkolaId = item.Id, PredmetId = predmet.Id, Datum = DateTime.Now, Razred = predmet.Razred, Zakljucaj = false }); } context.Takmicenje.AddRange(takmicenja); context.SaveChanges(); var odje = context.OdjeljenjeStavka.ToList(); var takm = context.Takmicenje.ToList(); for (int i = 0; i < 50; i++) { takmicenjeUcesnik.Add(new TakmicenjeUcesnik { TakmicenjeId = takm.MyRandom().Id, OdjeljenjeStavkaId = odje.MyRandom().Id, Pristupio = new List <bool> { true, false }.MyRandom(), Bodovi = MyRandomExtensions.RandomBodova() }); } context.TakmicenjeUcesnik.AddRange(takmicenjeUcesnik); context.SaveChanges(); //Task.Delay(10000).Wait(); } }