Esempio n. 1
0
        private void frmThemDeNghi_Load(object sender, EventArgs e)
        {
            try
            {
                deNgiGiangDay1.ReadOnly();

                //cmbGiangVien
                Set_cmbGiangVien();

                //num Hoc kỳ
                Set_numHocKy();

                //dateNamHoc
                dateNamHoc.DateTime = DateTime.Now;

                //cmbTuan
                Set_cmbTuan();
                DateTime ngayNay = DateTime.Now.GetWeek();
                cmbTuan.SelectedIndex = cmbTuan.Properties.Items.IndexOf("Từ " + ngayNay.ToString("dd/MM/yyyy") + " -- Đến " + ngayNay.AddDays(6).ToString("dd/MM/yyyy"));

                //de nghi viewer
                deNgiGiangDay1.NamHoc      = dateNamHoc.DateTime.Year;
                deNgiGiangDay1.HocKy       = (int)numHocKy.Value;
                deNgiGiangDay1.NgayDauTuan = DateTime.Parse(cmbTuan.SelectedItem.ToString().Substring(3, 10));
                deNgiGiangDay1.buoiHocs    = BuoiHocBUS.DanhSachBuoiHocTheoTuan(deNgiGiangDay1.NgayDauTuan);
            }
            catch (Exception ex)
            {
                ExceptionUtil.ThrowMsgBox(ex.Message);
            }
        }
Esempio n. 2
0
 private void btnLuu_Click(object sender, EventArgs e)
 {
     try
     {
         BuoiHocBUS.Them(deNgiGiangDay1.buoiHocs);
         DeNghiBUS.Them(deNgiGiangDay1.deNghis);
         StaticClass.LuuThayDoi();
         StaticClass.Log.GhiFile("Thêm đề nghị giảng dạy cho tuần " + cmbTuan.Text);
         MsgboxUtil.Success("Thành công");
     }
     catch (Exception ex)
     {
         ExceptionUtil.ThrowMsgBox(ex.Message);
     }
 }
