private void btnLuu_Click(object sender, EventArgs e) { //btnCheckMaPhieuXuat.Enabled = true; //Ko cần thiết if (cbMaPhieuXuatTam.Text.Trim() == "") { MessageBox.Show("Mã phiếu bắt buộc nhập!"); return; } if (dataTableChiTietPhieuXuatTam.Rows.Count == 0) { MessageBox.Show("Dữ liệu trong danh sách vật tư không rỗng"); return; } switch (PanelButton.getClickStatus()) { case enumButton2.Them: try { DatabaseHelper help = new DatabaseHelper(); help.ConnectDatabase(); using (var dbcxtransaction = help.ent.Database.BeginTransaction()) { //01: Thêm phiếu vào DS clsPhieuXuatTamVatTu phieuxuat = new clsPhieuXuatTamVatTu(); phieuxuat.Ma_phieu_xuat_tam = cbMaPhieuXuatTam.Text.Trim(); if (phieuxuat.CheckTonTaiSoDK(help , phieuxuat.Ma_phieu_xuat_tam) == true) { MessageBox.Show("Mã phiếu đã tồn tại! "); return; } phieuxuat.ID_Nhan_vien = Int32.Parse(cbMaNhanVien.SelectedValue.ToString()); phieuxuat.Ngay_xuat = dtNgayXuat.Value; phieuxuat.ID_kho = Int32.Parse(cbKhoXuat.SelectedValue.ToString()); phieuxuat.Ly_do = txtLyDo.Text.Trim(); phieuxuat.Cong_trinh = txtCongTrinh.Text.Trim(); phieuxuat.Dia_chi = txtDiaChi.Text.Trim(); phieuxuat.Da_duyet = bDaDuyetPhieuXuat(); phieuxuat.Insert(help); // clsChiTietPhieuXuatTam ChiTietPhieuXuat = new clsChiTietPhieuXuatTam(); for (int i = 0; i < dataTableChiTietPhieuXuatTam.Rows.Count; i++) { clsChiTietPhieuXuatTam ChiTietPhieuXuat = new clsChiTietPhieuXuatTam(); DataRow dr = dataTableChiTietPhieuXuatTam.Rows[i]; string mavt = dr["ma_vat_tu"].ToString(); int idcl = int.Parse(dr["ID_chat_luong"].ToString()); int idkho = int.Parse(dr["ID_kho"].ToString()); decimal slgl = decimal.Parse(dr["So_luong_giu_lai"].ToString()); decimal sldn = decimal.Parse(dr["So_luong_de_nghi"].ToString()); decimal sltx = decimal.Parse(dr["So_luong_thuc_xuat"].ToString()); decimal slhn = decimal.Parse(dr["So_luong_hoan_nhap"].ToString()); decimal sldg = decimal.Parse(dr["So_luong_dang_giu"].ToString()); ChiTietPhieuXuat.Id_chat_luong = idcl; ChiTietPhieuXuat.Ma_phieu_xuat_tam = phieuxuat.Ma_phieu_xuat_tam; ChiTietPhieuXuat.Ma_vat_tu = mavt; ChiTietPhieuXuat.ID_kho = idkho; ChiTietPhieuXuat.So_luong_giu_lai = slgl; ChiTietPhieuXuat.so_luong_thuc_lanh = sltx; ChiTietPhieuXuat.So_luong_hoan_nhap = slhn; ChiTietPhieuXuat.So_luong_de_nghi = sldn; ChiTietPhieuXuat.So_luong_dang_giu = sldg; ChiTietPhieuXuat.ID_chi_tiet_phieu_xuat_tam = phieuxuat.ID_phieu_xuat_tam; if (ChiTietPhieuXuat.Insert(help) == 0) { dbcxtransaction.Rollback(); MessageBox.Show("Cập nhật thất bại"); return; } } MessageBox.Show("Cập nhật thành công !"); dbcxtransaction.Commit(); PanelButton.setClickSua(); ResetGridInputForm(); dataTableChiTietPhieuXuatTam.Clear(); SetDataToGrid(); //if (ChiTietPhieuXuat.CapNhapChiTietPhieuXuat(dataTableChiTietPhieuXuatTam, phieuxuat.Ma_phieu_xuat_tam, phieuxuat) == 1) //{ // MessageBox.Show("Bạn đã thêm thành công!"); // PanelButton.setClickSua(); // ResetGridInputForm(); // dataTableChiTietPhieuXuatTam.Clear(); // SetDataToGrid(); //} frmDanhSachPhieuXuatTamVatTu dspx = new frmDanhSachPhieuXuatTamVatTu(phieuxuat.Ma_phieu_xuat_tam); dspx.Show(); } } catch (Exception ex) { MessageBox.Show(ex.ToString()); } break; case enumButton2.Sua: { try { DatabaseHelper help = new DatabaseHelper(); help.ConnectDatabase(); using (var dbcxtransaction = help.ent.Database.BeginTransaction()) { //01: Thêm phiếu vào DS clsPhieuXuatTamVatTu phieuxuat = new clsPhieuXuatTamVatTu(); phieuxuat.Ma_phieu_xuat_tam = cbMaPhieuXuatTam.Text.Trim(); phieuxuat.ID_Nhan_vien = Int32.Parse(cbMaNhanVien.SelectedValue.ToString()); phieuxuat.Ngay_xuat = dtNgayXuat.Value; phieuxuat.ID_kho = Int32.Parse(cbKhoXuat.SelectedValue.ToString()); phieuxuat.Ly_do = txtLyDo.Text.Trim(); phieuxuat.Cong_trinh = txtCongTrinh.Text.Trim(); phieuxuat.Dia_chi = txtDiaChi.Text.Trim(); phieuxuat.Da_duyet = false; int idphieu = phieuxuat.TimMaPhieu(phieuxuat.Ma_phieu_xuat_tam); if (idphieu == -1) return; phieuxuat.ID_phieu_xuat_tam = idphieu; if (phieuxuat.Update(help) == 0) { dbcxtransaction.Rollback(); MessageBox.Show("Cập nhật thất bại"); return; } for (int i = 0; i < dataTableChiTietPhieuXuatTam.Rows.Count; i++) { clsChiTietPhieuXuatTam ChiTietPhieuXuat = new clsChiTietPhieuXuatTam(); DataRow dr = dataTableChiTietPhieuXuatTam.Rows[i]; string mavt = dr["ma_vat_tu"].ToString(); int idcl = int.Parse(dr["ID_chat_luong"].ToString()); int idkho = int.Parse(dr["ID_kho"].ToString()); decimal slgl = decimal.Parse(dr["So_luong_giu_lai"].ToString()); decimal sldn = decimal.Parse(dr["So_luong_de_nghi"].ToString()); decimal sltx = decimal.Parse(dr["So_luong_thuc_xuat"].ToString()); decimal slhn = decimal.Parse(dr["So_luong_hoan_nhap"].ToString()); decimal sldg = decimal.Parse(dr["So_luong_dang_giu"].ToString()); ChiTietPhieuXuat.Id_chat_luong = idcl; ChiTietPhieuXuat.Ma_phieu_xuat_tam = phieuxuat.Ma_phieu_xuat_tam; ChiTietPhieuXuat.Ma_vat_tu = mavt; ChiTietPhieuXuat.ID_kho = idkho; ChiTietPhieuXuat.So_luong_giu_lai = slgl; ChiTietPhieuXuat.so_luong_thuc_lanh = sltx; ChiTietPhieuXuat.So_luong_hoan_nhap = slhn; ChiTietPhieuXuat.So_luong_de_nghi = sldn; ChiTietPhieuXuat.So_luong_dang_giu = sldg; ChiTietPhieuXuat.ID_chi_tiet_phieu_xuat_tam = phieuxuat.ID_phieu_xuat_tam; if ( ChiTietPhieuXuat.Insert(help) == 0) { dbcxtransaction.Rollback(); MessageBox.Show("Cập nhật thất bại"); return; } } MessageBox.Show("Cập nhật thành công !"); dbcxtransaction.Commit(); if (dspn != null) { dspn. LoadInitGridMaster(); } this.Close(); //if (ChiTietPhieuXuat.CapNhapChiTietPhieuXuat(dataTableChiTietPhieuXuatTam, phieuxuat.Ma_phieu_xuat_tam, phieuxuat) == 1) //{ // MessageBox.Show("Bạn đã cập nhật thành công!"); // ResetGridInputForm(); // dataTableChiTietPhieuXuatTam.Clear(); // SetDataToGrid(); //} } } catch (Exception ex) { MessageBox.Show(ex.ToString()); } } break; case enumButton2.BaoGiuLai: { try { DatabaseHelper help = new DatabaseHelper(); help.ConnectDatabase(); // help.ent.Database.BeginTransaction(); using (var dbcxtransaction = help.ent.Database.BeginTransaction()) { clsDuyetPhieu duyetgiulai = new clsDuyetPhieu(); clsPhieuXuatTamVatTu pxt = new clsPhieuXuatTamVatTu(); // pxt.Delete(help,cbMaPhieuXuatTam.Text.Trim()); for (int i = 0; i < dataTableChiTietPhieuXuatTam.Rows.Count; i++) { clsChiTietPhieuXuatTam ctpxt = new clsChiTietPhieuXuatTam(); DataRow dr = dataTableChiTietPhieuXuatTam.Rows[i]; string mavt = dr["ma_vat_tu"].ToString(); int idcl = int.Parse(dr["ID_chat_luong"].ToString()); decimal slgl = decimal.Parse(dr["So_luong_giu_lai"].ToString()); Chi_Tiet_Phieu_Xuat_Tam temp = ctpxt.TimKiem(help,cbMaPhieuXuatTam.Text, mavt, idcl); if (temp == null) { dbcxtransaction.Rollback(); return; } else { temp.So_luong_giu_lai = (decimal?)slgl; if (ctpxt.Update(help, temp) == 0) { MessageBox.Show("Giữ lại thất bại!"); return; } } } //01: Thêm phiếu vào DS //clsPhieuXuatTamVatTu phieuxuat = new clsPhieuXuatTamVatTu(); //phieuxuat.Ma_phieu_xuat_tam = cbMaPhieuXuatTam.Text.Trim(); //phieuxuat.ID_Nhan_vien = Int32.Parse(cbMaNhanVien.SelectedValue.ToString()); //phieuxuat.Ngay_xuat = dtNgayXuat.Value; //phieuxuat.ID_kho = Int32.Parse(cbKhoXuat.SelectedValue.ToString()); //phieuxuat.Ly_do = txtLyDo.Text.Trim(); //phieuxuat.Cong_trinh = txtCongTrinh.Text.Trim(); //phieuxuat.Dia_chi = txtDiaChi.Text.Trim(); //phieuxuat.Da_duyet = bDaDuyetPhieuXuat(); if (duyetgiulai.XuLyGiuLai(help, cbMaPhieuXuatTam.Text.Trim()) == 1) { dbcxtransaction.Commit(); MessageBox.Show("Bạn đã cập nhật thành công!"); ResetGridInputForm(); dataTableChiTietPhieuXuatTam.Clear(); SetDataToGrid(); if (dspn != null) { dspn.LoadInitGridMaster(); dspn.Refresh(); } this.Close(); } else { dbcxtransaction.Rollback(); } } } catch (Exception ex) { MessageBox.Show(ex.ToString()); } } break; case enumButton2.BaoHoanNhap: { try { DatabaseHelper help = new DatabaseHelper(); help.ConnectDatabase(); // help.ent.Database.BeginTransaction(); using (var dbcxtransaction = help.ent.Database.BeginTransaction()) { clsDuyetPhieu duyetgiulai = new clsDuyetPhieu(); clsPhieuXuatTamVatTu pxt = new clsPhieuXuatTamVatTu(); // pxt.Delete(help,cbMaPhieuXuatTam.Text.Trim()); for (int i = 0; i < dataTableChiTietPhieuXuatTam.Rows.Count; i++) { clsChiTietPhieuXuatTam ctpxt = new clsChiTietPhieuXuatTam(); DataRow dr = dataTableChiTietPhieuXuatTam.Rows[i]; string mavt = dr["ma_vat_tu"].ToString(); int idcl = int.Parse(dr["ID_chat_luong"].ToString()); decimal slgl = decimal.Parse(dr["So_luong_hoan_nhap"].ToString()); Chi_Tiet_Phieu_Xuat_Tam temp = ctpxt.TimKiem(help, cbMaPhieuXuatTam.Text, mavt, idcl); if (temp == null) { dbcxtransaction.Rollback(); return; } else { temp.So_luong_hoan_nhap = (decimal?)slgl; if (ctpxt.Update(help, temp) == 0) { MessageBox.Show("Giữ lại thất bại!"); return; } } } //01: Thêm phiếu vào DS //clsPhieuXuatTamVatTu phieuxuat = new clsPhieuXuatTamVatTu(); //phieuxuat.Ma_phieu_xuat_tam = cbMaPhieuXuatTam.Text.Trim(); //phieuxuat.ID_Nhan_vien = Int32.Parse(cbMaNhanVien.SelectedValue.ToString()); //phieuxuat.Ngay_xuat = dtNgayXuat.Value; //phieuxuat.ID_kho = Int32.Parse(cbKhoXuat.SelectedValue.ToString()); //phieuxuat.Ly_do = txtLyDo.Text.Trim(); //phieuxuat.Cong_trinh = txtCongTrinh.Text.Trim(); //phieuxuat.Dia_chi = txtDiaChi.Text.Trim(); //phieuxuat.Da_duyet = bDaDuyetPhieuXuat(); if (duyetgiulai.XyLyHoanNhap(help, cbMaPhieuXuatTam.Text.Trim()) == 1) { dbcxtransaction.Commit(); MessageBox.Show("Bạn đã cập nhật thành công!"); ResetGridInputForm(); dataTableChiTietPhieuXuatTam.Clear(); SetDataToGrid(); } else { dbcxtransaction.Rollback(); } //01: Thêm phiếu vào DS //clsPhieuXuatTamVatTu phieuxuat = new clsPhieuXuatTamVatTu(); //phieuxuat.Ma_phieu_xuat_tam = cbMaPhieuXuatTam.Text.Trim(); //phieuxuat.ID_Nhan_vien = Int32.Parse(cbMaNhanVien.SelectedValue.ToString()); //phieuxuat.Ngay_xuat = dtNgayXuat.Value; //phieuxuat.ID_kho = Int32.Parse(cbKhoXuat.SelectedValue.ToString()); //phieuxuat.Ly_do = txtLyDo.Text.Trim(); //phieuxuat.Cong_trinh = txtCongTrinh.Text.Trim(); //phieuxuat.Dia_chi = txtDiaChi.Text.Trim(); //phieuxuat.Da_duyet = bDaDuyetPhieuXuat(); //try //{ // clsChiTietPhieuXuatTam ChiTietPhieuXuat = new clsChiTietPhieuXuatTam(); // if (ChiTietPhieuXuat.CapNhapChiTietPhieuXuat(dataTableChiTietPhieuXuatTam, phieuxuat.Ma_phieu_xuat_tam, phieuxuat) == 1) // { // MessageBox.Show("Bạn đã cập nhật thành công!"); // ResetGridInputForm(); // dataTableChiTietPhieuXuatTam.Clear(); // SetDataToGrid(); // } //} //catch (Exception ex) //{ // MessageBox.Show(ex.ToString()); //} } } catch (Exception ex) { MessageBox.Show(ex.ToString()); } } break; } }
public frmChiTietPhieuXuatTam(string MaPhieXuatTam, enumButton2 stt,frmDanhSachPhieuXuatTamVatTu dspn) { InitializeComponent(); frm_init(); clsPhieuXuatTamVatTu pxt = new clsPhieuXuatTamVatTu(); if (pxt.CheckTonTaiSoDK(MaPhieXuatTam) == false) { MessageBox.Show("Mã phiếu xuất bạn chọn ko tồn tại!"); this.Close(); } cbMaPhieuXuatTam.Text = MaPhieXuatTam; btnSua_Click(btnSua, EventArgs.Empty); //tùy theo stt, setup frm if (stt == enumButton2.BaoGiuLai) { PanelButton.setClickStatus(stt); EnableControl_For_BaoGiuLai(); return; } else if (stt == enumButton2.BaoHoanNhap) { PanelButton.setClickStatus(stt); EnableControl_For_BaoHoanNhap(); return; } if (stt == enumButton2.Sua || stt == enumButton2.Xoa) { PanelButton.setClickStatus(stt); EnableControl_ForNew(); return; } else { MessageBox.Show("Xảy ra lỗi khởi tạo phiếu!"); this.Close(); } this.dspn = dspn; }