private void AddBands() { int IDTuan, HocKy, TuanThu, widthKy1 = 0, widthKy2 = 0; try { for (int i = 0; i < dtTuan.Rows.Count; i++) { IDTuan = int.Parse(dtTuan.Rows[i]["XL_TuanID"].ToString()); TuanThu = int.Parse(dtTuan.Rows[i]["TuanThu"].ToString()); HocKy = int.Parse(dtTuan.Rows[i]["HocKy"].ToString()); if (HocKy == 1) { bgc = new BandedGridColumn(); bgc.Name = "T" + IDTuan.ToString(); bgc.OptionsColumn.AllowMerge = DevExpress.Utils.DefaultBoolean.False; grbKy1.Columns.Add(bgc); SetColumnBandCaption(bgc, "T" + TuanThu.ToString(), "T" + IDTuan.ToString(), colWidth, DevExpress.Utils.HorzAlignment.Center, true); bgrvGiaoVien.Columns.AddRange(new DevExpress.XtraGrid.Views.BandedGrid.BandedGridColumn[] { bgc }); widthKy1 += colWidth; } else { bgc = new BandedGridColumn(); bgc.Name = "T" + IDTuan.ToString(); bgc.OptionsColumn.AllowMerge = DevExpress.Utils.DefaultBoolean.False; grbKy2.Columns.Add(bgc); SetColumnBandCaption(bgc, "T" + TuanThu.ToString(), "T" + IDTuan.ToString(), colWidth, DevExpress.Utils.HorzAlignment.Center, true); bgrvGiaoVien.Columns.AddRange(new DevExpress.XtraGrid.Views.BandedGrid.BandedGridColumn[] { bgc }); widthKy2 += colWidth; } } SetBandCaption(grbKy1, "Học kỳ 1", widthKy1); SetBandCaption(grbKy2, "Học kỳ 2", widthKy2); } catch (Exception ex) { ThongBao(ex.Message); } }
private void LuuKeHoach() { int IDTuan, currentIDTuan, c, IDDM_Lop; for (int r = RowBegin; r <= fg.Rows.Count - 1; r++) { IDDM_Lop = int.Parse(fg[r, "IDDM_Lop"].ToString()); IDTuan = int.Parse(fg[0, ColBegin].ToString()); dtTuan.DefaultView.RowFilter = "XL_TuanID = " + IDTuan.ToString(); c = ColBegin; while (c <= fg.Cols.Count - 1) { CellRange rg = fg.GetCellRange(r, c, r, c); CellData objCellData = (CellData)rg.UserData; currentIDTuan = int.Parse(fg[0, c].ToString()); // Nếu vẫn là tuần đang xét thì sẽ lấy dữ liệu if (IDTuan != currentIDTuan) { IDTuan = currentIDTuan; dtTuan.DefaultView.RowFilter = "XL_TuanID = " + IDTuan.ToString(); } if (rg.UserData != null) { if (objCellData.IDKeHoachKhac == -1) { if (objCellData.KeHoachTruongID > 0) { DeleteKeHoachTruongTuan(objCellData.KeHoachTruongID); } } else { if (objCellData.Changed) { // Nếu có sự thay đổi trong kế hoạch và từ ca học -> nghỉ hoặc từ nghỉ -> ca học hoặc nghỉ -> nghỉ khác // Từ nghỉ -> nghỉ khác thì update vào if (objCellData.KeHoachTruongID > 0) { // Nếu được thay thế bởi Kế hoạch nghỉ khác thì update //if (objCellData.IDKeHoachKhac > 0) //{ pKeHoachTruongInfo = new XL_KeHoachTruongInfo(); pKeHoachTruongInfo.XL_KeHoachTruongID = objCellData.KeHoachTruongID; pKeHoachTruongInfo.IDXL_KeHoachKhac = objCellData.IDKeHoachKhac; pKeHoachTruongInfo.IDDM_Lop = IDDM_Lop; pKeHoachTruongInfo.IDXL_Tuan = IDTuan; pKeHoachTruongInfo.CaHoc = objCellData.BuoiHoc; pKeHoachTruongInfo.IDDM_PhongHoc = objCellData.IDPhongHoc; pKeHoachTruongInfo.NgayNghi = objCellData.NgayNghi; UpdateKeHoachTruongTuan(pKeHoachTruongInfo); //} } // Còn lại là Insert vào else { pKeHoachTruongInfo = new XL_KeHoachTruongInfo(); pKeHoachTruongInfo.IDXL_KeHoachKhac = objCellData.IDKeHoachKhac; pKeHoachTruongInfo.IDDM_Lop = IDDM_Lop; pKeHoachTruongInfo.IDXL_Tuan = IDTuan; pKeHoachTruongInfo.CaHoc = objCellData.BuoiHoc; pKeHoachTruongInfo.IDDM_PhongHoc = objCellData.IDPhongHoc; pKeHoachTruongInfo.NgayNghi = "" + objCellData.NgayNghi; objCellData.KeHoachTruongID = InsertKeHoachTruongTuan(pKeHoachTruongInfo); } objCellData.Changed = false; rg.UserData = objCellData; } } } c++; } } }