private void TimBan()
        {
            int      maBan;
            string   tenBan;
            DateTime ngay;

            if (txtTimMaBan.Text != "")
            {
                if (!Int32.TryParse(txtTimMaBan.Text, out maBan))
                {
                    MessageBox.Show("Mã bàn không hợp lệ.");
                    return;
                }
            }
            else
            {
                maBan = 0;
            }

            if (dtNgayDatBan.Text != "")
            {
                if (!DateTime.TryParse(dtNgayDatBan.Text, out ngay))
                {
                    MessageBox.Show("Ngày không hợp lệ.");
                    return;
                }
            }
            else
            {
                ngay = new DateTime();
            }

            tenBan = txtTimTenBan.Text;

            List <BanDatDTO> list = BanDatBUS.TimBan(GlobalVariables.maNhaHang, maBan, tenBan, ngay);

            m_dtGirdDSBan.DataSource = list;
            for (int i = 0; i < m_dtGirdDSBan.Columns.Count; i++)
            {
                m_dtGirdDSBan.Columns[i].Width = m_dtGirdDSBan.Width / 4;
            }
            m_dtGirdDSBan.Columns["TinhTrangBan"].HeaderText     = "Đã đặt";
            m_dtGirdDSBan.Columns["TenBuoi"].HeaderText          = "Buổi";
            m_dtGirdDSBan.Columns["MaBan"].HeaderText            = "Mã bàn";
            m_dtGirdDSBan.Columns["NgayDatBan"].HeaderText       = "Ngày đặt bàn";
            m_dtGirdDSBan.Columns["MaNhaHang"].Visible           = false;
            m_dtGirdDSBan.Columns["HoTen"].Visible               = false;
            m_dtGirdDSBan.Columns["Cmnd"].Visible                = false;
            m_dtGirdDSBan.Columns["DienThoai"].Visible           = false;
            m_dtGirdDSBan.Columns["MaLichBan"].Visible           = false;
            m_dtGirdDSBan.Columns["MaThongTinKhachHang"].Visible = false;
            m_dtGirdDSBan.Columns["SoLuong"].Visible             = false;
            m_dtGirdDSBan.Columns["MaLichBan"].Visible           = false;
            m_dtGirdDSBan.Columns["MaBuoi"].Visible              = false;
        }
        // Tranh Chấp Đồng Thời

        private void btnLostUpDate_Click(object sender, EventArgs e)
        {
            try
            {
                int      loai    = chkDatBan.Checked == true ? 1 : 0;
                int      maBuoi  = (int)((BuoiDTO)cbbBuoi.SelectedItem).MaBuoi;
                int      soLuong = Int32.Parse(txtSoLuong.Text);
                DateTime ngay    = dtNgayDatBan.Value;
                if (chkDatBan.Checked)
                {
                    if (txtCMND.Text == String.Empty)
                    {
                        MessageBox.Show("Nhập chứng minh nhân dân.");
                        return;
                    }

                    BanDatDTO banDat = new BanDatDTO()
                    {
                        HoTen        = txtHoTenKhachHang.Text,
                        Cmnd         = txtCMND.Text,
                        DienThoai    = txtSoDienThoai.Text,
                        MaBan        = Int32.Parse(txtMaBan.Text),
                        MaBuoi       = (int)((BuoiDTO)cbbBuoi.SelectedItem).MaBuoi,
                        NgayDatBan   = dtNgayDatBan.Value,
                        SoLuong      = Int32.Parse(txtSoLuong.Text),
                        TinhTrangBan = !chkDatBan.Checked
                    };
                    BanDatBUS.ThemThongTinBanDat(banDat, loai);
                }
                else
                {
                    //Cap nhat thong tin ban dat T1
                    if (chkXLMatDLCapNhat.Checked)
                    {
                        BanDatBUS.CapNhatThongTinBanDatSolvedLostUpdate(GlobalVariables.maLichBan, maBuoi, ngay, soLuong);
                    }
                    if (chkXLMatDLCapNhat.Checked)
                    {
                        // BanDatBUS.CapNhatThongTinBanDatLostUpdate(GlobalVariables.maLichBan, maBuoi, ngay, soLuong);
                    }
                    // BanDatBUS.CapNhatThongTinBanDatLostU(GlobalVariables.maLichBan, maBuoi, ngay, soLuong);
                }
                LoadDanhSachBanDat();
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }
        private void btnHuyBanDat_Click(object sender, EventArgs e)
        {
            int      maBuoi  = (int)((BuoiDTO)cbbBuoi.SelectedItem).MaBuoi;
            int      soLuong = Int32.Parse(txtSoLuong.Text);
            DateTime ngay    = dtNgayDatBan.Value;

            try
            {
                BanDatBUS.CapNhatThongTinKhachBanDatUnRRead(GlobalVariables.maLichBan, maBuoi, ngay, soLuong);
                LoadDanhSachBanDat();
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }
 private void LoadDanhSachBanDat()
 {
     // List<BanDatDTO> listBD = BanDatBUS.ThongTinKhachVaBanDat();
     // dgvDanhSachBanDat.DataSource = listBD;
     //List<BanDatDTO> listBanDat = BanDatBUS.LayDanhSachBanDat();
     //dgvDanhSachBanDat.DataSource = listBanDat;
     SetValue(false, false);
     dgvDanhSachBanDat.DataSource = BanDatBUS.ThongTinKhachVaBanDat();
     //if(dgvDanhSachBanDat.Enabled == true)
     //dgvDanhSachBanDat.Enabled = false;
     //dgvDanhSachBanDat.Columns["MaNhaHang"].Visible = false;
     //dgvDanhSachBanDat.Columns["TenBuoi"].Visible = false;
     //dgvDanhSachBanDat.Columns["MaLichBan"].Visible = false;
     //dgvDanhSachBanDat.Columns["MaThongTinKhachHang"].Visible = false;
     //dgvDanhSachBanDat.Columns["TinhTrang"].Visible = false;
 }
        private void btnLuuThongTinDatBan_Click(object sender, EventArgs e)
        {
            // MessageBox.Show("Thêm mới thông tin khách click check Đặt Bàn - Cập Nhật Thông Tin Khách bỏ Check Đặt Bàn");
            try
            {
                int loai = chkDatBan.Checked == true ? 1 : 0;
                btnThem.Enabled = true;
                if (chkDatBan.Checked)
                {
                    if (txtCMND.Text == String.Empty || txtHoTenKhachHang.Text == string.Empty || txtSoDienThoai.Text == string.Empty || dtNgayDatBan.Text == string.Empty || cbbBuoi.Text == string.Empty)
                    {
                        MessageBox.Show("Hãy Nhập Đầy Đủ Thông Tin");
                    }
                    if (txtCMND.Text == "%" || txtCMND.Text.IndexOf("'") >= 0 || txtCMND.Text.IndexOf("`") >= 0)
                    {
                        MessageBox.Show("Không Hợp Lệ");
                    }
                    if (txtHoTenKhachHang.Text == "%" || txtHoTenKhachHang.Text.IndexOf("'") >= 0 || txtHoTenKhachHang.Text.IndexOf("`") >= 0)
                    {
                        MessageBox.Show("Không Hợp Lệ");
                    }
                    if (txtSoDienThoai.Text == "%" || txtSoDienThoai.Text.IndexOf("'") >= 0 || txtSoDienThoai.Text.IndexOf("`") >= 0)
                    {
                        MessageBox.Show("Không Hợp Lệ");
                    }

                    BanDatDTO banDat = new BanDatDTO()
                    {
                        HoTen        = txtHoTenKhachHang.Text,
                        Cmnd         = txtCMND.Text,
                        DienThoai    = txtSoDienThoai.Text,
                        MaBan        = Int32.Parse(txtMaBan.Text),
                        MaBuoi       = (int)((BuoiDTO)cbbBuoi.SelectedItem).MaBuoi,
                        NgayDatBan   = dtNgayDatBan.Value,
                        SoLuong      = Int32.Parse(txtSoLuong.Text),
                        TinhTrangBan = !chkDatBan.Checked
                    };
                    if (Convert.ToInt32(cboChonLoaiXungDot.SelectedValue) == 3)
                    {
                        if (chkXLBongMa.Checked)
                        {
                            BanDatBUS.ThemThongTinKhachVaBanDatPhanTom(banDat, loai);
                        }
                        //LoadDanhSachBanDat();
                    }
                    BanDatBUS.ThemThongTinBanDat(banDat, loai);
                }
                else
                {
                    //Cap nhat thong tin ban dat
                    int      maBuoi  = (int)((BuoiDTO)cbbBuoi.SelectedItem).MaBuoi;
                    int      soLuong = Int32.Parse(txtSoLuong.Text);
                    DateTime ngay    = dtNgayDatBan.Value;
                    // BanDatBUS.CapNhatThongTinKhachBanDatUnRRead(GlobalVariables.maLichBan, maBuoi, ngay, soLuong);
                    switch (Convert.ToInt32(cboChonLoaiXungDot.SelectedValue))
                    {
                    case 0:
                        BanDatBUS.CapNhatThongTinBanDat(GlobalVariables.maLichBan, maBuoi, ngay, soLuong);
                        //LoadDanhSachBanDat();
                        break;

                    case 1:     // trường hợp mất dữ liệu cập nhật
                        if (chkXLMatDLCapNhat.Checked)
                        {
                            // xử lý
                            BanDatBUS.CapNhatThongTinBanDatSolvedLostUpdate(GlobalVariables.maLichBan, maBuoi, ngay, soLuong);
                        }
                        else
                        {
                            if (chkDocMatDLCapNhat.Checked)
                            {
                                // đọc dữ liệu sai , stored t2 chưa giải quyết
                                BanDatBUS.CapNhatThongTinBanDatKoXuLyLostUpdate(GlobalVariables.maLichBan, maBuoi, ngay, soLuong);
                            }
                            // T2 đã giải quyết
                            BanDatBUS.CapNhatThongTinBanDatLostUpdate(GlobalVariables.maLichBan, maBuoi, ngay, soLuong);
                        }
                        break;

                    case 2:
                        BanDatBUS.CapNhatThongTinKhachBanDatUnRRead(GlobalVariables.maLichBan, maBuoi, ngay, soLuong);
                        // LoadDanhSachBanDat();
                        break;

                    case 3:
                        BanDatBUS.CapNhatThongTinKhachBanDatPhanTom(GlobalVariables.maLichBan, maBuoi, ngay, soLuong);
                        break;

                    default:
                        BanDatBUS.CapNhatThongTinKhachBanDatDefault(GlobalVariables.maLichBan, maBuoi, ngay, soLuong);
                        // LoadDanhSachBanDat();
                        break;
                    }
                }
                LoadDanhSachBanDat();
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }