Пример #1
0
        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;
            }
            }
        }