コード例 #1
0
        private void btCheckOut_Click(object sender, EventArgs e)
        {
            btCheckOut.Enabled = false;

            DataTable reportInfo = new DataTable();

            if (tbSelectedTable.Text != "")
            {
                string idBanAn         = tbSelectedTable.Text;
                string idHoaDonHienTai = lvBill.Tag.ToString();      // Lấy id hóa đơn hiện tại của bàn ăn;
                reportInfo = MenuDAO.GetDataReport(idHoaDonHienTai); // lấy dữ liệu report từ id hóa đơn
                HoaDonDAO.UpdateStatusHoaDon(idHoaDonHienTai, "1");  // Cập nhật status hóa đơn thành 1 (Đã thanh toán)
                // Lưu ý cập nhật hóa đơn trước vì nếu cập nhật bàn ăn trước sẽ không lấy được bill id của bàn ăn hiện tại
                BanAnDAO.ChangeTableStatus(idBanAn, "0");            // thay đổi status bàn ăn: trống

                DisplayTable();
                ShowBill(Convert.ToInt32(idBanAn));

                // tạo report
                GUI.Report.MenuBill report = new GUI.Report.MenuBill();
                report.SetDataSource(reportInfo);
                // Tiêm phụ thuộc data report
                GUI.Report.ReportViewer reportViewer = new GUI.Report.ReportViewer(report);
                reportViewer.Show();
            }
            else
            {
                MessageBox.Show("Vui lòng chọn 1 bàn để thanh toán");
            }
        }