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;
            }
        }
Exemplo n.º 2
0
        private void MenuItemDSPhieuXuatTamUng_Click(object sender, EventArgs e)
        {
            if (Utilities.clsThamSoUtilities.isSectionLogin == true)
            {
                frmDanhSachPhieuXuatTamVatTu frm = new frmDanhSachPhieuXuatTamVatTu();
                frm.Name = "Danh sách phiếu xuất vật tư cho nhân viên";

                foreach (Form f in this.MdiChildren)
                {
                    if (f.Name == frm.Name)
                    {
                        f.Activate();
                        return;
                    }

                }

                frm.MdiParent = this;
                frm.WindowState = FormWindowState.Maximized;
                frm.Show();

            }
        }
        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;
        }