Esempio n. 1
0
        private void btnThayDoi_Click(object sender, EventArgs e)
        {
            DataTable dt = ThamSo_BUS.GetThamSoAll();//Lấy tất cả tham số trong bảng THAMSO
            int       maThamSo;

            if (dt.Rows.Count == 0)//Kiểm tra xem trong bảng THAMSO đã có dữ liệu hay chưa
            {
                MessageBox.Show("Bạn phải khôi phục về mặc định trước khi thay đổi");
                btnMacDinh_Click(sender, e);
                return;
            }
            else
            {
                maThamSo = int.Parse(dt.Rows[0].ItemArray[0].ToString());//Gán bằng giá trị đầu tiên của đối tượng dt chính là MaThamSo trong bảng THAMSO
            }
            ThamSo_DTO ts = new ThamSo_DTO();

            ts.MaThamSo = maThamSo;

            if (chkApDungQD4.Checked == true)
            {
                ts.ApDungQuyDinh4 = 1;
            }
            else
            {
                ts.ApDungQuyDinh4 = 0;
            }

            try
            {
                ts.SoLuongNhapToiThieu = UInt32.Parse(txtSoLuongNhapToiThieu.Text);
                ts.SoLuongTonToiDa     = UInt32.Parse(txtSoLuongTonToiDa.Text);
                ts.SoTienNoToiDa       = UInt64.Parse(txtSoTienNoToiDa.Text);
                ts.SoLuongTonToiThieu  = UInt32.Parse(txtSoLuongTonToiThieu.Text);
                ts.TiLeTinhDonGiaBan   = UInt32.Parse(txtTiLeTinhDonGiaBan.Text);
            }
            catch (FormatException)
            {
                MessageBox.Show("Bạn phải nhập vào tất cả các tham số");
                return;
            }
            catch (OverflowException)
            {
                MessageBox.Show("Số không được âm");
                return;
            }
            //Kiểm tra xem việc thay đổi có thành công hay không
            string ketQua = ThamSo_BUS.CapNhat(ts);

            if (ketQua == "Success")
            {
                MessageBox.Show("Thay đổi thành công");
            }
            else
            {
                MessageBox.Show(ketQua, "Lỗi");
            }
            HienThiGiaTriHienTai();
        }
Esempio n. 2
0
        private void btnThem_Click(object sender, EventArgs e)
        {
            HoaDon_DTO hd = new HoaDon_DTO();

            try
            {
                hd.MaKhachHang  = int.Parse(txtMaKhachHang.Text);
                hd.TenKhachHang = tenKH;
            }
            catch (FormatException)
            {
                MessageBox.Show("Phải chọn mã khách hàng từ danh sách khách hàng");
                btnMaKhachHang_Click(sender, e);
                return;
            }
            hd.TongTien  = 0;
            hd.ThanhToan = 0;
            hd.ConLai    = 0;
            //Vì trong sql ngày lưu dạng MM-dd-yy nên ta cần chuyển sang định dạng này mới lưu ngày chính sách được
            dtpNgayLapHD.Format       = DateTimePickerFormat.Custom;
            dtpNgayLapHD.CustomFormat = "MM-dd-yy";
            hd.NgayLap          = dtpNgayLapHD.Text;
            dtpNgayLapHD.Format = DateTimePickerFormat.Short;

            DataTable dt      = ThamSo_BUS.GetThamSoAll();
            UInt64    noToiDa = UInt64.Parse(dt.Rows[0].ItemArray[4].ToString());//Số tiền nợ tối đa

            DataTable dt2    = ThamSo_BUS.SelectTienNoKH(int.Parse(txtMaKhachHang.Text));
            UInt64    tienNo = UInt64.Parse(dt2.Rows[0].ItemArray[5].ToString());

            if (tienNo > noToiDa)
            {
                MessageBox.Show("Số tiền nợ đã vượt quá số tiền nợ tối đa");
                return;
            }
            else
            {
                if (HoaDon_BUS.ThemHoaDon(hd) == false)
                {
                    MessageBox.Show("Thêm thất bại");
                    return;
                }
                HienThiDanhSachHoaDon();
                txtMaHoaDonCT.Text    = txtMaHoaDon.Text;
                txtMaKhachHangCT.Text = txtMaKhachHangCT.Text;
                //this.Size = new Size(1132, 632);
            }
        }
