private void btnSave_Click(object sender, EventArgs e) { try { if (_chkAdd) { if (txtKey.Text.Trim() == string.Empty) { MessageBox.Show("Bạn hãy nhập mã khách hàng muốn thêm!", "Thông báo"); } else { if (CTHDBUL.checkMaCTHDBUL(txtKey.Text.Trim())) { CTHD item = new CTHD(); item.MACTHD = txtKey.Text; item.MaSach = cmbSach.SelectedValue.ToString(); item.MaHD = cmbHD.SelectedValue.ToString(); item.SL_BAN = Convert.ToInt16(txtSL_Ban.Text); //insert into database //Chỉ bán cho khách có số nợ dưới 20000 //SL_Ton sau >= 20 if (ThamSoBUL.SelectThamSoBUL() != null && ThamSoBUL.SelectThamSoBUL().SuDungQuyDinh == true) { if (!CTHDBUL.checkKH_CTHDBUL(item.MaHD)) { MessageBox.Show("Do khách hàng có số nợ lớn hơn 20000\nNên không thể thực hiện giao dịch này", "Thông Báo"); } else if ((CTHDBUL.TakeSach_SL_TonBUL(item.MaSach) - item.SL_BAN) < ThamSoBUL.SelectThamSoBUL().SL_TonSauToiThieu) { MessageBox.Show("Số lượng tồn sau khi bán nhỏ hơn 20\n Nên không thể thực hiện giao dịch này ", "Thông Báo"); } else { CTHDBUL.InsertCTHDBUL(item); MessageBox.Show("Bạn đã thêm chi tiết hóa đơn [" + txtKey.Text + "] thành công", "Thông báo"); txtKey.Text = String.Empty; cmbHD.SelectedIndex = -1; cmbSach.SelectedIndex = -1; txtSL_Ban.Text = String.Empty; } } else { CTHDBUL.InsertCTHDBUL(item); MessageBox.Show("Bạn đã thêm chi tiết hóa đơn [" + txtKey.Text + "] thành công", "Thông báo"); txtKey.Text = String.Empty; cmbHD.SelectedIndex = -1; cmbSach.SelectedIndex = -1; txtSL_Ban.Text = String.Empty; } } else { MessageBox.Show("Mã CTHD đã tồn tại, bạn hãy nhâp một mã CTHD khác!", "Cảnh báo", MessageBoxButtons.OK, MessageBoxIcon.Warning); } } } else { if (txtKey.Text.Trim() != string.Empty) { DialogResult dialog = MessageBox.Show("Bạn có muốn sửa chi tiết hóa đơn?", "Thông báo", MessageBoxButtons.OKCancel, MessageBoxIcon.Warning); if (dialog == DialogResult.OK) { CTHD item = new CTHD(); item.MACTHD = txtKey.Text; item.MaSach = cmbSach.ValueMember; item.MaHD = cmbHD.ValueMember; item.SL_BAN = Convert.ToInt16(txtSL_Ban.Text); //insert into database //Chỉ bán cho khách có số nợ dưới 20000 //SL_Ton sau >= 20 if (ThamSoBUL.SelectThamSoBUL() != null && ThamSoBUL.SelectThamSoBUL().SuDungQuyDinh == true) { if (!CTHDBUL.checkKH_CTHDBUL(item.MaHD)) { MessageBox.Show("Do khách hàng có số nợ lớn hơn 20000\nNên không thể thực hiện giao dịch này", "Thông Báo"); } else if ((CTHDBUL.TakeSach_SL_TonBUL(item.MaSach) - item.SL_BAN) < ThamSoBUL.SelectThamSoBUL().SL_TonSauToiThieu) { MessageBox.Show("Số lượng tồn sau khi bán nhỏ hơn 20\n Nên không thể thực hiện giao dịch này ", "Thông Báo"); } else { CTHDBUL.UpdateCTHDBUL(item); MessageBox.Show("Bạn đã sửa chi tiết hóa đơn [" + txtKey.Text + "] thành công", "Thông báo"); } } else { CTHDBUL.UpdateCTHDBUL(item); MessageBox.Show("Bạn đã sửa chi tiết hóa đơn [" + txtKey.Text + "] thành công", "Thông báo"); } } } else { MessageBox.Show("Không tìm được mã CTHD để cập nhật!", "Thông báo"); } } Reload(); _chkAdd = false; btnAdd.Text = "Thêm"; btnUpdate.Text = "Sửa"; btnSave.Enabled = false; btnDelete.Enabled = true; btnAdd.Enabled = true; txtKey.Enabled = false; cmbHD.Enabled = false; cmbSach.Enabled = false; txtSL_Ban.Enabled = false; } catch (Exception ex) { MessageBox.Show(ex.ToString(), "Thông Báo", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
public static void UpdateCTHDDAL(CTHD item) { var queryCTHD_Cu = db.CTHDs.Single(i => i.MACTHD == item.MACTHD); var queryS = db.SACHes.Single(i=>i.MaSach == item.MaSach); var queryHD = db.HOADONs.Single(i=>i.MaHD == item.MaHD); var queryKH = db.KHACHHANGs.Single(i => i.MaKH == queryHD.MaKH); //Thay đổi tồn sách queryS.SL_Ton = queryS.SL_Ton - queryCTHD_Cu.SL_BAN + item.SL_BAN; //thay đổi số tiền nợ khách hàng queryKH.SoTienNo = queryKH.SoTienNo - queryCTHD_Cu.SL_BAN * queryS.DonGia * Convert.ToDecimal(1.05) + item.SL_BAN * queryS.DonGia * Convert.ToDecimal(1.05); //Thay đổi CTHD var query = db.CTHDs.Single(i => i.MACTHD == item.MACTHD); query.MaSach = item.MaSach; query.MaHD = item.MaHD; query.SL_BAN = item.SL_BAN; db.SubmitChanges(); }
public static void InsertCTHDDAL(CTHD item) { var queryHD = db.HOADONs.Single(i => i.MaHD == item.MaHD); var queryS = db.SACHes.Single(i => i.MaSach == item.MaSach); var query = db.KHACHHANGs.Single(i => i.MaKH == queryHD.MaKH); query.SoTienNo = query.SoTienNo + item.SL_BAN * queryS.DonGia * Convert.ToDecimal(1.05); queryS.SL_Ton = queryS.SL_Ton - item.SL_BAN; item.XoaDuLieu = false; db.CTHDs.InsertOnSubmit(item); db.SubmitChanges(); }
public static void InsertCTHDBUL(CTHD item) { CTHDController.InsertCTHDDAL(item); }
public static void UpdateCTHDBUL(CTHD item) { CTHDController.UpdateCTHDDAL(item); }
partial void DeleteCTHD(CTHD instance);
partial void UpdateCTHD(CTHD instance);
partial void InsertCTHD(CTHD instance);
private void detach_CTHDs(CTHD entity) { this.SendPropertyChanging(); entity.SACH = null; }
private void attach_CTHDs(CTHD entity) { this.SendPropertyChanging(); entity.SACH = this; }