Esempio n. 3
0
 public bool ThemTKB(sp_DeNghiTheoPhongTrongTuanResult t)
 {
     try
     {
         TKBDangXep.Add(new QuanLyDaoTao.DataAccess.ThoiKhoaBieu()
         {
             BuoiHoc     = t.BuoiHoc,
             MaPC        = t.MaPC,
             MaPhong     = maPhong,
             CoDay       = false,
             DaThanhToan = false,
             BuoiHoc1    = BuoiHocBUS.LayThongTin(t.BuoiHoc)
         });
         Paint(t.MaPC, t.BuoiHoc, (int)thu, t.TietBatDau, t.SoTiet, t.TenMH, t.TenGV, t.MaLop, 1, t.MaGV, t.MaMH);
         return(true);
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
Esempio n. 4
0
 private void lsvTables_SelectedIndexChanged(object sender, EventArgs e)
 {
     try
     {
         //bang sinh vien
         if (lsvTables.Items[GetSelectedItemIndex()].Text == TableNames.SinhVien.ToString())
         {
             tenBang = "SinhVien";
             gridControl1.DataSource = SinhVienBUS.LayDuLieu();
             return;
         }
         //bang buoi hoc
         if (lsvTables.Items[GetSelectedItemIndex()].Text == TableNames.BuoiHoc.ToString())
         {
             tenBang = "BuoiHoc";
             gridControl1.DataSource = BuoiHocBUS.LayDuLieu();
             return;
         }
         //bang thoi khoa bieu
         if (lsvTables.Items[GetSelectedItemIndex()].Text == TableNames.ThoiKhoaBieu.ToString())
         {
             tenBang = "ThoiKhoaBieu";
             gridControl1.DataSource = ThoiKhoaBieuBUS.LayDuLieu();
             return;
         }
         //bang phong hoc
         if (lsvTables.Items[GetSelectedItemIndex()].Text == TableNames.PhongHoc.ToString())
         {
             tenBang = "PhongHoc";
             gridControl1.DataSource = PhongHocBUS.LayDuLieu();
             return;
         }
         //bang đề nghị
         if (lsvTables.Items[GetSelectedItemIndex()].Text == TableNames.DeNghi.ToString())
         {
             tenBang = "DeNghi";
             gridControl1.DataSource = DeNghiBUS.LayDuLieu();
             return;
         }
         //bang lop
         if (lsvTables.Items[GetSelectedItemIndex()].Text == TableNames.Lop.ToString())
         {
             tenBang = "Lop";
             gridControl1.DataSource = LopBUS.LayDuLieu();
             return;
         }
         //bang phan cong
         if (lsvTables.Items[GetSelectedItemIndex()].Text == TableNames.PhanCong.ToString())
         {
             tenBang = "PhanCong";
             gridControl1.DataSource = PhanCongBUS.LayDuLieu();
             return;
         }
         //bang mon hoc
         if (lsvTables.Items[GetSelectedItemIndex()].Text == TableNames.MonHoc.ToString())
         {
             tenBang = "MonHoc";
             gridControl1.DataSource = MonHocBUS.LayDuLieu();
             return;
         }
         //bang nghanh hoc
         if (lsvTables.Items[GetSelectedItemIndex()].Text == TableNames.NganhHoc.ToString())
         {
             tenBang = "NganhHoc";
             gridControl1.DataSource = NganhHocBUS.LayDuLieu();
             return;
         }
         //bang nguoi dung
         if (lsvTables.Items[GetSelectedItemIndex()].Text == TableNames.NguoiDung.ToString())
         {
             tenBang = "NguoiDung";
             gridControl1.DataSource = NguoiDungBUS.LayDuLieu();
             return;
         }
         //bang trinh do
         if (lsvTables.Items[GetSelectedItemIndex()].Text == TableNames.TrinhDo.ToString())
         {
             tenBang = "TrinhDo";
             gridControl1.DataSource = TrinhDoBUS.DanhSachTrinhDo();
             return;
         }
         //bang giang vien
         if (lsvTables.Items[GetSelectedItemIndex()].Text == TableNames.GiangVien.ToString())
         {
             tenBang = "GiangVien";
             gridControl1.DataSource = GiangVienBUS.LayDuLieu();
             return;
         }
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
Esempio n. 5
0
        public bool ThemBuoiHoc(Thu thu, int tietBD, int soTiet, string monHoc, string lop, string maPC)
        {
            try
            {
                if (tietBD < 0 || tietBD > 9)
                {
                    throw new Exception("Tiết bắt đầu không hợp lệ.");
                }
                if (soTiet < 1 || soTiet > 5)
                {
                    throw new Exception("Số tiết không hợp lệ.");
                }

                int idBuoiHoc = idBuoiHoc = BuoiHocBUS.LayMaCuoiCung() + 1;

                //kiem tra co ton tai buoi hoc chua
                bool tonTaiBuoiHoc = false;

                foreach (BuoiHoc b in buoiHocs)
                {
                    if (b.Ngay == ngayDauTuan.AddDays((int)thu) && b.TietBatDau == tietBD && b.SoTiet == soTiet)
                    {
                        idBuoiHoc     = b.BuoiHoc1;
                        tonTaiBuoiHoc = true;
                        if (deNghis.Any(i => i.MaPC == maPC && i.BuoiHoc == idBuoiHoc))
                        {
                            MsgboxUtil.Exclamation("Đã tồn tại một đề nghị như thế này rồi.");
                            return(false);
                        }
                    }
                }

                //them buoi hoc
                if (!tonTaiBuoiHoc)//neu chua ton tai buoi hoc
                {
                    buoiHocs.Add(new BuoiHoc()
                    {
                        BuoiHoc1 = idBuoiHoc, Ngay = ngayDauTuan.AddDays((int)thu), SoTiet = (byte)soTiet, TietBatDau = (byte)tietBD
                    });
                }

                //kiểm tra không cho trùng
                int      tietKT      = tietBD + soTiet - 1;
                DateTime ngayDangXet = ngayDauTuan.AddDays((int)thu);
                foreach (var i in deNghis)
                {
                    BuoiHoc b = buoiHocs.Single(c => c.BuoiHoc1 == i.BuoiHoc);

                    if (b.Ngay == ngayDangXet)
                    {
                        int tietKTCu = b.TietBatDau + b.SoTiet - 1;
                        if (tietBD == b.TietBatDau)
                        {
                            MsgboxUtil.Exclamation("Trùng rồi bạn ơi");
                            return(false);
                        }
                        if (tietBD < b.TietBatDau && tietKT >= b.TietBatDau)
                        {
                            MsgboxUtil.Exclamation("Trùng rồi bạn ơi");
                            return(false);
                        }
                        if (tietBD > b.TietBatDau && tietKT <= tietKTCu)
                        {
                            MsgboxUtil.Exclamation("Trùng rồi bạn ơi");
                            return(false);
                        }
                        if (tietBD == tietKTCu)
                        {
                            MsgboxUtil.Exclamation("Trùng rồi bạn ơi");
                            return(false);
                        }
                    }
                }

                //vẽ các panel
                Paint((int)thu, tietBD, soTiet, lop, monHoc);
                deNghis.Add(new DeNghi()
                {
                    BuoiHoc = idBuoiHoc, MaPC = maPC
                });

                return(true);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
Esempio n. 6
0
        private void frmNhapTKB_Load(object sender, EventArgs e)
        {
            try
            {
                groupControl1.Text = "Các đề nghị giảng dạy ngày: " + ngayDauTuan.AddDays((int)thu).ToString("dd/MM/yyyy");
                //load cac de nghi cho mot ngay
                source = ThoiKhoaBieuBUS.ThongTinXepTKB(maPhong, ngayDauTuan).Where(i => i.Ngay == ngayDauTuan.AddDays((int)thu)).ToList <sp_DeNghiTheoPhongTrongTuanResult>();

                foreach (var x in TKBDangXep)                   //loại bỏ các đề nghị đang được xếp thời khóa biểu (chưa lưu vào CSDL)
                {
                    for (int i = source.Count - 1; i >= 0; i--) //loại bỏ những đề nghị trùng buổi với cái đã xếp
                    {
                        if (source[i].BuoiHoc == x.BuoiHoc)
                        {
                            source.Remove(source[i]);
                        }
                    }
                }

                foreach (var x in TKBs)//loại bỏ các đề nghị trùng với thời khóa biểu đã được xếp rồi (đã lưu trong CSDL)
                {
                    BuoiHoc buoi = BuoiHocBUS.LayThongTin(x.BuoiHoc);
                    if (source.Any(i => i.MaLop == LopBUS.LayMaLop(x.MaPC) && i.TietBatDau == buoi.TietBatDau && i.SoTiet == buoi.SoTiet))
                    {
                        source.Remove(source.Single(i => i.MaLop == LopBUS.LayMaLop(x.MaPC) && i.TietBatDau == buoi.TietBatDau && i.SoTiet == buoi.SoTiet));
                    }
                }

                //loại bỏ các đề nghị mà mã lớp của đề nghị đó đã được xếp vào học buổi đang chọn rồi
                //để tránh trường hợp 1 lớp học 2 môn cùng 1 buổi
                for (int i = source.Count - 1; i >= 0; i--)
                {
                    if (ThoiKhoaBieuBUS.KiemTraLopNayDaHocBuoiNayChua(source[i].MaPC, source[i].BuoiHoc))
                    {
                        source.Remove(source[i]);
                    }
                }

                //loại bỏ các trường hợp trùng 1 số tiết với thời khóa biểu đã xếp
                for (int i = source.Count - 1; i >= 0; i--)
                {
                    int      tietKT      = source[i].TietBatDau + source[i].SoTiet - 1;
                    DateTime ngayDangXet = ngayDauTuan.AddDays((int)thu);

                    foreach (var tkb in TKBs)
                    {
                        BuoiHoc b = BuoiHocBUS.LayThongTin(tkb.BuoiHoc);
                        if (b.Ngay == ngayDangXet)
                        {
                            int tietKTCu = b.TietBatDau + b.SoTiet - 1;
                            if (source[i].TietBatDau == b.TietBatDau)
                            {
                                source.Remove(source[i]);
                                break;
                            }
                            if (source[i].TietBatDau < b.TietBatDau && tietKT >= b.TietBatDau)
                            {
                                source.Remove(source[i]);
                                break;
                            }
                            if (source[i].TietBatDau > b.TietBatDau && tietKT <= tietKTCu)
                            {
                                source.Remove(source[i]);
                                break;
                            }
                            if (source[i].TietBatDau == tietKTCu)
                            {
                                source.Remove(source[i]);
                                break;
                            }
                        }
                    }
                }

                //loại bỏ các trường hợp trùng 1 số tiết với thời khóa biểu đang xếp
                for (int i = source.Count - 1; i >= 0; i--)
                {
                    int      tietKT      = source[i].TietBatDau + source[i].SoTiet - 1;
                    DateTime ngayDangXet = ngayDauTuan.AddDays((int)thu);

                    foreach (var tkb in TKBDangXep)
                    {
                        BuoiHoc b = BuoiHocBUS.LayThongTin(tkb.BuoiHoc);
                        if (b.Ngay == ngayDangXet)
                        {
                            int tietKTCu = b.TietBatDau + b.SoTiet - 1;
                            if (source[i].TietBatDau == b.TietBatDau)
                            {
                                source.Remove(source[i]);
                                break;
                            }
                            if (source[i].TietBatDau < b.TietBatDau && tietKT >= b.TietBatDau)
                            {
                                source.Remove(source[i]);
                                break;
                            }
                            if (source[i].TietBatDau > b.TietBatDau && tietKT <= tietKTCu)
                            {
                                source.Remove(source[i]);
                                break;
                            }
                            if (source[i].TietBatDau > b.TietBatDau && source[i].TietBatDau <= tietKTCu && tietKT > tietKTCu)
                            {
                                source.Remove(source[i]);
                                break;
                            }
                            if (source[i].TietBatDau == tietKTCu)
                            {
                                source.Remove(source[i]);
                                break;
                            }
                        }
                    }
                }

                gridControl1.DataSource = source;
                if (source.Count > 0)
                {
                    selectedRowIndex = gridView1.GetDataSourceRowIndex(0);
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }