private void windowsUIButtonPanel1_ButtonClick(object sender, DevExpress.XtraBars.Docking2010.ButtonEventArgs e) { switch (e.Button.Properties.Tag.ToString()) { case "Hủy": ((FlyoutDialog)this.Parent).Hide(); break; case "Thuê": //NOTE Tài khoản thanh toán //BÌNH foreach (PhongDTO phong in selectedPhong.Values) { if (PhongBUS.LayThongTinPhong(phong.MaPhong).MaTinhTrangPhong != 0) { XtraMessageBox.Show("Phòng " + phong.TenPhong + " hiện không có sẵn! Vui lòng chọn lại phòng khác", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); txtPhong.Properties.DataSource = dtPhong = PhongBUS.LayTatCaPhong_TinhTrangPhong_LoaiPhong_CoSan(); selectedPhong.Clear(); txtPhong.Refresh(); return; } } ThuePhongDTO tp = null; foreach (PhongDTO phong in selectedPhong.Values) { tp = new ThuePhongDTO(ThuePhongBUS.PhatSinhMaThuePhong(), phong.MaPhong, (DateTime)txtGioVao.EditValue, DateTime.MinValue, hoaDon.MaHoaDon, double.NaN); ThuePhongBUS.LuuThongTinThuePhong(tp); PhongBUS.CapNhatTinhTrangPhong(phong, 1); } //Thông báo thành công onThuePhongSuccess(); ((FlyoutDialog)this.Parent).Hide(); break; default: break; } }
public void NhanPhong() { foreach (ChiTietDatPhongDTO chiTiet in DatPhongBUS.LayTatCaCacChiTietDatPhong(datPhong.MaDatPhong)) { PhongDTO phongDto = PhongBUS.LayThongTinPhong(chiTiet.MaPhong); if (phongDto.MaTinhTrangPhong == 1 || phongDto.MaTinhTrangPhong == 7) { XtraMessageBox.Show("Phòng " + phongDto.TenPhong + " đang được sử dụng nên không thể nhận được!", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); return; } else if (phongDto.MaTinhTrangPhong == 5 || phongDto.MaTinhTrangPhong == 6) { XtraMessageBox.Show("Phòng " + phongDto.TenPhong + " đang chờ dọn dẹp! Hãy dọn dẹp trước khi nhận phòng", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); return; } else if (phongDto.MaTinhTrangPhong == 2) { XtraMessageBox.Show("Phòng " + phongDto.TenPhong + " đang sửa chữa! Vui lòng chuyển đặt phòng sang phòng khác hoặc chuyển tình trạng phòng sang bình thường!", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); return; } else if (phongDto.MaTinhTrangPhong == 3) { XtraMessageBox.Show("Phòng " + phongDto.TenPhong + " đã bị xóa, không thể nhận phòng! Vui lòng chuyển đặt phòng sang phòng khác! ", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); return; } } //Phát sinh hóa đơn HoaDonDTO hoaDon = new HoaDonDTO(HoaDonBUS.PhatSinhMaHoaDon(), (this.ParentForm as MainForm).nhanVien.MaNhanVien, Double.NaN, datPhong.SoTienDatTruoc, DateTime.MinValue, Double.NaN, datPhong.GhiChu, khachHang.MaKH, datPhong.MaDatPhong); HoaDonBUS.LuuThongTinHoaDon(hoaDon); ThuePhongDTO tp = null; foreach (XtraTabPage xtraTab in this.TabControl.TabPages) { tp = new ThuePhongDTO(ThuePhongBUS.PhatSinhMaThuePhong(), (xtraTab.Tag as ThongTinChiTietDatPhong).chiTietDatPhong.MaPhong, DateTime.Now, DateTime.MinValue, hoaDon.MaHoaDon, double.NaN); ThuePhongBUS.LuuThongTinThuePhong(tp); PhongBUS.CapNhatTinhTrangPhong((xtraTab.Tag as ThongTinChiTietDatPhong).chiTietDatPhong.MaPhong, 1); (xtraTab.Tag as ThongTinChiTietDatPhong).LuuThongTinDichVuPhong(tp); } DatPhongBUS.CapNhatTinhTrangDatPhong(2, datPhong.MaDatPhong); (this.ParentForm as MainForm).HienThiThongTinPhong(tp); }
private void btnLuuPhieuThue_Click(object sender, EventArgs e) { PhieuThuePhongDTO p = LayThongTinPhong(); ChiTietPhieuThueDTO ct = LayMaKeTiep(); if (PhieuThueBUS.ThemPhieuThuePhong(ct, p)) { for (int i = 0; i < dgvDanhSachPhieuThue.Rows.Count; i++) { KhachHangDTO kh = LayThongTinKhachHang(i); if (KhachHangBUS.ThemKhachHang(kh)) { if (!PhieuThueBUS.ThemCTPhieuThuePhong(ct, kh)) { MessageBox.Show("Không thêm được chi tiết phiếu thuê", "Lỗi", MessageBoxButtons.OK, MessageBoxIcon.Stop); } } else { MessageBox.Show("Không thêm được thông tin khách hàng" + kh.TenKhachHang + "", "Lỗi", MessageBoxButtons.OK, MessageBoxIcon.Stop); } } if (PhongBUS.CapNhatTinhTrangPhong(p)) { MessageBox.Show("Lập phiếu thuê thành công", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Information); ((Form)this.TopLevelControl).Close(); } else { MessageBox.Show("Không cập nhật được tình trạng phòng", "Lỗi", MessageBoxButtons.OK, MessageBoxIcon.Stop); } } else { MessageBox.Show("Không thêm được phiếu thuê", "Lỗi", MessageBoxButtons.OK, MessageBoxIcon.Stop); } }
private void wbntQuanlyphong_ButtonClick(object sender, DevExpress.XtraBars.Docking2010.ButtonEventArgs e) { switch (e.Button.Properties.Tag.ToString()) { case "Thêm Dịch Vụ": folderDichVu.ChonDichVu chonDichVu = new folderDichVu.ChonDichVu(false); XtraDialogArgs args = new XtraDialogArgs(caption: "Chọn dịch vụ", content: chonDichVu, buttons: new DialogResult[] { DialogResult.OK, DialogResult.Cancel }); args.Showing += Args_Showing; if (XtraDialog.Show(args) == DialogResult.OK) { foreach (int dichVu_Key in chonDichVu.GetSelectedDichVu().Keys) { DichVuPhongBUS.LuuThongTinDichVuPhong(new DichVuPhongDTO(DichVuPhongBUS.PhatSinhMaDichVuPhong(), thuePhong.MaThuePhong, dichVu_Key, DateTime.Now, chonDichVu.GetSelectedDichVu()[dichVu_Key], DichVuBUS.LayThongTinDichVu(dichVu_Key).DonGia)); //DichVuBUS.LayThongTinDichVu(dichVu_Key); } RefreshDataBindingDichVuPhong(); } break; case "Chuyển Phòng": ChuyenPhong formChuyenPhong = new ChuyenPhong(thuePhong); if (FlyoutDialog.Show(this.FindForm(), formChuyenPhong) == DialogResult.OK) { OnThueThemPhongSuccess(); } break; case "Xóa Dịch Vụ": if (XtraMessageBox.Show("Bạn có chắc muốn xóa dịch vụ '" + dichVuPhong.Rows[gridView1.GetFocusedDataSourceRowIndex()]["TenDV"] + "' ?", "Xác nhận", MessageBoxButtons.YesNo, MessageBoxIcon.Exclamation) == DialogResult.Yes) { DichVuPhongBUS.XoaDichVuPhong((int)dichVuPhong.Rows[gridView1.GetFocusedDataSourceRowIndex()]["MaDVP"]); RefreshDataBindingDichVuPhong(); } break; case "Hủy Phòng": //Thông báo xác nhận if (XtraMessageBox.Show("Bạn có chắc hủy thuê phòng này ?", "Xác nhận", MessageBoxButtons.YesNo) == DialogResult.No) { return; } ThuePhongBUS.XoaCacDichVuPhong(thuePhong); ThuePhongBUS.XoaThuePhong(thuePhong); PhongBUS.CapNhatTinhTrangPhong(thuePhong.MaPhong, 0); if (HoaDonBUS.DemSoLuongThuePhong(hoaDon.MaHoaDon) == 0) { HoaDonBUS.XoaHoaDon(hoaDon); } ((ThongTinChiTietNhieuPhong)Parent.Parent.Parent).OnXoaPhong(); break; case "Trả Phòng": //Đếm số lượng phòng đã trả trong hóa đơn / Nếu hóa đơn còn 1 phòng chuyển qua thanh toán if (HoaDonBUS.DemSoLuongPhongDangConDuocThueHienTai(hoaDon) == 1) { XtraMessageBox.Show("Hóa đơn chỉ còn lại 1 phòng! Vui lòng thanh toán", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Information); return; } //Xác nhận trả phòng if (XtraMessageBox.Show("Bạn có chắc trả phòng này ?", "Xác nhận", MessageBoxButtons.YesNo) == DialogResult.No) { return; } ThuePhongBUS.CapNhatThongTinThuePhong(new ThuePhongDTO(thuePhong.MaThuePhong, thuePhong.MaPhong, thuePhong.GioThuePhong, DateTime.Now, thuePhong.MaHoaDon, Double.NaN)); switch (PhongBUS.LayThongTinPhong(thuePhong.MaPhong).MaTinhTrangPhong) { case 1: if (ThamSoBUS.LayChuyenSangChoDonDepSauKhiThanhToan()) { PhongBUS.CapNhatTinhTrangPhong(thuePhong.MaPhong, 5); } else { PhongBUS.CapNhatTinhTrangPhong(thuePhong.MaPhong, 0); } break; case 7: if (ThamSoBUS.LayChuyenSangChoDonDepSauKhiThanhToan()) { PhongBUS.CapNhatTinhTrangPhong(thuePhong.MaPhong, 6); } else { PhongBUS.CapNhatTinhTrangPhong(thuePhong.MaPhong, 4); } break; } //Thông báo thành công XtraMessageBox.Show("Trả phòng thành công!", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Information); RefreshDataBinding(phong, ThuePhongBUS.LayThongTinThuePhong(thuePhong.MaThuePhong)); break; case "Thanh Toán": goToThanhToan(thuePhong); break; case "Thông tin đặt phòng": (this.ParentForm as MainForm).HienThiThongTinDatPhong(HoaDonBUS.LayThongTinHoaDon(thuePhong.MaHoaDon).MaDatPhong); break; case "Tách Hóa Đơn": if (HoaDonBUS.LayTatCaCacThuePhong(hoaDon.MaHoaDon).Count == 1) { XtraMessageBox.Show("Hóa đơn chỉ có 1 phòng nên không thể tách!", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Information); return; } FlyoutDialog.Show(this.FindForm(), new TachHoaDon(hoaDon, OnThueThemPhongSuccess)); break; case "Thuê Thêm Phòng": FlyoutDialog.Show(this.FindForm(), new ThemPhongVaoHoaDon(hoaDon, OnThueThemPhongSuccess)); break; } }
private void windowsUIButtonPanel1_ButtonClick(object sender, DevExpress.XtraBars.Docking2010.ButtonEventArgs e) { switch (e.Button.Properties.Tag.ToString()) { case "Hủy": ((FlyoutDialog)this.Parent).DialogResult = DialogResult.Cancel; ((FlyoutDialog)this.Parent).Hide(); break; case "Chuyển": if (chiTietDatPhong == null) //Chuyển phong đang thuê { if (PhongBUS.LayThongTinPhong(phongMoi.MaPhong).MaTinhTrangPhong != 0) { XtraMessageBox.Show("Phòng " + PhongBUS.LayThongTinPhong((int)txtMaPhong.EditValue).TenPhong + " hiện không có sẵn! Vui lòng chọn lại phòng khác", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); txtPhong.Properties.DataSource = dtPhong = PhongBUS.LayTatCaPhong_TinhTrangPhong_LoaiPhong_CoSan(); txtPhong.EditValue = ""; gridView1.ClearSelection(); txtPhong.Refresh(); txtPhong.ErrorText = "Không có phòng nào được chọn"; txtMaPhong.EditValue = ""; txtLoaiPhong.EditValue = ""; txtTang.EditValue = ""; txtGhiChu.EditValue = ""; windowsUIButtonPanel1.Buttons[0].Properties.Visible = false; return; } ThuePhongBUS.CapNhatThongTinThuePhong(new ThuePhongDTO(phongCu.MaThuePhong, phongCu.MaPhong, phongCu.GioThuePhong, DateTime.Now, phongCu.MaHoaDon, Double.NaN)); switch (PhongBUS.LayThongTinPhong(phongCu.MaPhong).MaTinhTrangPhong) { case 1: if (ThamSoBUS.LayChuyenSangChoDonDepSauKhiThanhToan()) { PhongBUS.CapNhatTinhTrangPhong(phongCu.MaPhong, 5); } else { PhongBUS.CapNhatTinhTrangPhong(phongCu.MaPhong, 0); } break; case 7: if (ThamSoBUS.LayChuyenSangChoDonDepSauKhiThanhToan()) { PhongBUS.CapNhatTinhTrangPhong(phongCu.MaPhong, 6); } else { PhongBUS.CapNhatTinhTrangPhong(phongCu.MaPhong, 4); } break; } phongMoi = new ThuePhongDTO(ThuePhongBUS.PhatSinhMaThuePhong(), (int)txtMaPhong.EditValue, DateTime.Now, DateTime.MinValue, phongCu.MaHoaDon, Double.NaN); ThuePhongBUS.LuuThongTinThuePhong(phongMoi); PhongBUS.CapNhatTinhTrangPhong(phongMoi.MaPhong, 1); } else //Chuyển phòng đặt { if (PhongBUS.LayThongTinPhong(chiTietDatPhong.MaPhong).MaTinhTrangPhong == 4) { PhongBUS.CapNhatTinhTrangPhong(chiTietDatPhong.MaPhong, 0); } else if (PhongBUS.LayThongTinPhong(chiTietDatPhong.MaPhong).MaTinhTrangPhong == 6) { PhongBUS.CapNhatTinhTrangPhong(chiTietDatPhong.MaPhong, 5); } else if (PhongBUS.LayThongTinPhong(chiTietDatPhong.MaPhong).MaTinhTrangPhong == 7) { PhongBUS.CapNhatTinhTrangPhong(chiTietDatPhong.MaPhong, 1); } ChiTietDatPhongBUS.CapNhatThongTinDatPhong(new ChiTietDatPhongDTO(chiTietDatPhong.MaChiTietDatPhong, (int)txtMaPhong.EditValue, chiTietDatPhong.MaDatPhong)); } ((FlyoutDialog)this.Parent).DialogResult = DialogResult.OK; ((FlyoutDialog)this.Parent).Hide(); break; default: break; } }
private void wbntQuanlyphong_ButtonClick(object sender, DevExpress.XtraBars.Docking2010.ButtonEventArgs e) { switch (e.Button.Properties.Tag.ToString()) { case "Thêm Dịch Vụ": ((ChiTietThanhToanPhong)tabbedControlGroup1.SelectedTabPage.Tag).ThemDichVu(); break; case "Xóa Dịch Vụ": ((ChiTietThanhToanPhong)tabbedControlGroup1.SelectedTabPage.Tag).XoaDichVu(); break; case "Thanh toán": //hoaDon.TienGio = (double)txtTongTienGio.EditValue; HoaDonBUS.CapNhatHoaDonDaThanhToan(hoaDon); foreach (DevExpress.XtraLayout.LayoutControlGroup layoutGroup in this.tabbedControlGroup1.TabPages) { ((ChiTietThanhToanPhong)layoutGroup.Tag).LuuKhuyenMai(); ((ChiTietThanhToanPhong)layoutGroup.Tag).LuuTienGio(); ((ChiTietThanhToanPhong)layoutGroup.Tag).CapNhatThongTinThuePhong(); switch (PhongBUS.LayThongTinPhong(thuePhong.MaPhong).MaTinhTrangPhong) { case 1: case 5: if (ThamSoBUS.LayChuyenSangChoDonDepSauKhiThanhToan()) { PhongBUS.CapNhatTinhTrangPhong(((ChiTietThanhToanPhong)layoutGroup.Tag).thuePhong.MaPhong, 5); } else { PhongBUS.CapNhatTinhTrangPhong(((ChiTietThanhToanPhong)layoutGroup.Tag).thuePhong.MaPhong, 0); } break; case 7: if (ThamSoBUS.LayChuyenSangChoDonDepSauKhiThanhToan()) { PhongBUS.CapNhatTinhTrangPhong(((ChiTietThanhToanPhong)layoutGroup.Tag).thuePhong.MaPhong, 6); } else { PhongBUS.CapNhatTinhTrangPhong(((ChiTietThanhToanPhong)layoutGroup.Tag).thuePhong.MaPhong, 4); } break; } } if (khachHang.MaLoaiKH != 0) { KhachHangBUS.CapNhatDiemTichLuy(khachHang.MaKH, khachHang.DiemTichLuy + ThamSoBUS.QuyDoiDiem((double)txtTongTienThanhToan.EditValue)); khachHang.DiemTichLuy = khachHang.DiemTichLuy + ThamSoBUS.QuyDoiDiem((double)txtTongTienThanhToan.EditValue); LoaiKhachHangDTO loaiKhachHangCoThe = KhachHangBUS.LayLoaiKhachHangCoTheDatDuoc(khachHang); if (loaiKhachHangCoThe != null && loaiKhachHangCoThe.MaLoaiKH != 0) { if (khachHang.MaLoaiKH != loaiKhachHangCoThe.MaLoaiKH) { KhachHangBUS.CapNhatLoaiKhachHang(khachHang.MaKH, loaiKhachHangCoThe.MaLoaiKH); XtraMessageBox.Show("Khách hàng được cập nhật lên loại '" + loaiKhachHangCoThe.TenLoaiKH + "'! ", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Information); } } } goBackHome(); break; case "In hóa đơn": XtraDialogArgs args = new XtraDialogArgs(caption: "Chọn dịch vụ", content: new ReportViewer(reportHoaDon), buttons: new DialogResult[] { DialogResult.OK }); XtraDialog.Show(args); // DevExpress.XtraBars.Docking2010.Customization.FlyoutDialog.Show(this.FindForm(),new ReportViewer(reportHoaDon)); break; case "In hóa đơn tạm tính": double TongTienGio = 0, TongTienKhuyenMai = 0, TongTienDichVu = 0; dsDichVuPhong.Tables.Clear(); for (int i = 0; i < this.tabbedControlGroup1.TabPages.Count; i++) { TongTienGio += ((ChiTietThanhToanPhong)this.tabbedControlGroup1.TabPages[i].Tag).GetTongTienGio(); TongTienKhuyenMai += ((ChiTietThanhToanPhong)this.tabbedControlGroup1.TabPages[i].Tag).GetTongTienKhuyenMai(); TongTienDichVu += ((ChiTietThanhToanPhong)this.tabbedControlGroup1.TabPages[i].Tag).GetTongTienDichVu(); dsHoaDon.Tables[1].Rows[i]["TienPhong"] = ((ChiTietThanhToanPhong)this.tabbedControlGroup1.TabPages[i].Tag).GetTongTienGio() + ((ChiTietThanhToanPhong)this.tabbedControlGroup1.TabPages[i].Tag).GetTongTienDichVu() + ((ChiTietThanhToanPhong)this.tabbedControlGroup1.TabPages[i].Tag).GetTongTienKhuyenMai(); dsDichVuPhong.Tables.Add(((ChiTietThanhToanPhong)tabbedControlGroup1.TabPages[i].Tag).GetDichVuPhong_DataTable()); } DataTable MergedDataTable = new DataTable("dichvuphong"); MergedDataTable.Merge(dsDichVuPhong.Tables[0]); if (!ReadOnlyMode) //ReadOnly Mode { MergedDataTable.Columns.Add(new DataColumn("MaTemp")); for (int i = 0; i < MergedDataTable.Rows.Count; i++) { MergedDataTable.Rows[i]["MaTemp"] = i; } MergedDataTable.PrimaryKey = new DataColumn[] { MergedDataTable.Columns["MaTemp"] }; for (int i = 1; i < dsDichVuPhong.Tables.Count; i++) { foreach (DataRow dr in dsDichVuPhong.Tables[i].Rows) { DataRow row = MergedDataTable.NewRow(); row["MaTemp"] = MergedDataTable.Rows.Count; row["MaDVP"] = dr["MaDVP"]; row["MaThuePhong"] = dr["MaThuePhong"]; row["MaDV"] = dr["MaDV"]; row["ThoiGian"] = dr["ThoiGian"]; row["SoLuong"] = dr["SoLuong"]; row["Gia"] = dr["Gia"]; row["TenDV"] = dr["TenDV"]; row["DonVi"] = dr["DonVi"]; row["colType"] = dr["colType"]; MergedDataTable.Rows.Add(row); } } for (int i = 0; i < this.tabbedControlGroup1.TabPages.Count; i++) { foreach (DataRow dr in ((ChiTietThanhToanPhong)tabbedControlGroup1.TabPages[i].Tag).GetTienGio_DataTable().Rows) { DataRow row = MergedDataTable.NewRow(); row["MaTemp"] = MergedDataTable.Rows.Count; row["MaDVP"] = -1; row["MaThuePhong"] = ((ChiTietThanhToanPhong)tabbedControlGroup1.TabPages[i].Tag).GetThuePhong().MaThuePhong; row["MaDV"] = -1; row["ThoiGian"] = DateTime.MinValue; row["SoLuong"] = dr["SoLuong"]; row["Gia"] = dr["DonGia"]; row["TenDV"] = dr["Ngay"] + " " + dr["KhoangThoiGian"]; row["DonVi"] = "VNĐ/Giờ"; row["colType"] = "Tiền Giờ"; MergedDataTable.Rows.Add(row); } } } else { for (int i = 1; i < dsDichVuPhong.Tables.Count; i++) { MergedDataTable.Merge(dsDichVuPhong.Tables[i]); } MergedDataTable.Columns.Add(new DataColumn("MaTemp")); for (int i = 0; i < MergedDataTable.Rows.Count; i++) { MergedDataTable.Rows[i]["MaTemp"] = i; } MergedDataTable.PrimaryKey = new DataColumn[] { MergedDataTable.Columns["MaTemp"] }; for (int i = 0; i < this.tabbedControlGroup1.TabPages.Count; i++) { foreach (DataRow dr in BUS.TienGio_ThuePhongBUS.LayTienGio_ThuePhong_DataTable(((ChiTietThanhToanPhong)tabbedControlGroup1.TabPages[i].Tag).GetThuePhong().MaThuePhong).Rows) { DataRow row = MergedDataTable.NewRow(); row["MaTemp"] = MergedDataTable.Rows.Count; row["MaDVP"] = -1; row["MaThuePhong"] = dr["MaThuePhong"]; row["MaDV"] = -1; row["ThoiGian"] = DateTime.MinValue; row["SoLuong"] = dr["SoLuong"]; row["Gia"] = dr["DonGia"]; row["TenDV"] = dr["Ngay"] + " " + dr["KhoangThoiGian"]; row["DonVi"] = "VNĐ/Giờ"; row["colType"] = "Tiền Giờ"; MergedDataTable.Rows.Add(row); } } } if (dsHoaDon.Tables.Count == 3) { dsHoaDon.Relations.RemoveAt(1); dsHoaDon.Tables[2].Constraints.Clear(); dsHoaDon.Tables.RemoveAt(2); } dsHoaDon.Tables.Add(MergedDataTable); dsHoaDon.Relations.Add("chitietdichvu", dsHoaDon.Tables[1].Columns["MaThuePhong"], dsHoaDon.Tables[2].Columns["MaThuePhong"]); txtTongTienGio.EditValue = TongTienGio; txtTongTienKhuyenMai.EditValue = TongTienKhuyenMai; txtTongTienDichVu.EditValue = TongTienDichVu; txtTongTienThanhToan.EditValue = TongTienGio + TongTienKhuyenMai + TongTienDichVu - Convert.ToDouble(txtTienTraTruoc.EditValue); hoaDon.MaNhanVienThanhToan = (this.ParentForm as MainForm).nhanVien.MaNhanVien; hoaDon.TongTienThanhToan = (double)txtTongTienThanhToan.EditValue; hoaDon.NgayThanhToan = txtNgayThanhToan.Time; hoaDon.SoTienKhuyenMai = (double)txtTongTienKhuyenMai.EditValue; reportHoaDon HoaDon = new reportHoaDon(); HoaDon.BindingData(dsHoaDon, khachHang, hoaDon, TongTienGio, TongTienKhuyenMai, TongTienDichVu, Convert.ToDouble(txtTienTraTruoc.EditValue), txtGhiChu.Text, true); XtraDialogArgs phieudatphong = new XtraDialogArgs(caption: "Hóa đơn tạm tính", content: new ReportViewer(HoaDon), buttons: new DialogResult[] { DialogResult.OK }); XtraDialog.Show(phieudatphong); break; } }
private void wbntQuanlyphong_ButtonClick(object sender, DevExpress.XtraBars.Docking2010.ButtonEventArgs e) { switch (e.Button.Properties.Tag.ToString()) { case "Thêm Dịch Vụ": folderDichVu.ChonDichVu chonDichVu = new folderDichVu.ChonDichVu(false); XtraDialogArgs args = new XtraDialogArgs(caption: "Chọn dịch vụ", content: chonDichVu, buttons: new DialogResult[] { DialogResult.OK, DialogResult.Cancel }); args.Showing += Args_Showing; if (XtraDialog.Show(args) == DialogResult.OK) { foreach (int dichVu_Key in chonDichVu.GetSelectedDichVu().Keys) { DichVuDatPhongBUS.LuuThongTinDichVuDatPhong(new DichVuDatPhongDTO(DichVuDatPhongBUS.PhatSinhMaDichVuPhong(), dichVu_Key, chonDichVu.GetSelectedDichVu()[dichVu_Key], DichVuBUS.LayThongTinDichVu(dichVu_Key).DonGia, chiTietDatPhong.MaChiTietDatPhong)); //DichVuBUS.LayThongTinDichVu(dichVu_Key); } RefreshDataBindingDichVuPhong(); } break; case "Chuyển Phòng": ChuyenPhong formChuyenPhong = new ChuyenPhong(chiTietDatPhong); if (FlyoutDialog.Show(this.FindForm(), formChuyenPhong) == DialogResult.OK) { XtraMessageBox.Show("Chuyển phòng thành công!", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Information); (Parent.Parent.Parent as ThongTinChiTietDatNhieuPhong).RefreshData(); } break; case "Xóa Dịch Vụ": if (XtraMessageBox.Show("Bạn có chắc muốn xóa dịch vụ '" + dichVuPhong.Rows[gridView1.GetFocusedDataSourceRowIndex()]["TenDV"] + "' ?", "Xác nhận", MessageBoxButtons.YesNo, MessageBoxIcon.Exclamation) == DialogResult.Yes) { DichVuDatPhongBUS.XoaDichVuDatPhong((int)dichVuPhong.Rows[gridView1.GetFocusedDataSourceRowIndex()]["MaDichVuDatPhong"]); RefreshDataBindingDichVuPhong(); } break; case "Nhận Phòng": //Thông báo xác nhận if (XtraMessageBox.Show("Xác nhận nhận đặt phòng?", "Xác nhận", MessageBoxButtons.YesNo) == DialogResult.No) { return; } (Parent.Parent.Parent as ThongTinChiTietDatNhieuPhong).NhanPhong(); break; case "Hủy Phòng": //Thông báo xác nhận if (XtraMessageBox.Show("Bạn có chắc hủy phòng đã đặt này ?", "Xác nhận", MessageBoxButtons.YesNo) == DialogResult.No) { return; } Dictionary <int, DatPhongDTO> tempSapDat_1 = BUS.DatPhongBUS.LayCacDatPhongDangSapDuocDatVaDangDuocDat(ThamSoBUS.LayKhoangThoiGianChoDatPhong()); //Hủy đặt phòng if (DatPhongBUS.DemSoLuongChiTietDatPhong(chiTietDatPhong.MaDatPhong) == 1) { foreach (ChiTietDatPhongDTO dp in DatPhongBUS.LayTatCaCacChiTietDatPhong(chiTietDatPhong.MaDatPhong)) { if (PhongBUS.LayThongTinPhong(dp.MaPhong).MaTinhTrangPhong == 4 && tempSapDat_1.ContainsKey(dp.MaDatPhong)) { PhongBUS.CapNhatTinhTrangPhong(dp.MaPhong, 0); } else if (PhongBUS.LayThongTinPhong(dp.MaPhong).MaTinhTrangPhong == 6 && tempSapDat_1.ContainsKey(dp.MaDatPhong)) { PhongBUS.CapNhatTinhTrangPhong(dp.MaPhong, 5); } else if (PhongBUS.LayThongTinPhong(dp.MaPhong).MaTinhTrangPhong == 7 && tempSapDat_1.ContainsKey(dp.MaDatPhong)) { PhongBUS.CapNhatTinhTrangPhong(dp.MaPhong, 1); } } DatPhongBUS.CapNhatTinhTrangDatPhong(3, chiTietDatPhong.MaDatPhong); (Parent.Parent.Parent as ThongTinChiTietDatNhieuPhong).RefreshData(); break; } //Hủy phòng if (PhongBUS.LayThongTinPhong(chiTietDatPhong.MaPhong).MaTinhTrangPhong == 4 && tempSapDat_1.ContainsKey(chiTietDatPhong.MaDatPhong)) { PhongBUS.CapNhatTinhTrangPhong(chiTietDatPhong.MaPhong, 0); } else if (PhongBUS.LayThongTinPhong(chiTietDatPhong.MaPhong).MaTinhTrangPhong == 6 && tempSapDat_1.ContainsKey(chiTietDatPhong.MaDatPhong)) { PhongBUS.CapNhatTinhTrangPhong(chiTietDatPhong.MaPhong, 5); } else if (PhongBUS.LayThongTinPhong(chiTietDatPhong.MaPhong).MaTinhTrangPhong == 7 && tempSapDat_1.ContainsKey(chiTietDatPhong.MaDatPhong)) { PhongBUS.CapNhatTinhTrangPhong(chiTietDatPhong.MaPhong, 1); } DatPhongBUS.XoaCacDichVuDatPhong(chiTietDatPhong); DatPhongBUS.XoaDatChiTietDatPhong(chiTietDatPhong); //if (DatPhongBUS.DemSoLuongChiTietDatPhong(chiTietDatPhong.MaDatPhong) == 0) //{ // DatPhongBUS.XoaDatPhong(chiTietDatPhong.MaDatPhong); //} XtraMessageBox.Show("Xóa đặt phòng thành công!", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Information); (Parent.Parent.Parent as ThongTinChiTietDatNhieuPhong).RefreshData(); //ThuePhongBUS.XoaThuePhong(thuePhong); //PhongBUS.CapNhatTinhTrangPhong(thuePhong.MaPhong, 0); //if (HoaDonBUS.DemSoLuongThuePhong(hoaDon.MaHoaDon) == 0) //{ // HoaDonBUS.XoaHoaDon(hoaDon); //} //((ThongTinChiTietNhieuPhong)Parent.Parent.Parent).OnXoaPhong(); break; case "Hủy Đặt Phòng": //Thông báo xác nhận if (XtraMessageBox.Show("Bạn có chắc hủy đặt phòng này ?", "Xác nhận", MessageBoxButtons.YesNo) == DialogResult.No) { return; } //BUS.PhongBUS.CapNhatTinhTrangPhong(chiTiet.MaPhong, 0); Dictionary <int, DatPhongDTO> tempSapDat = BUS.DatPhongBUS.LayCacDatPhongDangSapDuocDatVaDangDuocDat(ThamSoBUS.LayKhoangThoiGianChoDatPhong()); foreach (ChiTietDatPhongDTO dp in DatPhongBUS.LayTatCaCacChiTietDatPhong(chiTietDatPhong.MaDatPhong)) { if (PhongBUS.LayThongTinPhong(dp.MaPhong).MaTinhTrangPhong == 4 && tempSapDat.ContainsKey(dp.MaDatPhong)) { PhongBUS.CapNhatTinhTrangPhong(dp.MaPhong, 0); } else if (PhongBUS.LayThongTinPhong(dp.MaPhong).MaTinhTrangPhong == 6 && tempSapDat.ContainsKey(dp.MaDatPhong)) { PhongBUS.CapNhatTinhTrangPhong(dp.MaPhong, 5); } else if (PhongBUS.LayThongTinPhong(dp.MaPhong).MaTinhTrangPhong == 7 && tempSapDat.ContainsKey(dp.MaDatPhong)) { PhongBUS.CapNhatTinhTrangPhong(dp.MaPhong, 1); } } DatPhongBUS.CapNhatTinhTrangDatPhong(3, chiTietDatPhong.MaDatPhong); (Parent.Parent.Parent as ThongTinChiTietDatNhieuPhong).RefreshData(); break; case "In phiếu đặt": { (Parent.Parent.Parent as ThongTinChiTietDatNhieuPhong).InPhieuDat(); break; } } }
private void windowsUIButtonPanel1_ButtonClick(object sender, DevExpress.XtraBars.Docking2010.ButtonEventArgs e) { switch (e.Button.Properties.Tag.ToString()) { case "Hủy": ((FlyoutDialog)this.Parent).Hide(); break; case "Thuê": //Kiểm tra khách hàng if (khachHang == null) { XtraMessageBox.Show("Không có khách hàng nào được chọn!", "Lỗi", MessageBoxButtons.OK); return; } //Kiểm tra xem phòng vẫn còn trống không foreach (PhongDTO phong in selectedPhong.Values) { if (PhongBUS.LayThongTinPhong(phong.MaPhong).MaTinhTrangPhong != 0) { XtraMessageBox.Show("Phòng " + phong.TenPhong + " hiện không có sẵn! Vui lòng chọn lại phòng khác", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); txtPhong.Properties.DataSource = dtPhong = PhongBUS.LayTatCaPhong_TinhTrangPhong_LoaiPhong_CoSan(); selectedPhong.Clear(); txtPhong.Refresh(); return; } } //NOTE Tài khoản thanh toán //BÌNH //Phát sinh hóa đơn HoaDonDTO hoaDon = new HoaDonDTO(HoaDonBUS.PhatSinhMaHoaDon(), -1, Double.NaN, Convert.ToDouble(txtTienTraTruoc.EditValue), DateTime.MinValue, Double.NaN, txtGhiChu.Text, khachHang.MaKH, -1); HoaDonBUS.LuuThongTinHoaDon(hoaDon); ThuePhongDTO tp = null; foreach (PhongDTO phong in selectedPhong.Values) { tp = new ThuePhongDTO(ThuePhongBUS.PhatSinhMaThuePhong(), phong.MaPhong, (DateTime)txtGioVao.EditValue, DateTime.MinValue, hoaDon.MaHoaDon, double.NaN); ThuePhongBUS.LuuThongTinThuePhong(tp); PhongBUS.CapNhatTinhTrangPhong(phong, 1); } //Thông báo thành công onThuePhongSuccess(tp); ((FlyoutDialog)this.Parent).Hide(); break; default: break; } }