Esempio n. 3
0
        private void btnMacDinh_Click(object sender, EventArgs e)
        {
            txtSoLuongNhapToiThieu.Text = "150";
            txtSoLuongTonToiThieu.Text  = "20";
            txtSoLuongTonToiDa.Text     = "300";
            txtSoTienNoToiDa.Text       = "20000";
            txtTiLeTinhDonGiaBan.Text   = "105";
            chkApDungQD4.Checked        = true;

            int       maThamSo;
            DataTable dt = ThamSo_BUS.GetThamSoAll();//Lấy tất cả tham số trong bảng THAMSO

            //Kiểm tra xem trong dt trả về có dữ liệu hay không
            if (dt.Rows.Count == 0)
            {
                maThamSo = 0;
            }
            else
            {
                maThamSo = int.Parse(dt.Rows[0].ItemArray[0].ToString());//Gán bằng giá trị đầu tiên của đối tượng dt chính là MaThamSo trong bảng THAMSO
            }

            ThamSo_DTO ts = new ThamSo_DTO();

            ts.MaThamSo            = maThamSo;
            ts.SoLuongNhapToiThieu = UInt32.Parse(txtSoLuongNhapToiThieu.Text);
            ts.SoLuongTonToiDa     = UInt32.Parse(txtSoLuongTonToiDa.Text);
            ts.SoTienNoToiDa       = UInt64.Parse(txtSoTienNoToiDa.Text);
            ts.SoLuongTonToiThieu  = UInt32.Parse(txtSoLuongTonToiThieu.Text);
            ts.TiLeTinhDonGiaBan   = UInt32.Parse(txtTiLeTinhDonGiaBan.Text);
            ts.ApDungQuyDinh4      = 1;
            //Kiểm tra thử khôi phục mặc định có thành công không
            string ketQua = ThamSo_BUS.Update(ts);

            if (ketQua == "Success")
            {
                MessageBox.Show("Đã khôi phục về mặc định!");
            }
            else
            {
                MessageBox.Show(ketQua);
            }
            HienThiGiaTriHienTai();
        }
        public void HienThiGiaTriHienTai()
        {
            DataTable dt = ThamSo_BUS.GetThamSoAll();

            if (dt.Rows.Count > 0)
            {
                txtSoLuongNhapToiThieuCu.Text = dt.Rows[0].ItemArray[1].ToString();
                txtSoLuongTonToiThieuCu.Text  = dt.Rows[0].ItemArray[2].ToString();
                txtSoLuongTonToiDaCu.Text     = dt.Rows[0].ItemArray[3].ToString();
                txtSoTienNoToiDaCu.Text       = dt.Rows[0].ItemArray[4].ToString();
                int check = int.Parse(dt.Rows[0].ItemArray[5].ToString());
                if (check == 1)
                {
                    chkApDungQD4.Checked = true;
                }
                else
                {
                    chkApDungQD4.Checked = false;
                }
            }
        }
Esempio n. 5
0
        private void btnCapNhat_Click(object sender, EventArgs e)
        {
            // Kiểm tra xem có mã sách trong bảng CT_HOADON không
            try
            {
                if (PhieuNhapSach_DAO.KiemtramaSachCoTonTai(int.Parse(txtMaSach.Text), int.Parse(txtMaPhieuNhapCT.Text)))
                {
                    MessageBox.Show("Không có mã sách mà bạn cần sửa");
                    return;
                }
            }
            catch (FormatException)
            {
                MessageBox.Show("Mã sách không được để trống");
                return;
            }

            DataTable            dt      = ThamSo_BUS.GetThamSoAll();
            int                  nhapMin = int.Parse(dt.Rows[0].ItemArray[1].ToString());
            CT_PhieuNhapSach_DTO ct      = new CT_PhieuNhapSach_DTO();

            try
            {
                if (int.Parse(txtSoLuong.Text) < nhapMin)
                {
                    MessageBox.Show(string.Format("Số lượng phải lớn hơn số lượng quy định ({0} quyển)", nhapMin));
                    return;
                }
                else
                {
                    ct.SoLuongNhap = int.Parse(txtSoLuong.Text);
                }
            }
            catch (OverflowException)
            {
                MessageBox.Show("Số lượng nhập không được là số âm");
                return;
            }

            ct.MaPNS      = int.Parse(txtMaPhieuNhapCT.Text);
            ct.MaSach     = int.Parse(txtMaSach.Text);
            ct.TenSach    = txtTenSach.Text;
            ct.TenTheLoai = txtTheLoai.Text;
            try
            {
                ct.DonGiaNhap = UInt64.Parse(txtDonGiaNhap.Text);
            }
            catch (OverflowException)
            {
                MessageBox.Show("Số lượng nhập không được là số âm");
                return;
            }
            //ct.SoLuongNhap = int.Parse(txtSoLuong.Text);
            ct.ThanhTien = (UInt64)ct.SoLuongNhap * ct.DonGiaNhap;

            DataTable dt2             = ThamSo_BUS.SelectSoLuongTon(ct.MaSach);
            int       luongTonhientai = int.Parse(dt2.Rows[0].ItemArray[4].ToString());
            int       soluongbandau   = PhieuNhapSach_BUS.SoLuongNhap(int.Parse(txtMaSach.Text));
            int       soluongthaydoi  = int.Parse(txtSoLuong.Text);
            int       soLuongTonNew;

            if (soluongbandau > soluongthaydoi)
            {
                soLuongTonNew = luongTonhientai - (soluongbandau - soluongthaydoi);
            }
            else
            {
                soLuongTonNew = luongTonhientai + (soluongthaydoi - soluongbandau);
            }
            //int soLuongTonNew = luongTon - int.Parse(txtSoLuong.Text);
            Sach_DTO s = new Sach_DTO();

            s.MaSach     = int.Parse(txtMaSach.Text);
            s.SoLuongTon = soLuongTonNew;
            Sach_BUS.UpdateSoLuongTon(s);

            string ketQua = PhieuNhapSach_BUS.SuaNhapSach(ct);

            if (ketQua != "Success")
            {
                MessageBox.Show(ketQua, "Lỗi");
                return;
            }
            MessageBox.Show("Cập nhật thành công");

            // Cập nhật lại tổng tiền bên PhieuNhapSach
            PhieuNhapSach_DTO p = new PhieuNhapSach_DTO();

            p.MaPNS = int.Parse(txtMaPhieuNhapCT.Text);
            PhieuNhapSach_BUS.CapNhatTongTien(p);
            lblTongtien.Text = "" + p.TongTien;
            HienThiCTPhieuNhap();
        }
