/// <summary> /// /// ///cap nhat lai trang thai phieu nhap o dong ma phieu va ma vat tu ///them 1 dong vao bang chi tiet ton kho ///cap nhat lai ton kho theo dung vat tu co ma vat tu do + them vat tu da nhap vao /// /// </summary> public void Action() { clsXuLyDuLieuChung dc = new clsXuLyDuLieuChung(); DateTime ngayNhap = dtNgayNhap.Value; if (dc.InsertTonKho(mavattu, idKho, soluong, maphieu, ngayNhap,id_chatluong) == 1) { MessageBox.Show("Bạn đã thêm thành công vật tư vào kho "); f.init(); this.Close(); } }
private void InProgress() { if (chbChonTatCa.Checked == false) { try { Int32 selectedRowCount = gridDanhSachPhieuNhap.CurrentCell.RowIndex; DataGridViewRow SelectedRow = gridDanhSachPhieuNhap.Rows[selectedRowCount]; string mavt = SelectedRow.Cells["Ma_vat_tu"].Value.ToString(); string maphieu = SelectedRow.Cells["Ma_phieu_nhap"].Value.ToString(); if (cbKhoNhanVatTu.Text == "") { MessageBox.Show("Bạn chưa chọn kho để phân vật tư"); return; } // string soluong = SelectedRow.Cells["So_luong"].Value.ToString(); string tenvt = SelectedRow.Cells["Ten_vat_tu"].Value.ToString(); string tenkho = cbKhoNhanVatTu.Text; decimal soluong = decimal.Parse(SelectedRow.Cells["So_luong_thuc_lanh"].Value.ToString()); // string mavt = SelectedRow.Cells["Ma_vat_tu"].Value.ToString(); int idcl = int.Parse(SelectedRow.Cells["ID_chat_luong"].Value.ToString()); frmChiTietNhanVatTu ob = new frmChiTietNhanVatTu(this, maphieu, mavt, idKho, soluong, tenvt, tenkho, idcl); ob.Show(); //show child } catch (Exception ex) { MessageBox.Show(ex.Message); } } else { //txtRunning.Visible = true; //progressAll.Visible = true; DatabaseHelper help = new DatabaseHelper(); help.ConnectDatabase(); using (var dbcxtransaction = help.ent.Database.BeginTransaction()) { for (int i = 0; i < gridDanhSachPhieuNhap.Rows.Count; i++) { string mavt = gridDanhSachPhieuNhap.Rows[i].Cells["Ma_vat_tu"].Value.ToString(); string maphieu = gridDanhSachPhieuNhap.Rows[i].Cells["Ma_phieu_nhap"].Value.ToString(); string tenvt = gridDanhSachPhieuNhap.Rows[i].Cells["Ten_vat_tu"].Value.ToString(); // string tenkho = cbKhoNhanVatTu.Text; decimal soluong = decimal.Parse(gridDanhSachPhieuNhap.Rows[i].Cells["So_luong_thuc_lanh"].Value.ToString()); int idcl = int.Parse(gridDanhSachPhieuNhap.Rows[i].Cells["ID_chat_luong"].Value.ToString()); clsXuLyDuLieuChung dc = new clsXuLyDuLieuChung(); DateTime ngayNhap = DateTime.Now; try { if (dc.InsertTonKho(help, mavt, idKho, soluong, maphieu, ngayNhap, idcl,true) == 0) { dbcxtransaction.Rollback(); MessageBox.Show("Thêm thất bại tại dòng " + i); return; } } catch (Exception ex) { dbcxtransaction.Rollback(); MessageBox.Show("Thêm thất bại tại dòng " + i); return; } //dbcxtransaction.Commit(); backgroundWorker1.ReportProgress(i); } dbcxtransaction.Commit(); } } }
public void XuLy() { 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; //} //neu phieu nhap la XD thi co cac truong hop sau // kiem ttra xem danh sach vat tu trong danh sach phieu nhap la nhap ngoai va no la nhap tu to trinh hoac MN ko ? // neu trong to tinh co vat tu trung voi vat tu phieu nhap // thi nguoi dung tien hanh chuyen qua man hinh tra no DatabaseHelper help = new DatabaseHelper(); help.ConnectDatabase(); // lấy tất cả danh sách các vật tư có mã phiếu nhập đó DataTable tb = new clsChi_Tiet_Phieu_Nhap_Vat_Tu().GetAll(maphieu); //nếu phiếu này là cấn trừ //hiển thị form cấn trừ nợ cho vật tư // bool? isCanTru = bool.Parse(gridDanhSachPhieuNhap.Rows[selectedRowCount].Cells["isCanTru"].Value.ToString()); try { bool? isCanTru = bool.Parse(gridDanhSachPhieuNhap.Rows[selectedRowCount].Cells["isCanTru"].Value.ToString()); if (isCanTru == true) { MessageBox.Show("Phiếu này đang ở trạng thái chưa bù trừ nợ, vui lòng thực hiện chức năng bù trừ nợ trước! "); return; } } catch (Exception ex) { } try { bool? isNhapNgoai = bool.Parse(gridDanhSachPhieuNhap.Rows[selectedRowCount].Cells["isNhapNgoai"].Value.ToString()); bool? isChoMuonNo = null; try { isChoMuonNo = bool.Parse(gridDanhSachPhieuNhap.Rows[selectedRowCount].Cells["isChoMuonNgoai"].Value.ToString()); } catch (Exception ex) { } if (isNhapNgoai == true && isChoMuonNo == true) { using (var dbcxtransaction = help.ent.Database.BeginTransaction()) { for (int i = 0; i < tb.Rows.Count; i++) { clsXuLyDuLieuChung dc = new clsXuLyDuLieuChung(); string mavattu = tb.Rows[i]["ma_vat_tu"].ToString(); decimal soluong = decimal.Parse(tb.Rows[i]["so_luong_thuc_lanh"].ToString()); int id_chat_luong = int.Parse(tb.Rows[i]["Id_chat_luong"].ToString()); DateTime ngayNhap = DateTime.Now; if (dc.InsertTonKho(help, mavattu, idKho, soluong, maphieu, ngayNhap, id_chat_luong, false) == 0) { dbcxtransaction.Rollback(); } } MessageBox.Show("Bạn đã xác nhận thành công "); dbcxtransaction.Commit(); LoadData(); return; } } else if (isNhapNgoai == true) { using (var dbcxtransaction = help.ent.Database.BeginTransaction()) { for (int i = 0; i < tb.Rows.Count; i++) { clsXuLyDuLieuChung dc = new clsXuLyDuLieuChung(); string mavattu = tb.Rows[i]["ma_vat_tu"].ToString(); decimal soluong = decimal.Parse(tb.Rows[i]["so_luong_thuc_lanh"].ToString()); int id_chat_luong = int.Parse(tb.Rows[i]["Id_chat_luong"].ToString()); DateTime ngayNhap = DateTime.Now; if (dc.InsertTonKho(help, mavattu, idKho, soluong, maphieu, ngayNhap, id_chat_luong, true) == 0) { dbcxtransaction.Rollback(); } } MessageBox.Show("Bạn đã xác nhận thành công "); dbcxtransaction.Commit(); LoadData(); } return; } } catch (Exception ex) { } int? ID_loai_phieu_nhap = int.Parse(gridDanhSachPhieuNhap.Rows[selectedRowCount].Cells["ID_loai_phieu_nhap"].Value.ToString()); clsLoaiPhieuNhap LPN = new clsLoaiPhieuNhap(); LPN.ID_LPN = (int)ID_loai_phieu_nhap; string TenLPN = LPN.getTenLPN((int)ID_loai_phieu_nhap); using (var dbcxtransaction = help.ent.Database.BeginTransaction()) { for (int i = 0; i < tb.Rows.Count; i++) { //duyệt qua từng dòng insert chi tiết phiếu nhập vào clsXuLyDuLieuChung dc = new clsXuLyDuLieuChung(); string mavattu = tb.Rows[i]["ma_vat_tu"].ToString(); // số lượng hoàn nhập hay số lượng lãnh vật tư tùy vào ID loai phieu decimal soluong = decimal.Parse(tb.Rows[i]["so_luong_thuc_lanh"].ToString()); int id_chat_luong = int.Parse(tb.Rows[i]["Id_chat_luong"].ToString()); DateTime ngayNhap = DateTime.Now; try { bool isGoiDau = bool.Parse(gridDanhSachPhieuNhap.Rows[selectedRowCount].Cells["isGoiDau"].Value.ToString()); if (isGoiDau == true) { clsVatTuGoiDauKy gdk = new clsVatTuGoiDauKy(); gdk.ID_chat_luong = id_chat_luong; gdk.Ma_vat_tu = mavattu; gdk.So_Luong = soluong; gdk.ID_kho = idKho; if (gdk.CheckTonTaiSoDK() == true) { //nếu có cập nhật lại gối đầu DataTable temp = gdk.GetAll(); decimal sl = decimal.Parse(temp.Rows[0]["So_luong"].ToString()); gdk.ID_VT_Goi_Dau = int.Parse(temp.Rows[0]["ID_VT_Goi_Dau"].ToString()); gdk.So_Luong = gdk.So_Luong + sl; gdk.Update(); } //nếu chưa tồn tại tiến hành insert dòng mới else if (gdk.Insert() == 0) { MessageBox.Show("Đã có lỗi xãy ra !"); return; } } // nếu mã phiếu hoàn nhập thì trừ trong gói đầu nếu có phiếu hoàn nhập mà chưa có gói đầu thì vô lý if (TenLPN.Contains("T")) { clsVatTuGoiDauKy gdk = new clsVatTuGoiDauKy(); gdk.ID_chat_luong = id_chat_luong; gdk.Ma_vat_tu = mavattu; gdk.ID_kho = idKho; DataTable temp = gdk.GetAll(); //số lượng gối đầu if (temp.Rows.Count == 0)//chưa có { MessageBox.Show("Vật tư này chưa có trong danh sách vật tư gối đầu, không thể hoàn nhập được"); return; } decimal soluonght = decimal.Parse(temp.Rows[0]["So_luong"].ToString()); soluonght = soluonght - soluong; gdk.So_Luong = soluonght; gdk.ID_VT_Goi_Dau = int.Parse(temp.Rows[0]["ID_VT_Goi_Dau"].ToString()); if (gdk.Update() == 0) { MessageBox.Show("Đã có lỗi xãy ra trong quá trình cập nhật số lượng đầu kỳ!"); return; } //sau đó trừ vào kho, thẻ kho // MessageBox.Show("Hoàn nhập thành công!"); // return; } } catch (Exception ex) { } if (TenLPN.Contains("X") == true) { if (dc.InsertTonKho(help, mavattu, idKho, soluong, maphieu, ngayNhap, id_chat_luong, true) == 0) { dbcxtransaction.Rollback(); } } else { //CO MA PHIEU TD //PHIEU TRU KHO if (dc.InsertTonKho(help, mavattu, idKho, soluong, maphieu, ngayNhap, id_chat_luong, false) == 0) { dbcxtransaction.Rollback(); } } } dbcxtransaction.Commit(); MessageBox.Show("Bạn đã thêm thành công !"); } LoadData(); } catch (Exception ex) { MessageBox.Show(Utilities.clsThamSoUtilities.COException(ex)); } }