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"); } }
// Chuyển bàn private void btChangeTable_Click(object sender, EventArgs e) { if (cbChangeTable.SelectedValue != null) { string idSelectedTable = cbChangeTable.SelectedValue.ToString(); string idCurrentTable = tbSelectedTable.Text; if (MessageBox.Show("Bạn có muốn chuyển bàn " + idCurrentTable + " sang bàn " + idSelectedTable, "Warning", MessageBoxButtons.OKCancel, MessageBoxIcon.Warning) == DialogResult.OK) { if (cbChangeTable.SelectedValue.ToString() != "System.Data.DataRowView") { // Kiểm tra xem bàn có người chưa bool isEmpty = BUS.TableBUS.IsEmpty(idSelectedTable); if (isEmpty) { // update HoaDon sang bàn mới HoaDonDAO.UpdateTableOfHoaDon(idSelectedTable, lvBill.Tag.ToString()); // Thay đổi trạng thái bàn BanAnDAO.ChangeTableStatus(idCurrentTable, "0"); BanAnDAO.ChangeTableStatus(idSelectedTable, "1"); DisplayTable(); } else { MessageBox.Show("Bàn này đã có người"); } } } } else { MessageBox.Show("Vui lòng chọn 1 bàn để đổi"); } }
void btBanAn_Click(object sender, EventArgs e) { int idBanAn = Convert.ToInt32((sender as Button).Tag.ToString()); tbSelectedTable.Text = idBanAn.ToString(); // lưu lại id của bàn ăn vào text box ShowBill(idBanAn); lvBill.Tag = HoaDonDAO.GetUnCheckBillIDByTableID(idBanAn); // lưu id hóa đơn của bàn ăn hiện tại vào lvbill tag int idNhanVien = AccountDAO.GetIdNhanVien(TenNguoiDung); // Lấy id người đăng nhập if (lvBill.Tag.ToString() == "-1") // nếu bàn đang trống { DialogResult dialog = MessageBox.Show("Bạn có muốn thêm bill cho bàn ăn này?", "Thông báo", MessageBoxButtons.OKCancel, MessageBoxIcon.Information); if (dialog == DialogResult.OK) { HoaDonDAO.InsertBill(idBanAn, idNhanVien); // Thêm hóa đơn trống BanAnDAO.ChangeTableStatus(idBanAn.ToString(), "1"); // thay đổi status của bàn thành đang có khách lvBill.Tag = HoaDonDAO.GetUnCheckBillIDByTableID(idBanAn); // lưu id của bill vào lvBill tag btAddFood.Enabled = true; // enable nút thêm btDeleteFood.Enabled = true; // enable nút delete btCheckOut.Enabled = true; DisplayTable(); } else { btAddFood.Enabled = false; btDeleteFood.Enabled = false; btCheckOut.Enabled = false; } } else { btAddFood.Enabled = true; btDeleteFood.Enabled = true; // không để ở ngoài vì: loại trừ trường hợp click vào bàn đang trống mà không có bill => thêm bị lỗi btCheckOut.Enabled = true; } }