public bool UpdateCT_XuatKho(CT_XuatKhoDTO dtoCT_XuatKho)
        {
            string strQuery = "Update CT_XUATKHO Set ";

            strQuery += "MAMATHANG = N'" + dtoCT_XuatKho.MaMatHang + "',";
            strQuery += "SOLUONGXUAT = " + dtoCT_XuatKho.SoLuongXuat + ",";
            strQuery += "GIATIEN = " + dtoCT_XuatKho.GiaTien + ",";
            strQuery += "THANHTIEN = " + dtoCT_XuatKho.ThanhTien;
            strQuery += "Where MAHOADONXUAT = N'" + dtoCT_XuatKho.MaHoaDonXuat + "'";
            return(dp.ExecuteNonQuery(strQuery));
        }
        public bool InsertCT_XuatKho(CT_XuatKhoDTO dtoCT_XuatKho)
        {
            string strQuery = "Insert Into CT_XUATKHO Values(";

            strQuery += "N'" + dtoCT_XuatKho.MaCTXuatKho + "',";
            strQuery += "N'" + dtoCT_XuatKho.MaXuatKho + "',";
            strQuery += "N'" + dtoCT_XuatKho.MaMatHang + "',";
            strQuery += dtoCT_XuatKho.SoLuongXuat + ",";
            strQuery += dtoCT_XuatKho.GiaTien + ",";
            strQuery += dtoCT_XuatKho.ThanhTien + "," + dtoCT_XuatKho.TinhTrang + ")";
            return(dp.ExecuteNonQuery(strQuery));
        }
        private CT_XuatKhoDTO LayThongTinChiTietXuatKho(XuatKhoDTO dtoNhapKho, int i)
        {
            CT_XuatKhoDTO dtoCTXuat = new CT_XuatKhoDTO();

            dtoCTXuat.MaCTXuatKho = cf.CreateId("CTX", "CT_XUATKHO");
            dtoCTXuat.MaXuatKho   = dtoNhapKho.MaXuatKho;
            double dbGia = double.Parse(dgvMatHang.Rows[i].Cells["colGia"].Value.ToString());

            dtoCTXuat.GiaTien     = dbGia;
            dtoCTXuat.MaMatHang   = dgvMatHang.Rows[i].Cells["colMaMatHang"].Value.ToString();
            dtoCTXuat.SoLuongXuat = int.Parse(dgvMatHang.Rows[i].Cells["colSoLuong"].Value.ToString());
            dtoCTXuat.ThanhTien   = double.Parse(dgvMatHang.Rows[i].Cells["colThanhTien"].Value.ToString());
            dtoCTXuat.TinhTrang   = "1";
            return(dtoCTXuat);
        }
 public bool InsertCT_XuatKho(CT_XuatKhoDTO dtoCT_XuatKho)
 {
     return(dalCTXuatKho.InsertCT_XuatKho(dtoCT_XuatKho));
 }
        private void btnXuatKho_Click(object sender, EventArgs e)
        {
            string strError = CheckSoLuong();

            if (strError != "")
            {
                MessageBox.Show(strError, "Thông báo");
            }
            else
            {
                #region Xuất kho
                XuatKhoDTO dtoNhapKho = LayThongTinXuatKho();
                string     strNhapKho = bllXuatKho.InsertXuatKho(dtoNhapKho);
                bool       blFlag     = false;
                if (strNhapKho != "ok")
                {
                    MessageBox.Show(strNhapKho);
                }
                else
                {
                    int intCountRow = dgvMatHang.Rows.Count;
                    int intRun      = 1;
                    if (intCountRow == 2)
                    {
                        intRun = 2;
                    }
                    else
                    {
                        intRun = dgvMatHang.Rows.Count;
                    }
                    // Lưu thông tin chi tiết nhập kho
                    for (int i = 0; i < intRun - 1; i++)
                    {
                        CT_XuatKhoDTO dtoCTXuat = LayThongTinChiTietXuatKho(dtoNhapKho, i);
                        // Lưu từng mặt hàng
                        bool kq = bllCTXuatKho.InsertCT_XuatKho(dtoCTXuat);
                        if (kq == false)
                        {
                            MessageBox.Show("Mã hàng " + dtoCTXuat.MaMatHang + " không lưu được", "Nhập kho");
                        }
                        else
                        {
                            // cập nhật lại số lượng tồn cho từng mặt hàng
                            int intSoLuong = int.Parse(dgvMatHang.Rows[i].Cells["colSoLuong"].Value.ToString());
                            bllMatHang.UpdateTonXuat(dtoCTXuat.MaMatHang, intSoLuong);
                            // Lưu lại vào bảng tồn kho
                        }
                    }
                    MessageBox.Show("Đã xuất cho khách hàng", "Xuất kho");
                    blFlag        = true;
                    btnIn.Enabled = true;
                }
                #endregion

                #region Xuất phiếu thu
                if (blFlag == true)
                {
                    if (MessageBox.Show("Bạn có muốn xuất phiếu thu không?", "Xuất phiếu thu", MessageBoxButtons.OKCancel, MessageBoxIcon.Question) == System.Windows.Forms.DialogResult.OK)
                    {
                        FrmPhieuThu frm = new FrmPhieuThu();
                        Variable.intSelectedIndexPhieuThu = cmbMaKhachHang.SelectedIndex;
                        frm.cmbKhachHang.Enabled          = false;
                        frm.btnThem.Enabled = false;
                        frm.txtSoTien.Text  = txtTienSauThue.Text;
                        frm.txtLyDoThu.Text = "Thu cho phiếu xuất " + txtMaPhieuXuat.Text;
                        frm.ShowDialog();
                    }
                }
                #endregion
            }
        }