Esempio n. 6
0
        private void btnBoSung_Click(object sender, EventArgs e)
        {
            DataTable dt = ThamSo_BUS.GetThamSoAll();

            if (dt.Rows.Count != 0)
            {
                int nhapMin     = int.Parse(dt.Rows[0].ItemArray[1].ToString());
                int luongTonMax = int.Parse(dt.Rows[0].ItemArray[3].ToString());
                //int tiLeDonGiaBan = int.Parse(dt.Rows[0].ItemArray[1].ToString());
                CT_PhieuNhapSach_DTO c = new CT_PhieuNhapSach_DTO();
                try
                {
                    c.MaPNS = int.Parse(txtMaPhieuNhap.Text);
                }
                catch (FormatException)
                {
                    MessageBox.Show("Mã phiếu nhập không được để trống");
                    return;
                }
                try
                {
                    c.MaSach     = int.Parse(txtMaSach.Text);
                    c.TenSach    = txtTenSach.Text;
                    c.TenTheLoai = txtTheLoai.Text;
                }
                catch (FormatException)
                {
                    MessageBox.Show("Mã sách không được để trống");
                    return;
                }
                try
                {
                    if (int.Parse(txtSoLuong.Text) < nhapMin)
                    {
                        MessageBox.Show(string.Format("Số lượng phải lớn hơn số lượng quy định ({0} quyển)", nhapMin));
                        return;
                    }
                    else
                    {
                        c.SoLuongNhap = int.Parse(txtSoLuong.Text);
                    }
                }
                catch (FormatException)
                {
                    MessageBox.Show("Số lượng phải là kiểu số");
                    return;
                }
                try
                {
                    if (txtDonGiaNhap.Text != "")
                    {
                        c.DonGiaNhap = UInt64.Parse(txtDonGiaNhap.Text);
                    }
                    else
                    {
                        MessageBox.Show("Đơn giá nhập không được để trống");
                        return;
                    }
                }
                catch (FormatException)
                {
                    MessageBox.Show("Đơn giá nhập phải là kiểu số");
                    return;
                }
                DataTable dt2           = ThamSo_BUS.SelectSoLuongTon(c.MaSach);
                int       luongTon      = int.Parse(dt2.Rows[0].ItemArray[4].ToString());
                int       soLuongTonNew = luongTon + int.Parse(txtSoLuong.Text);
                c.ThanhTien = (UInt64)c.SoLuongNhap * c.DonGiaNhap;
                if (luongTon < luongTonMax)
                {
                    string ketQua = PhieuNhapSach_BUS.ThemChiTietPhieuNhap(c);
                    if (ketQua != "Success")
                    {
                        MessageBox.Show(ketQua);
                    }
                    else
                    {
                        Sach_DTO s = new Sach_DTO();
                        s.MaSach     = int.Parse(txtMaSach.Text);
                        s.SoLuongTon = soLuongTonNew;
                        Sach_BUS.UpdateSoLuongTon(s);

                        PhieuNhapSach_DTO p = new PhieuNhapSach_DTO();
                        p.MaPNS = int.Parse(txtMaPhieuNhapCT.Text);
                        PhieuNhapSach_BUS.CapNhatTongTien(p);
                        HienThiCTPhieuNhap();
                        MessageBox.Show("Thành công");
                        //dgvPhieuNhap = new DataGridView();
                        lblTongtien.Text = "" + p.TongTien;
                        //HienThiDanhSachPhieuNhap();
                    }
                }
                else
                {
                    MessageBox.Show("Chỉ nhập các đầu sách có lượng tồn ít hơn theo quy định");
                }
            }
            else
            {
                MessageBox.Show("Không lấy được các tham số");
                return;
            }
        }
        public void CapNhat()
        {
            PhieuThuTien_DTO pt = new PhieuThuTien_DTO();

            pt.MaPT = int.Parse(txtMaPhieuThu.Text);

            dtpNgayThuTien.Format       = DateTimePickerFormat.Custom;
            dtpNgayThuTien.CustomFormat = "MM-dd-yy";
            pt.NgayLap            = dtpNgayThuTien.Text;
            dtpNgayThuTien.Format = DateTimePickerFormat.Short;

            try
            {
                int kh = int.Parse(txtMaKhachHang.Text);
                pt.MaKhachHang = kh;
            }
            catch (FormatException)
            {
                MessageBox.Show("Mã khách hàng không được bỏ trống");
                return;
            }
            DataTable dt        = ThamSo_BUS.GetThamSoAll();
            int       ktchophep = int.Parse(dt.Rows[0].ItemArray[6].ToString());
            DataTable dt2       = ThamSo_BUS.SelectTienNoKH(int.Parse(txtMaKhachHang.Text));
            UInt64    tienno    = UInt64.Parse(dt2.Rows[0].ItemArray[5].ToString());
            UInt64    tienthu   = 0;

            try
            {
                pt.SoTienThu = UInt64.Parse(txtSoTien.Text);
                tienthu      = UInt64.Parse(txtSoTien.Text);
            }
            catch (FormatException)
            {
                MessageBox.Show("Số tiền thu chưa nhập đúng quy định");
                return;
            }
            catch (OverflowException)
            {
                MessageBox.Show("Số tiền thu không được âm");
                return;
            }
            if (ktchophep == 1)
            {
                if (tienno < tienthu)
                {
                    MessageBox.Show("Tiền thu đã lớn hơn tiền khách hàng đang nợ");
                    return;
                }
            }
            UInt64 tienthunew = (tienthu - luusotienthu);
            UInt64 tiennonew  = (UInt64)(tienno) - tienthunew;

            string ketQua = PhieuThuTien_BUS.SuaPhieuThu(pt);

            if (ketQua != "Success")
            {
                MessageBox.Show(ketQua, "Lỗi");
            }
            else
            {
                KhachHang_DTO kh = new KhachHang_DTO();
                kh.MaKhachHang = int.Parse(txtMaKhachHang.Text);
                kh.SoTienNo    = tiennonew;
                KhachHang_BUS.UpdateTienNo(kh);
                MessageBox.Show("Thành công");
                HienThiPhieuThu();
            }
        }
