public static Result SinavOlustur(Sinav sinav, NameValueCollection collection) { using (SGContext db = new SGContext()) { try { SinavOturum otur = new SinavOturum(); School sch = new School(); otur.Okullar = new List<School>(); sinav.SinavOturum = new List<SinavOturum>(); int oturumNo = 1; //sinav.SinavDurum = db.SinavDurum.FirstOrDefault(d => d.KisaDurum == "Onaylanmadı"); foreach (var item in collection.AllKeys) { if (item.Contains("sinavoturum_Tarih")) { otur = new SinavOturum(); otur.Tarih = Convert.ToDateTime(collection.GetValues(item)[0]); } else if (item.Contains("sinavoturum_Saat")) { otur.Saat = collection.GetValues(item)[0]; otur.OturumNo = oturumNo++; otur.SinavOturumDurumId = (int)SG_DAL.Enums.EnumSinavDurum.OnaylanmamisSinav; sinav.SinavOturum.Add(otur); } else if (item.Contains("duallistbox_okullar")) { foreach (var okulid in collection.GetValues(item)) { var okulRepo = new Repository<School>(db); int id = Convert.ToInt32(okulid); var okul = okulRepo.First(d => d.SchoolId == id); ////////////////////// ////////////////////// List<SinavOturumOkullari> oturumokullist = new List<SinavOturumOkullari>(); foreach (var sinavoturumlari in sinav.SinavOturum) { sinavoturumlari.Okullar.Add(okul); } } } } var sinavRepo = new Repository<Sinav>(db); sinavRepo.Add(sinav); var sinavOturumlari = SinavManager.GetSinavOturumlari(sinav.SinavId); foreach (var oturum in sinavOturumlari) { var sinavoturumokulu = new SinavOturumOkullari(); var sinavOtrOkul = SchoolManager.GetSinavOturumOkullari(oturum.SinavOturumId); foreach (var okul in sinavOtrOkul) { sinavoturumokulu.SchoolId = okul.SchoolId; sinavoturumokulu.SinavOturumId = oturum.SinavOturumId; sinavoturumokulu.AsilGozetmenSayisi = 0; sinavoturumokulu.YedekGozetmenSayisi = 0; db.SinavOturumOkullari.Add(sinavoturumokulu); db.SaveChanges(); } } result = new Result(SystemRess.Messages.basarili_kayit.ToString(), SystemRess.Messages.basarili_durum.ToString()); return result; } catch (Exception) { result = new Result(SystemRess.Messages.hatali_kayit.ToString(), SystemRess.Messages.hatali_durum.ToString()); return result; } } }
public static Result SinavGorevlendir(string snvOturmId, string[] ogretmenler, string[] txtSalonSayi, string[] hdnPersonelSayi) { using (SGContext db = new SGContext()) { try { //var gorevliRepo = new Repository<SinavGorevli>(db); var okullar = SchoolManager.GetSinavOturumOkullari(Convert.ToInt32(snvOturmId)); var ogtRepo = new Repository<Teacher>(db); var grvRepo = new Repository<SinavGorevli>(db); var snvOtrOklRepo = new Repository<SinavOturumOkullari>(db); int genelSira = 1; int okulIndex = 1; foreach (var item in okullar) { var komisyon = SinavManager.GetSinavGorevliler(Convert.ToInt32(snvOturmId), (int)SG_DAL.Enums.EnumSinavGorev.BinaSinavKomisyonuBaskani, item.SchoolId); if (komisyon.Count == 0) { var idareciler = TeacherManager.GetOkulIdarecileri(item.SchoolId); // bu kısımda idarecilerden ilk olanlarını bina komisyon görevlisi olarak otomatik olarak ata var mdr = idareciler.FirstOrDefault(d => d.Unvan == (int)SG_DAL.Enums.EnumUnvan.Mudur); if (mdr != null) { var gorevli = new SinavGorevli(); gorevli.SinavOturumId = Convert.ToInt32(snvOturmId); gorevli.SiraNo = 1; gorevli.TeacherId = Convert.ToInt32(mdr.TeacherId); gorevli.SchoolId = item.SchoolId; gorevli.SinavGorevId = (int)SG_DAL.Enums.EnumSinavGorev.BinaSinavKomisyonuBaskani; db.SinavGorevli.Add(gorevli); db.SaveChanges(); } else { continue; } var mdryrd = idareciler.FirstOrDefault(d => d.Unvan == (int)SG_DAL.Enums.EnumUnvan.MudurYardimcisi); if (mdryrd != null) { var gorevli = new SinavGorevli(); gorevli.SinavOturumId = Convert.ToInt32(snvOturmId); gorevli.SiraNo = 1; gorevli.TeacherId = Convert.ToInt32(mdryrd.TeacherId); gorevli.SchoolId = item.SchoolId; gorevli.SinavGorevId = (int)SG_DAL.Enums.EnumSinavGorev.BinaSinavKomisyonuUyesi; db.SinavGorevli.Add(gorevli); db.SaveChanges(); } else { var gorevli = new SinavGorevli(); gorevli.SinavOturumId = Convert.ToInt32(snvOturmId); gorevli.SiraNo = 1; gorevli.TeacherId = Convert.ToInt32(mdr.TeacherId); gorevli.SchoolId = item.SchoolId; gorevli.SinavGorevId = (int)SG_DAL.Enums.EnumSinavGorev.BinaSinavKomisyonuUyesi; db.SinavGorevli.Add(gorevli); db.SaveChanges(); } mdryrd = idareciler.LastOrDefault(d => d.Unvan == (int)SG_DAL.Enums.EnumUnvan.MudurYardimcisi); if (mdryrd != null) { var gorevli = new SinavGorevli(); gorevli.SinavOturumId = Convert.ToInt32(snvOturmId); gorevli.SiraNo = 1; gorevli.TeacherId = Convert.ToInt32(mdryrd.TeacherId); gorevli.SchoolId = item.SchoolId; gorevli.SinavGorevId = (int)SG_DAL.Enums.EnumSinavGorev.BinaSinavKomisyonuUyesi; db.SinavGorevli.Add(gorevli); db.SaveChanges(); } else { var gorevli = new SinavGorevli(); gorevli.SinavOturumId = Convert.ToInt32(snvOturmId); gorevli.SiraNo = 1; gorevli.TeacherId = Convert.ToInt32(mdr.TeacherId); gorevli.SchoolId = item.SchoolId; gorevli.SinavGorevId = (int)SG_DAL.Enums.EnumSinavGorev.BinaSinavKomisyonuUyesi; db.SinavGorevli.Add(gorevli); db.SaveChanges(); } } } var gorevliler = SinavManager.GetSinavGorevliler(Convert.ToInt32(snvOturmId), (int)SG_DAL.Enums.EnumSinavGorev.Gozetmen); foreach (var item in gorevliler) { grvRepo.Delete(item); } var oturumlar = SinavManager.GetSinavOturumOkullari(Convert.ToInt32(snvOturmId)); foreach (var item in oturumlar) { snvOtrOklRepo.Delete(item); } int okulogretmensira = 1; foreach (var okul in okullar) { for (int i = 0; i < Convert.ToInt32(hdnPersonelSayi[okulIndex - 1]); i++) { int ogtID = Convert.ToInt32(ogretmenler[genelSira - 1]); int sinavOturumID = Convert.ToInt32(snvOturmId); var gorevli = new SinavGorevli(); gorevli.SinavOturumId = Convert.ToInt32(snvOturmId); gorevli.SiraNo = genelSira; gorevli.OkulSiraNo = okulogretmensira; gorevli.TeacherId = Convert.ToInt32(ogretmenler[genelSira - 1]); gorevli.SchoolId = okul.SchoolId; gorevli.SinavGorevId = (int)SG_DAL.Enums.EnumSinavGorev.Gozetmen; db.SinavGorevli.Add(gorevli); db.SaveChanges(); genelSira++; okulogretmensira++; } okulogretmensira = 1; SinavOturumOkullari oturumokul = new SinavOturumOkullari(); oturumokul.SchoolId = okul.SchoolId; oturumokul.SinavOturumId = Convert.ToInt32(snvOturmId); oturumokul.AsilGozetmenSayisi = Convert.ToInt32(hdnPersonelSayi[okulIndex - 1]); oturumokul.SalonSayisi = Convert.ToInt32(txtSalonSayi[okulIndex - 1]); db.SinavOturumOkullari.Add(oturumokul); db.SaveChanges(); okulIndex++; } result = new Result(SystemRess.Messages.basarili_kayit.ToString(), SystemRess.Messages.basarili_durum.ToString()); return result; } catch { result = new Result(SystemRess.Messages.hatali_kayit.ToString(), SystemRess.Messages.hatali_durum.ToString()); return result; } } }