public int Update(MMenhDe menhDe) { String query = "Update " + tableName + " Set Name=N'" + menhDe.Name + "' Where ID=" + menhDe.ID; return(da.Write(query)); }
private void btLuu_Click(object sender, EventArgs e) { if (lbDanhSach.SelectedItem == null) { MessageBox.Show("Bạn phải chọn Mệnh đề cần sửa trong Danh sách"); return; } if (String.IsNullOrEmpty(tbTen.Text.Trim())) { MessageBox.Show("Bạn phải nhập tên mệnh đề!"); tbTen.Focus(); return; } CMenhDe cMenhDe = new CMenhDe(); MMenhDe menhDe = cMenhDe.GetByID(lbDanhSach.SelectedValue.ToString()); menhDe.Name = tbTen.Text.Trim(); if (!cMenhDe.ExistExceptID(menhDe.Name, menhDe.ID.ToString())) { cMenhDe.Update(menhDe); } else { MessageBox.Show("Tên mệnh đề bạn đã sửa trùng với tên của mệnh đề khác trong CSDL! Hãy chọn tên khác"); tbTen.Focus(); return; } tbTen.Text = ""; tbTen.Focus(); LoadMenhDe(); }
private void btThemMoi_Click(object sender, EventArgs e) { // Kiem soat nhap du lieu if (String.IsNullOrEmpty(tbTenLuat.Text)) { tbTenLuat.Focus(); MessageBox.Show("Bạn phải nhập tên Luật"); return; } if (String.IsNullOrEmpty(tbMoTaLuat.Text)) { tbMoTaLuat.Focus(); MessageBox.Show("Bạn phải nhập thông tin mô tả Luật"); return; } if (clbVeTrai.SelectedItems.Count == 0) { MessageBox.Show("Bạn phải chọn mệnh đề vế trái"); clbVeTrai.Focus(); return; } // Cap nhat vao CSDL CLuat cl = new CLuat(); List <MMenhDe> veTrai = new List <MMenhDe>(); CMenhDe cmd = new CMenhDe(); int index = 0; for (int i = 0; i < clbVeTrai.Items.Count; i++) { if (clbVeTrai.GetItemChecked(index)) { String id = IDList[i]; MMenhDe m = cmd.GetByID(id); if (m != null) { veTrai.Add(m); } } index++; } int dem = cl.Insert(tbTenLuat.Text, tbMoTaLuat.Text, int.Parse(cbbVePhai.SelectedValue.ToString()), veTrai); if (dem == 1) { // Load lại du lieu tren giao dien DocLuat(); tbTenLuat.Text = ""; tbMoTaLuat.Text = ""; cbbVePhai.SelectedIndex = 0; for (int i = 0; i < clbVeTrai.Items.Count; i++) { clbVeTrai.SetItemChecked(i, false); } } else { MessageBox.Show("Lỗi ..."); } }
public int Insert(MMenhDe menhDe) { if (!Exist(menhDe.Name)) { String query = "Insert Into " + tableName + "(Name) Values(N'" + menhDe.Name + "')"; return(da.Write(query)); } else { return(0); } }
private void btSuyLuan_Click(object sender, EventArgs e) { // Kiem tra xem nguoi dung da chon cac menh de hay chua, toi thieu 1 menh de if (clbMenhDe.CheckedItems.Count == 0) { MessageBox.Show("Bạn phải chọn tối thiểu 1 mệnh đề!"); clbMenhDe.Focus(); return; } // Doc danh sach luat CLuat cl = new CLuat(); List <MLuat> tapLuat = cl.SelectAllList(); // Doc tap su kien da biet List <MMenhDe> tapSKDB = new List <MMenhDe>(); CMenhDe cmd = new CMenhDe(); for (int i = 0; i < clbMenhDe.Items.Count; i++) { if (clbMenhDe.GetItemChecked(i)) { MMenhDe m = cmd.GetByID(dsMenhDe[i]); tapSKDB.Add(m); } } // Dung mo to suy dien de suy luan Motor mt = new Motor(); mt.TLuat = tapLuat; mt.TSKDB = tapSKDB; List <MMenhDe> dsKetQua = mt.Search(); List <MLuat> tapLuat2 = cl.SelectAllList(); // Dien giai ket qua if (dsKetQua != null && dsKetQua.Count > 0) { tbKetQua.Text = "Kết quả thu được:\r\n"; foreach (MMenhDe md in dsKetQua) { tbKetQua.AppendText(md.Name + "\r\n"); int searchIndex = tapLuat2.FindIndex(item => item.RightID == md.ID); tbKetQua.AppendText("\n" + tapLuat2[searchIndex].Description + "\n"); } } else { tbKetQua.Text = "Không tìm được kết quả nào phù hợp"; } }
/// <summary> /// Suy diễn để chứng minh điều gì đó /// </summary> /// <returns>Nếu tập tìm thấy thì trả về true, ngược lại trả về false</returns> public Boolean SearchCondition(MMenhDe menhDeCanCM) { int demSKDB = 0; int demTLuat = 0; List <MMenhDe> TSKM = new List <MMenhDe>(); while (demSKDB != TSKDB.Count || demTLuat != TLuat.Count) { demSKDB = TSKDB.Count; demTLuat = TLuat.Count; List <int> viTriLuatDaDung = new List <int>(); for (int i = 0; i < TLuat.Count; i++) { MLuat li = TLuat[i]; List <MChiTietLuat> veTrai = li.ChiTietLuat(); Boolean suDungDuoc = true; foreach (MChiTietLuat m in veTrai) { if (!TSKDB.Contains(m.Left())) { suDungDuoc = false; break; } } if (suDungDuoc) { TSKDB.Add(li.Right()); TSKM.Add(li.Right()); viTriLuatDaDung.Add(i); } } if (TSKDB.Contains(menhDeCanCM)) { return(true); } for (int i = viTriLuatDaDung.Count - 1; i >= 0; i--) { TLuat.RemoveAt(viTriLuatDaDung[i]); } } return(false); }
public List <MMenhDe> SelectAllList(String condition) { DataTable tb = SelectAll(condition); if (tb != null) { List <MMenhDe> ds = new List <MMenhDe>(); foreach (DataRow r in tb.Rows) { MMenhDe m = new MMenhDe(); m.ID = int.Parse(r["ID"].ToString()); m.Name = r["Name"].ToString(); ds.Add(m); } return(ds); } else { return(null); } }