Esempio n. 8
0
        private void btnBoSung_Click(object sender, EventArgs e)
        {
            // kiểm tra xem khách hàng đã thanh toán sách này chưa, nếu chưa mới cho phép thêm sách
            if (int.Parse(txtDaThanhToan.Text) != 0)
            {
                MessageBox.Show("Hóa đơn này đã thanh toán một phần tiền! \nBạn không được thêm sách!");
                return;
            }

            DataTable dt                = ThamSo_BUS.GetThamSoAll();
            int       noToiDa           = int.Parse(dt.Rows[0].ItemArray[4].ToString());
            int       luongTonSauKhiBan = int.Parse(dt.Rows[0].ItemArray[2].ToString());
            DataTable dt2               = ThamSo_BUS.SelectTienNoKH(int.Parse(txtMaKhachHang.Text));
            int       tienNo            = int.Parse(dt2.Rows[0].ItemArray[5].ToString());

            CT_HoaDon_DTO ct = new CT_HoaDon_DTO();

            try
            {
                ct.MaHD = int.Parse(txtMaHoaDonCT.Text);
            }
            catch (FormatException)
            {
                MessageBox.Show("Mã hóa đơn không được để trống");
                return;
            }
            try
            {
                ct.MaSach = int.Parse(txtMaSach.Text);
            }
            catch (FormatException)
            {
                MessageBox.Show("Mã sách phải được chọn từ danh sách");
                btnMaSach_Click(sender, e);
                return;
            }
            try
            {
                ct.SoLuong = uint.Parse(txtSoLuong.Text);
            }
            catch (FormatException)
            {
                MessageBox.Show("Số lượng mua phải là số và không được để trống");
                return;
            }
            catch (OverflowException)
            {
                MessageBox.Show("Số lượng không được âm");
                return;
            }
            if (tienNo <= noToiDa)
            {
                DataTable dt3      = ThamSo_BUS.SelectSoLuongTon(ct.MaSach);
                uint      luongTon = uint.Parse(dt3.Rows[0].ItemArray[4].ToString());
                uint      luongMua = 0;
                try
                {
                    luongMua = uint.Parse(txtSoLuong.Text);
                }
                catch (FormatException)
                {
                    MessageBox.Show("Số lượng mua phải là số và không được để trống");
                    txtSoLuong.Text   = "";
                    txtThanhTien.Text = "";
                    return;
                }
                catch (OverflowException)
                {
                    MessageBox.Show("Số lượng không được âm");
                    return;
                }
                ct.DonGia         = UInt64.Parse(txtDonGia.Text);
                ct.ThanhTien      = (UInt64)luongMua * ct.DonGia;
                txtThanhTien.Text = ct.ThanhTien.ToString();
                if ((luongTon - luongMua) < luongTonSauKhiBan)
                {
                    MessageBox.Show("Số lượng tồn của sách này sau khi bán đã nhỏ hơn quy định");
                    return;
                }
                string ketQua = HoaDon_BUS.ThemHoaDonChiTiet(ct);
                if (ketQua != "Success")
                {
                    MessageBox.Show(ketQua);
                    txtMaSach.Text  = "";
                    txtSoLuong.Text = "0";
                    txtDonGia.Text  = "";
                    return;
                }
                else
                {
                    uint     soluongtonnew = luongTon - luongMua;
                    Sach_DTO s             = new Sach_DTO();
                    s.MaSach     = int.Parse(txtMaSach.Text);
                    s.SoLuongTon = (int)soluongtonnew;
                    ketQua       = Sach_BUS.UpdateSoLuongTon(s);
                    if (ketQua != "Success")
                    {
                        MessageBox.Show(ketQua);
                        return;
                    }

                    HoaDon_DTO hd = new HoaDon_DTO();
                    hd.MaHD      = ct.MaHD;
                    hd.TongTien  = UInt64.Parse(HoaDon_BUS.TongThanhTien(hd).Rows[0].ItemArray[0].ToString());
                    hd.ThanhToan = 0;
                    hd.ConLai    = UInt64.Parse(HoaDon_BUS.TongThanhTien(hd).Rows[0].ItemArray[0].ToString());
                    HoaDon_BUS.UpdateTongTien(hd);
                    HoaDon_BUS.UpdateConLai(hd);

                    KhachHang_DTO kh = new KhachHang_DTO();
                    kh.MaKhachHang = int.Parse(txtMaKhachHang.Text);
                    kh.SoTienNo    = UInt64.Parse(tienNo.ToString()) + ct.ThanhTien;
                    string ketQua2 = KhachHang_BUS.UpdateTienNo(kh);
                    if (ketQua2 != "Success")
                    {
                        MessageBox.Show(ketQua);
                        return;
                    }
                    MessageBox.Show("Thành công");
                    HienThiDanhSachChiTietHoaDon();
                }
            }
            else
            {
                MessageBox.Show("Tiền nợ quý khách đã quá quy định để mua sách");
            }
        }
