public int InsertDeVaKhoiTrongKyThi(int MaKhoi, string MaDe, string MaKyThi) { /* * Thêm 1 mã đề và mã khối Vào trong CSDl * Nếu không tìm thấy Mã Đề trong CSDL và không tìm thấy Mã Khôi trong CSDL -> 2 * Nếu không tìm thấy Mã Kì Thi trong CSDL -> 3 * DeVaKhoiTrongKyThi = Mã Khối + 2 kí tự cuối của MaDe và 6 kí tự cuối của MaKyThi * VD : Mã khối = 10 , Mã đề : MA20200000 , Ma kì thi : KT20201520 => DeVaKhoiTrongKyThi = "1000201520" * VD : Mã khối = 12 , Mã đề : MA20200001 , Ma kì thi : KT20201520 => DeVaKhoiTrongKyThi = "1201201520" * Trả về 0 */ using (DataContextDataContext DB = new DataContextDataContext()) { var findMaKhoiAndMaDeINCSDL = from de in DB.Des where de.MaDe == MaDe && de.MaKhoi == MaKhoi select de; if (findMaKhoiAndMaDeINCSDL.Count() == 0) { return(2); } var findMaKyThiINCSDL = from KyThi in DB.KyThis where KyThi.MaKyThi == MaKyThi select KyThi; if (findMaKyThiINCSDL.Count() == 0) { return(3); } string DeVaKhoiTrongKyThis = MaKhoi.ToString() + MaDe.Substring(8, 2) + MaKyThi.Substring(4, 6); DeVaKhoiTrongKyThi DeVaKhoiTrongKyThi = new DeVaKhoiTrongKyThi(); DeVaKhoiTrongKyThi.MaKyThi = MaKyThi; DeVaKhoiTrongKyThi.MaKhoi = MaKhoi; DeVaKhoiTrongKyThi.MaDe = MaDe; DeVaKhoiTrongKyThi.MaDeVaKhoiTrongKyThi = DeVaKhoiTrongKyThis; DB.DeVaKhoiTrongKyThis.InsertOnSubmit(DeVaKhoiTrongKyThi); DB.SubmitChanges(); return(0); } }
private void btnLoadDanhSachCauHoi_Click(object sender, EventArgs e) { if (listViewDanhSachDeTheoMaKhoi.CheckedItems.Count > 1) { MessageBox.Show("Bạn đã chọn nhiều hơn 1 mã đề . Làm hơn chọn 1 mã đề", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } if (listViewDanhSachDeTheoMaKhoi.CheckedItems.Count == 0) { MessageBox.Show("Bạn đã không chọn mã đề nào . Làm hơn chọn 1 mã đề", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } string Made = listViewDanhSachDeTheoMaKhoi.CheckedItems[0].Text; foreach (var mem in khoiBUS_HT.GetKhoiAll()) { if (mem.TenKhoi == cbKhoi.Text) { this.MaKhoi = mem.MaKhoi; break; } } string MaDeVaKhoiTrongKiThi = MaKhoi.ToString() + Made.Substring(6, 4) + txtMaKiThi.Text.Substring(6, 4); DTO.HT.DeVaKhoiTrongKyThi deVaKhoiTrongKyThi = new DeVaKhoiTrongKyThi(); deVaKhoiTrongKyThi.MaDe = Made; deVaKhoiTrongKyThi.MaKhoi = this.MaKhoi; deVaKhoiTrongKyThi.MaKyThi = txtMaKiThi.Text; deVaKhoiTrongKyThi.MaDeVaKhoiTrongKyThi = MaDeVaKhoiTrongKiThi; var find = DB.DeVaKhoiTrongKyThis.Where(r => r.MaDe == Made && r.MaKhoi == MaKhoi && r.MaKyThi == txtMaKiThi.Text); if (find.Count() == 0) { using (DataContextDataContext DB = new DataContextDataContext()) { DB.DeVaKhoiTrongKyThis.InsertOnSubmit(deVaKhoiTrongKyThi); DB.SubmitChanges(); } } int temp = 0; for (int i = 0; i < listViewDanhSachHocSinh.CheckedItems.Count; i++) { string Ma = (from mdevakhoitrongkithi in DB.DeVaKhoiTrongKyThis where mdevakhoitrongkithi.MaDe == Made && mdevakhoitrongkithi.MaKhoi == this.MaKhoi && mdevakhoitrongkithi.MaKyThi == txtMaKiThi.Text select mdevakhoitrongkithi.MaDeVaKhoiTrongKyThi).Single(); var find2 = DB.HocSinhTrongKiThis.Where(r => r.MaHocSinh == listViewDanhSachHocSinh.CheckedItems[i].Text && r.MaDeVaKhoiTrongKiThi == Ma); HocSinhTrongKiThi hocSinhTrongKiThi = new HocSinhTrongKiThi(); hocSinhTrongKiThi.MaDeVaKhoiTrongKiThi = Ma; hocSinhTrongKiThi.MaHocSinh = listViewDanhSachHocSinh.CheckedItems[i].Text; hocSinhTrongKiThi.Diem = null; if (find2.Count() == 0) { using (DataContextDataContext DB = new DataContextDataContext()) { temp++; DB.HocSinhTrongKiThis.InsertOnSubmit(hocSinhTrongKiThi); DB.SubmitChanges(); } } else { MessageBox.Show("Không thành công khi thêm hoc sinh " + listViewDanhSachHocSinh.CheckedItems[i].Text, "Lỗi", MessageBoxButtons.OK, MessageBoxIcon.Error); } } if (temp == listViewDanhSachHocSinh.CheckedItems.Count) { MessageBox.Show("Thành công", "Thành công", MessageBoxButtons.OK, MessageBoxIcon.Information); } }