private void grdPhanCong_DragDrop(object sender, DragEventArgs e) { try { GridHitInfo hi = grvPhanCong.CalcHitInfo(grdPhanCong.PointToClient(new Point(e.X, e.Y))); if (hi.InRow) { e.Effect = DragDropEffects.Copy; rowIndex = hi.RowHandle; if ("" + dtPhanCong.Rows[rowIndex]["HoTens"] != "") { popupGiaoVien.ShowPopup(MousePosition); } else { if (!CheckMonDayGiaoVien(dtPhanCong.Rows[rowIndex]["IDDM_MonHoc"].ToString())) { if (ThongBaoChon("Môn học này không có trong danh sách các môn có thể dạy của giảng viên: " + HoTen + "\nBạn có đồng ý với lựa chọn này không?") != DialogResult.Yes) { return; } } GetpXL_PhanCongGiaoVienInfo(int.Parse(dtPhanCong.Rows[rowIndex]["XL_MonHocTrongKyID"].ToString())); pXL_PhanCongGiaoVienInfo.SoTiet = int.Parse(dtPhanCong.Rows[rowIndex]["SoTiet"].ToString()); oBXL_PhanCongGiaoVien.Add(pXL_PhanCongGiaoVienInfo); DataRow[] arrDr = dtGiaoVien.Select("IDNS_GiaoVien = " + IDNS_GiaoVien); if (arrDr.Length > 0) { arrDr[0]["TongSoTiet"] = int.Parse("0" + arrDr[0]["TongSoTiet"]) + pXL_PhanCongGiaoVienInfo.SoTiet; } // ghi log GhiLog("Thêm giáo viên '" + HoTen + "' vào lớp '" + dtPhanCong.Rows[rowIndex]["TenLop"].ToString() + "' dạy môn học '" + dtPhanCong.Rows[rowIndex]["TenMonHoc"].ToString() + "'", "Thêm", this.Tag.ToString()); dtPhanCong.Rows[rowIndex]["IDNS_GiaoViens"] = IDNS_GiaoVien.ToString(); dtPhanCong.Rows[rowIndex]["HoTens"] = HoTen; dtPhanCong.Rows[rowIndex]["SoTiets"] = pXL_PhanCongGiaoVienInfo.SoTiet.ToString(); } //DataRow[] arrDr = dtPhanCong.Select("IDNS_GiaoVien = " + IDNS_GiaoVien.ToString()); //if (arrDr.Length > 0) //{ // arrDr[0]["SoTiet"] = int.Parse("0" + arrDr[0]["SoTiet"]) + int.Parse(dtPhanCong.Rows[hi.RowHandle]["SoTietTuan"].ToString()); //} } } catch (Exception ex) { ThongBao(ex.Message); } }
private void btnCapNhat_Click(object sender, EventArgs e) { // Cập nhật số tiết pXL_PhanCongGiaoVienInfo.IDXL_MonHocTrongKy = int.Parse(drPhanCong["XL_MonHocTrongKyID"].ToString()); DataRow[] arrDr; drPhanCong["IDNS_GiaoViens"] = ""; drPhanCong["HoTens"] = ""; drPhanCong["SoTiets"] = ""; foreach (DataRow dr in dtPhanCong.Rows) { pXL_PhanCongGiaoVienInfo.IDNS_GiaoVien = int.Parse(dr["IDNS_GiaoVien"].ToString()); pXL_PhanCongGiaoVienInfo.SoTiet = int.Parse(dr["SoTiet"].ToString()); if (int.Parse(dr["XL_PhanCongGiaoVienID"].ToString()) > 0) { pXL_PhanCongGiaoVienInfo.XL_PhanCongGiaoVienID = int.Parse(dr["XL_PhanCongGiaoVienID"].ToString()); oBXL_PhanCongGiaoVien.Update(pXL_PhanCongGiaoVienInfo); } else { oBXL_PhanCongGiaoVien.Add(pXL_PhanCongGiaoVienInfo); } // Cập nhật lại số tiết kỳ của GV arrDr = dtGiaoVien.Select("IDNS_GiaoVien = " + pXL_PhanCongGiaoVienInfo.IDNS_GiaoVien.ToString()); if (arrDr.Length > 0) { arrDr[0]["TongSoTiet"] = int.Parse("0" + arrDr[0]["TongSoTiet"]) - int.Parse(dr["SoTietCu"].ToString()) + int.Parse(dr["SoTiet"].ToString()); } drPhanCong["IDNS_GiaoViens"] = ("" + drPhanCong["IDNS_GiaoViens"] == "" ? dr["IDNS_GiaoVien"].ToString() : drPhanCong["IDNS_GiaoViens"] + "," + dr["IDNS_GiaoVien"]); drPhanCong["HoTens"] = ("" + drPhanCong["HoTens"] == "" ? dr["HoTen"].ToString() : drPhanCong["HoTens"] + ", " + dr["HoTen"]); drPhanCong["SoTiets"] = ("" + drPhanCong["SoTiets"] == "" ? dr["SoTiet"].ToString() : drPhanCong["SoTiets"] + ", " + dr["SoTiet"]); } this.DialogResult = DialogResult.OK; this.Close(); }