private void btnAdd_Click(object sender, EventArgs e) { //Move to top later if (!((PanelButton.getClickStatus() == enumButton2.Them) || (PanelButton.getClickStatus() == enumButton2.Sua) || (PanelButton.getClickStatus() == enumButton2.BaoGiuLai) || (PanelButton.getClickStatus() == enumButton2.BaoHoanNhap))) { return; } if (chkboxXacNhanXuat.Checked == false) { if (check_cbKho() == false || check_cbVT() == false || checkSoLuongXuat() == false) { return; } } else { if (checkSoLuongHNGL() == false) { return; } } clsDM_Kho kho = new clsDM_Kho(); bool isKhoNgoai = kho.GetDataARow(int.Parse( cbKhoXuat.SelectedValue.ToString() )); if (isKhoNgoai == true) { int id = cbMuonVTTaiKho.SelectedValue == null ? 0 : int.Parse(cbMuonVTTaiKho.SelectedValue.ToString()); bool isKhoMuon = kho.GetDataARow(id); if (isKhoMuon == true) { MessageBox.Show("Không thể mượn kho khác khi đang chọn kho ngoài để xuất"); return; } } //Kiem tra row trùng lập, chưa giải quyết phần thiếu vật tư, xin thêm //---------- TEST //DataRow dr = dataTableChiTietPhieuXuatTam.NewRow(); //dr["Ma_vat_tu"] = "17190010"; //dr["Ten_vat_tu"] = "Thuốc hàn (Cadweld)"; //dr["ID_kho"] = "0"; //dr["Ten_kho"] = "Kho 1"; //dr["So_luong"] = "20"; //dr["So_luong_de_nghi"] = "10"; //dr["So_luong_thuc_xuat"] = "10"; //dr["Da_duyet_xuat_vat_tu"] = "true"; //dr["So_luong_hoan_nhap"] = "0"; //dr["So_luong_giu_lai"] = "0"; //dr["Da_duyet_hoan_nhap_giu_lai"] = "false"; //dr["So_luong_su_dung"] = "0"; //dataTableChiTietPhieuXuatTam.Rows.Add(dr); //------- int ID_Kho = getIDKho(); //Tạm thời vật tư a trong kho x ko dc add quá 2 lần. --> chưa giải quyết phần thiếu vật tư, xin thêm //data.Select(string.Format("Ma_vat_tu='{0}'", selectedRow.Cells["_Ma_vat_tu"].Value.ToString())); //DataRow[] chkMaVatTu = dataTableChiTietPhieuXuatTam.Select("Ma_vat_tu = \'" + cbMaVatTu.Text.Trim() + "\' AND ID_kho = \'" + ID_Kho + "\'"); //DataRow[] chkMaVatTu = gridChiTietPhieuXuatTam.Select Select(string.Format("ID_kho = '{0}' AND Ma_vat_tu='{1}' AND Id_chat_luong = '{2}' AND Da_duyet_xuat_vat_tu='FALSE'", ID_Kho, cbMaVatTu.Text.Trim(), cbChatLuong.SelectedValue.ToString())); DataRow[] chkMaVatTu = dataTableChiTietPhieuXuatTam.Select(string.Format("ID_kho = '{0}' AND Ma_vat_tu='{1}' AND Id_chat_luong = '{2}' AND Da_duyet_xuat_vat_tu='FALSE'", ID_Kho, cbMaVatTu.Text.Trim(), cbChatLuong.SelectedValue.ToString())); if (chkMaVatTu.Length != 0) { //int index = dataTableChiTietPhieuXuatTam.Rows.IndexOf(chkMaVatTu[0]); //MessageBox.Show("Vật tư bạn chọn đã tồn tại! Bạn có thể sửa lại!"); //Ten_vat_tu DialogResult dialogResult = MessageBox.Show(string.Format("Vật tư mã = '{0}' đã tồn tại!\nBạn có muốn sửa lại không?", cbMaVatTu.Text), "Cảnh báo", MessageBoxButtons.YesNo); if (dialogResult == DialogResult.Yes) { for (int i = 0; i < gridChiTietPhieuXuatTam.Rows.Count; i++) { DataGridViewRow tmp_row = gridChiTietPhieuXuatTam.Rows[i]; if (Int32.Parse(tmp_row.Cells["_ID_kho"].Value.ToString()) == ID_Kho && tmp_row.Cells["_Ma_vat_tu"].Value.ToString() == cbMaVatTu.Text.Trim() && Int32.Parse(tmp_row.Cells["_Id_chat_luong"].Value.ToString()) == Int32.Parse(cbChatLuong.SelectedValue.ToString()) && bool.Parse(tmp_row.Cells["_Da_duyet_xuat_vat_tu"].Value.ToString()) == false) { //gridChiTietPhieuXuatTam.Rows[i].Selected = true; //col = 1, row = i gridChiTietPhieuXuatTam.CurrentCell = gridChiTietPhieuXuatTam[1, i]; ResetGridInputForm(); btnEdit_Click(btnEditRowInGrid, EventArgs.Empty); break; } else { //gridChiTietPhieuXuatTam.Rows[i].Selected = false; } } } else if (dialogResult == DialogResult.No) { //do something else ResetGridInputForm(); } return; } DataRow dr = dataTableChiTietPhieuXuatTam.NewRow(); dr["ID_chi_tiet_phieu_xuat_tam"] = curGridRow_ID; dr["Ma_vat_tu"] = cbMaVatTu.Text; dr["Ten_vat_tu"] = cbTenVatTu.Text; dr["ID_kho"] = ID_Kho; dr["Ten_kho"] = getTenKho(); dr["Ten_don_vi_tinh"] = txtDVT.Text; dr["Id_chat_luong"] = Int32.Parse(cbChatLuong.SelectedValue.ToString()); dr["Loai_chat_luong"] = cbChatLuong.Text; //Chưa setup func, và có lẽ ko cần thiết //dr["So_luong"] = "0"; dr["So_luong_dang_giu"] = txtSLDangGiu.Text; dr["ID_No_vat_tu"] = curGridRow_ID_No_vat_tu; dr["So_luong_de_nghi"] = txtSLDN.Text; dr["So_luong_thuc_xuat"] = txtSLTX.Text; dr["Da_duyet_xuat_vat_tu"] = chkboxXacNhanXuat.Checked; //Chưa cho sửa dr["So_luong_hoan_nhap"] = txtSLHN.Text; dr["So_luong_giu_lai"] = txtSLGL.Text; dr["Da_duyet_hoan_nhap"] = chkboxXacNhanHoanNhap.Checked; dr["Da_duyet_giu_lai"] = chkboxXacNhanGiuLai.Checked; //not use //dr["So_luong_su_dung"] = "0"; dataTableChiTietPhieuXuatTam.Rows.Add(dr); //if (Double.Parse(txtSLDangGiu.Text) > 0) //{ // init_cbMaVatTu(); // init_cbTenVatTu(); //} ResetGridInputForm(); //Khi đã add data của kho xuất rồi, thì đó là kho xuất chính, ko thể thay đổi nữa. //cbKhoXuat.Enabled = false; setup_cbKhoXuat(); // gridMaster.SelectedRows. }
private void XuLyNhap_Phieu() { try { Int32 selectedRowCount = gridDanhSachPhieuNhap.CurrentCell.RowIndex; string maphieu = gridDanhSachPhieuNhap.Rows[selectedRowCount].Cells["Ma_phieu"].Value.ToString(); int idKho = int.Parse(gridDanhSachPhieuNhap.Rows[selectedRowCount].Cells["ID_kho"].Value.ToString()); bool Da_phan_kho = bool.Parse(gridDanhSachPhieuNhap.Rows[selectedRowCount].Cells["Da_phan_kho"].Value.ToString()); if (Da_phan_kho == true) { MessageBox.Show("Phiếu này đã duyệt và phân kho "); return; } int idphieu = string.IsNullOrEmpty(gridDanhSachPhieuNhap.Rows[selectedRowCount].Cells["ID_phieu_nhap"].Value.ToString()) ? -1 : int.Parse(gridDanhSachPhieuNhap.Rows[selectedRowCount].Cells["ID_phieu_nhap"].Value.ToString()); int idloaiphieu = string.IsNullOrEmpty(gridDanhSachPhieuNhap.Rows[selectedRowCount].Cells["id_loai_phieu_nhap"].Value.ToString()) ? -1 : int.Parse(gridDanhSachPhieuNhap.Rows[selectedRowCount].Cells["id_loai_phieu_nhap"].Value.ToString()); bool isgoidau = string.IsNullOrEmpty(gridDanhSachPhieuNhap.Rows[selectedRowCount].Cells["isgoidau"].Value.ToString()) ? false : Boolean.Parse(gridDanhSachPhieuNhap.Rows[selectedRowCount].Cells["isgoidau"].Value.ToString()); bool isKNMN = string.IsNullOrEmpty(gridDanhSachPhieuNhap.Rows[selectedRowCount].Cells["isKNMN"].Value.ToString()) ? false : Boolean.Parse(gridDanhSachPhieuNhap.Rows[selectedRowCount].Cells["isKNMN"].Value.ToString()); bool isToTrinh = string.IsNullOrEmpty(gridDanhSachPhieuNhap.Rows[selectedRowCount].Cells["isToTrinh"].Value.ToString()) ? false : Boolean.Parse(gridDanhSachPhieuNhap.Rows[selectedRowCount].Cells["isToTrinh"].Value.ToString()); bool isKNTN = string.IsNullOrEmpty(gridDanhSachPhieuNhap.Rows[selectedRowCount].Cells["isKNTN"].Value.ToString()) ? false : Boolean.Parse(gridDanhSachPhieuNhap.Rows[selectedRowCount].Cells["isKNTN"].Value.ToString()); bool isKCMN = string.IsNullOrEmpty(gridDanhSachPhieuNhap.Rows[selectedRowCount].Cells["isKCMN"].Value.ToString()) ? false : Boolean.Parse(gridDanhSachPhieuNhap.Rows[selectedRowCount].Cells["isKCMN"].Value.ToString()); bool isKCTN = string.IsNullOrEmpty(gridDanhSachPhieuNhap.Rows[selectedRowCount].Cells["isKCTN"].Value.ToString()) ? false : Boolean.Parse(gridDanhSachPhieuNhap.Rows[selectedRowCount].Cells["isKCTN"].Value.ToString()); bool isNVMN = string.IsNullOrEmpty(gridDanhSachPhieuNhap.Rows[selectedRowCount].Cells["isNVMN"].Value.ToString()) ? false : Boolean.Parse(gridDanhSachPhieuNhap.Rows[selectedRowCount].Cells["isNVMN"].Value.ToString()); int ID_Kho = string.IsNullOrEmpty(gridDanhSachPhieuNhap.Rows[selectedRowCount].Cells["ID_kho"].Value.ToString()) ? 0 : int.Parse(gridDanhSachPhieuNhap.Rows[selectedRowCount].Cells["ID_kho"].Value.ToString()); bool isKhoNgoai = new clsDM_Kho().GetDataARow(ID_Kho); if (isKhoNgoai == true) { if (idloaiphieu != -1) { clsLoaiPhieuNhap lpn = new clsLoaiPhieuNhap(); if (lpn.getTenLPN(idloaiphieu).Equals("XD")) { KhoNgoai pn = new KhoNgoai(); if (pn.Insert(idphieu) == 1) { MessageBox.Show("Đã xác nhận thành công!"); return; } } } } if (isNVMN == true) { KhoNgoai pn = new KhoNgoai(); if (pn.Insert(idphieu) == 1) { MessageBox.Show("Đã xác nhận thành công!"); return; } } if (isToTrinh == true) { BienBanToTrinh BBTT = new BienBanToTrinh(); if (BBTT.Insert(idphieu) == 1) { MessageBox.Show("Đã xác nhận thành công!"); return; } } if (isgoidau == true) { GoiDau gd = new GoiDau(); if (gd.Insert(idphieu) == 1) { MessageBox.Show("Đã xác nhận thành công!"); return; } } if (CheckPhieuNo() == true) return; if (isKCMN == true) { DiMuonNo KCMN = new DiMuonNo(); if (KCMN.Insert(idphieu) == 1) { MessageBox.Show("Đã xác nhận thành công!"); return; } } if (isKCTN == true) { DiTraNo KCTN = new DiTraNo(); if (KCTN.Insert(idphieu) == 1) { MessageBox.Show("Đã xác nhận thành công!"); return; } } if (isKNTN == true) { KhoKhacTraNo gd = new KhoKhacTraNo(); if (gd.Insert(idphieu) == 1) { MessageBox.Show("Đã xác nhận thành công!"); return; } } if (isKNMN == true) { PhieuKhoKhacMuon gd = new PhieuKhoKhacMuon(); if (gd.Insert(idphieu) == 1) { MessageBox.Show("Đã xác nhận thành công!"); return; } } if (isgoidau == true) { GoiDau gd = new GoiDau(); if (gd.Insert(idphieu) == 1) { MessageBox.Show("Đã xác nhận thành công!"); return; } } if (idloaiphieu != -1) { clsLoaiPhieuNhap lpn = new clsLoaiPhieuNhap(); if (lpn.getTenLPN(idloaiphieu).Equals("XD")) { PhieuNhap pn = new PhieuNhap(); if (pn.Insert(idphieu) == 1) { MessageBox.Show("Đã xác nhận thành công!"); return; } } if (lpn.getTenLPN(idloaiphieu).Equals("TD")) { PhieuHoanNhap phn = new PhieuHoanNhap(); if (phn.Insert(idphieu) == 1) { MessageBox.Show("Đã xác nhận thành công!"); return; } } } } catch (Exception ex) { MessageBox.Show(Utilities.clsThamSoUtilities.COException(ex)); } }
/// <summary> /// Kho mượn vt ko được trùng với kho xuất /// </summary> private void init_cbMuonVTTaiKho() { clsDM_Kho DMKho = new clsDM_Kho(); cbMuonVTTaiKho.DataSource = DMKho.getAll_TenKho(); cbMuonVTTaiKho.ValueMember = "ID_kho"; cbMuonVTTaiKho.DisplayMember = "Ten_kho"; cbMuonVTTaiKho.SelectedIndex = -1; }