Esempio n. 9
0
        private void btnThanhToan_Click(object sender, EventArgs e)
        {
            try
            {
                UInt64 thanhToan = 0;
                try
                {
                    thanhToan = UInt64.Parse(txtThanhToan.Text);
                }
                catch (FormatException)
                {
                    MessageBox.Show("Số tiền thanh toán phải là số và không được để trống");
                    return;
                }
                UInt64 tongTien = UInt64.Parse(txtTongTien.Text);
                if (thanhToan > tongTien)
                {
                    MessageBox.Show("Thanh toán không được lớn hơn tổng tiền");
                    return;
                }
                UInt64 conLai = tongTien - thanhToan;
                txtConLai.Text = conLai.ToString();


                DataTable dt      = ThamSo_BUS.GetThamSoAll();
                UInt64    noToiDa = UInt64.Parse(dt.Rows[0].ItemArray[5].ToString());
                DataTable dt2     = ThamSo_BUS.SelectTienNoKH(int.Parse(txtMaKhachHangCT.Text));
                UInt64    tienNo  = UInt64.Parse(dt2.Rows[0].ItemArray[5].ToString());
                if ((conLai + tienNo) > noToiDa)
                {
                    string ketQua = HoaDon_BUS.XoaCTHoaDonByMa(int.Parse(txtMaHoaDon.Text));
                    if (ketQua != "Success")
                    {
                        MessageBox.Show(ketQua);
                        return;
                    }
                    ketQua = HoaDon_BUS.XoaHoaDonByMa(int.Parse(txtMaHoaDon.Text));
                    if (ketQua != "Success")
                    {
                        MessageBox.Show(ketQua);
                        return;
                    }
                    return;
                }
                else
                {
                    KhachHang_DTO kh = new KhachHang_DTO();
                    kh.MaKhachHang = int.Parse(txtMaKhachHang.Text);
                    kh.SoTienNo    = conLai + tienNo;
                    string ketQua = KhachHang_BUS.UpdateTienNo(kh);
                    if (ketQua != "Success")
                    {
                        MessageBox.Show(ketQua);
                        return;
                    }
                    MessageBox.Show("Thanh toán thành công");
                    Close();
                }
            }
            catch (FormatException)
            {
                MessageBox.Show("Thanh toán phải là số và không được để trống");
                return;
            }
            catch (OverflowException)
            {
                MessageBox.Show("Thanh toán không được âm");
                return;
            }
        }
        public void CapNhat()
        {
            PhieuThuTien_DTO pt = new PhieuThuTien_DTO();

            pt.MaPT = int.Parse(txtMaPhieuThu.Text);

            dtpNgayThuTien.Format       = DateTimePickerFormat.Custom;
            dtpNgayThuTien.CustomFormat = "MM-dd-yy";
            pt.NgayLap            = dtpNgayThuTien.Text;
            dtpNgayThuTien.Format = DateTimePickerFormat.Short;

            try
            {
                int kh = int.Parse(txtMaKhachHang.Text);
                pt.MaKhachHang = kh;
            }
            catch (FormatException)
            {
                MessageBox.Show("Mã khách hàng không được bỏ trống");
                return;
            }

            if (int.Parse(txtMaPhieuThu.Text) != PhieuThuTien_BUS.PhieuNhapMoiNhat(int.Parse(txtMaKhachHang.Text)))
            {
                MessageBox.Show("Bạn chỉ được chỉnh sửa phiếu thanh toán mới nhất của khách hàng này." + "\n" + "Mã phiếu thanh toán mới nhất của khách hàng này là: " + PhieuThuTien_BUS.PhieuNhapMoiNhat(int.Parse(txtMaKhachHang.Text)));
                return;
            }

            DataTable dt        = ThamSo_BUS.GetThamSoAll();
            int       ktchophep = int.Parse(dt.Rows[0].ItemArray[5].ToString());
            DataTable dt2       = ThamSo_BUS.SelectTienNoKH(int.Parse(txtMaKhachHang.Text));
            UInt64    tienno    = UInt64.Parse(dt2.Rows[0].ItemArray[5].ToString());
            UInt64    tienthu   = 0;

            try
            {
                pt.SoTienThu = UInt64.Parse(txtSoTien.Text);
                tienthu      = UInt64.Parse(txtSoTien.Text);
            }
            catch (FormatException)
            {
                MessageBox.Show("Số tiền thu chưa nhập đúng quy định");
                return;
            }
            catch (OverflowException)
            {
                MessageBox.Show("Số tiền thu không được âm");
                return;
            }

            UInt64 tienthunew;
            UInt64 tiennonew;

            if (ktchophep == 1)
            {
                if (tienthu > luusotienthu)
                {
                    //if (ktchophep == 1)
                    //{
                    if (tienno < tienthu - luusotienthu)
                    {
                        MessageBox.Show("Tiền thu đã lớn hơn tiền khách hàng đang nợ");
                        return;
                    }
                    //}
                    tienthunew = (tienthu - luusotienthu);
                    tiennonew  = (UInt64)(tienno) - tienthunew;
                }
                else
                {
                    tienthunew = tienthu;
                    tiennonew  = (UInt64)(tienno) + (luusotienthu - tienthu);
                }

                string ketQua = PhieuThuTien_BUS.SuaPhieuThu(pt);
                if (ketQua != "Success")
                {
                    MessageBox.Show(ketQua, "Lỗi");
                }
                else
                {
                    KhachHang_DTO kh = new KhachHang_DTO();
                    kh.MaKhachHang = int.Parse(txtMaKhachHang.Text);
                    kh.SoTienNo    = tiennonew;
                    KhachHang_BUS.UpdateTienNo(kh);
                    MessageBox.Show("Thành công");
                    HienThiPhieuThu();
                }
            }
            else
            {
                uint tiennobandau = PhieuThuTien_BUS.LayTienNoBanDau(int.Parse(txtMaPhieuThu.Text));
                if (tienthu > luusotienthu)
                {
                    //if (ktchophep == 1)
                    //{
                    if (tienno < tienthu - luusotienthu)
                    {
                        tiennonew = 0;
                        string ketQua2 = PhieuThuTien_BUS.SuaPhieuThu(pt);
                        if (ketQua2 != "Success")
                        {
                            MessageBox.Show(ketQua2, "Lỗi");
                        }
                        else
                        {
                            KhachHang_DTO kh = new KhachHang_DTO();
                            kh.MaKhachHang = int.Parse(txtMaKhachHang.Text);
                            kh.SoTienNo    = tiennonew;
                            KhachHang_BUS.UpdateTienNo(kh);
                            MessageBox.Show("Thành công");
                            HienThiPhieuThu();
                        }
                        return;
                    }
                    //}
                    tienthunew = (tienthu - luusotienthu);
                    tiennonew  = (UInt64)(tienno) - tienthunew;
                }
                else
                {
                    if (tienno == 0)
                    {
                        tienthunew = tienthu;
                        tiennonew  = tiennobandau - tienthu;
                    }
                    else
                    {
                        tienthunew = tienthu;
                        tiennonew  = (UInt64)(tienno) + (luusotienthu - tienthu);
                    }
                }

                string ketQua = PhieuThuTien_BUS.SuaPhieuThu(pt);
                if (ketQua != "Success")
                {
                    MessageBox.Show(ketQua, "Lỗi");
                }
                else
                {
                    KhachHang_DTO kh = new KhachHang_DTO();
                    kh.MaKhachHang = int.Parse(txtMaKhachHang.Text);
                    kh.SoTienNo    = tiennonew;
                    KhachHang_BUS.UpdateTienNo(kh);
                    MessageBox.Show("Thành công");
                    HienThiPhieuThu();
                }
            }
        }