private void flowLayoutPanelIxtisasQruplari_DragDrop(object sender, DragEventArgs e) { var buttonIxtisasQrubu = e.Data.GetData(typeof(ButtonIxtisasQrubu)) as ButtonIxtisasQrubu; if (buttonIxtisasQrubu != null && buttonIxtisasQrubu.IxtisasQrubu != null) { var tedrisYuku = new TedrisYuku { Muellim = this.Muellim, Ders = this.Ders, Qrup = buttonIxtisasQrubu.IxtisasQrubu, TedrisIli = this.TedrisIli }; flowLayoutPanelIxtisasQruplari.Controls.Add(new ButtonTedrisYuku(tedrisYuku)); TedrisYukleri.Add(tedrisYuku); Program.VBE.Store(tedrisYuku); } }
public ButtonTedrisYuku(TedrisYuku tedrisYuku) : base() { if (tedrisYuku == null) { return; } TedrisYuku = tedrisYuku; this.Text = tedrisYuku.Qrup.Ad; this.Height = 30; this.Width = 165; this.TextAlign = ContentAlignment.MiddleCenter; this.Font = new Font("Times New Roman", 12f, FontStyle.Bold); this.MouseClick += ButtonTedrisYuku_MouseClick; }
private void buttonTedrisYukunuAvtomatikHazirla_Click(object sender, EventArgs e) { textBoxGorulenEmeliyyatlar.Clear(); payizTedrisYukleri = new List <TedrisYuku>(); yazTedrisYukleri = new List <TedrisYuku>(); if (tedrisIli == null) { MessageBox.Show("Tədris İli olmalıdır."); return; } progressBarEmelliyatVeziyyeti.Visible = true; foreach (var ders in dersler) { var mdbdler = muelliminDeyeBildiyiDersler.Where(x => x.Ders == ders); foreach (var ixtisasQrubu in ixtisasQruplari.Where(x => ixtisasDersleri.Count(y => y.Ders == ders && y.Ixtisas == x.Ixtisas) > 0).OrderByDescending(x => ixtisasDersleri.SingleOrDefault(y => y.Ixtisas == x.Ixtisas && y.Ders == ders).Cem)) { if (ixtisasDersleri.Count(x => x.Ixtisas == ixtisasQrubu.Ixtisas && x.Ders == ders) > 0) { var semestr = (tedrisIli.Il - ixtisasQrubu.BaslamaIli) * 2 + 1; var id = ixtisasDersleri.SingleOrDefault(x => x.Ixtisas == ixtisasQrubu.Ixtisas && x.Ders == ders); var tedrisYuku = new TedrisYuku(); tedrisYuku.Ders = ders; tedrisYuku.Qrup = ixtisasQrubu; tedrisYuku.TedrisIli = tedrisIli.Il; if (semestr == id.Semestr) { var muelliminDeyeBildiyiDers = mdbdler.Where(x => { var muelliminSemestrDersCemi = payizTedrisYukleri.Where(y => y.Muellim == x.Muellim).Sum(y => { var id_ = ixtisasDersleri.SingleOrDefault(z => z.Ixtisas == y.Qrup.Ixtisas && y.Ders == z.Ders); return(id_ != null ? id_.Cem : 0); }); var id__ = ixtisasDersleri.SingleOrDefault(z => z.Ixtisas == ixtisasQrubu.Ixtisas && z.Ders == ders); return(muelliminSemestrDersCemi < 500); }).OrderByDescending(t => payizTedrisYukleri.Count(z => z.TedrisIli == tedrisIli.Il && z.Muellim == t.Muellim && z.Ders == ders && z.Qrup == ixtisasQrubu) == 0).ThenByDescending(t => t.DediyiIlSayi).ThenBy(t => t.Muellim.BaslamaIli).FirstOrDefault(); if (muelliminDeyeBildiyiDers != null) { tedrisYuku.Muellim = muelliminDeyeBildiyiDers.Muellim; payizTedrisYukleri.Add(tedrisYuku); textBoxGorulenEmeliyyatlar.AppendText("Payız Semestri - " + tedrisYuku.Muellim.TamAdi + " - " + tedrisYuku.Qrup.Ad + " - " + tedrisYuku.Ders.Ad); textBoxGorulenEmeliyyatlar.AppendText("\n----------------------------------------------------------------------\n"); } } semestr++; if (semestr == id.Semestr) { var muelliminDeyeBildiyiDers = mdbdler.Where(x => { var muelliminSemestrDersCemi = yazTedrisYukleri.Where(y => y.Muellim == x.Muellim).Sum(y => { var id_ = ixtisasDersleri.SingleOrDefault(z => z.Ixtisas == y.Qrup.Ixtisas && y.Ders == z.Ders); return(id_ != null ? id_.Cem : 0); }); var id__ = ixtisasDersleri.SingleOrDefault(z => z.Ixtisas == ixtisasQrubu.Ixtisas && z.Ders == ders); return(muelliminSemestrDersCemi < 500); }).OrderByDescending(t => t.Ders == ders && yazTedrisYukleri.Count(z => z.TedrisIli == tedrisIli.Il && z.Muellim == t.Muellim && z.Ders == ders && z.Qrup == ixtisasQrubu) == 0).OrderByDescending(t => t.DediyiIlSayi).ThenBy(t => t.Muellim.BaslamaIli).FirstOrDefault(); if (muelliminDeyeBildiyiDers != null) { tedrisYuku.Muellim = muelliminDeyeBildiyiDers.Muellim; yazTedrisYukleri.Add(tedrisYuku); textBoxGorulenEmeliyyatlar.AppendText("Yaz Semestri - " + tedrisYuku.Muellim.TamAdi + " - " + tedrisYuku.Qrup.Ad + " - " + tedrisYuku.Ders.Ad); textBoxGorulenEmeliyyatlar.AppendText("/n----------------------------------------------------------------------/n"); } } } } } buttonSaxla.Enabled = true; progressBarEmelliyatVeziyyeti.Visible = false; }