예제 #1
0
        public ChuyenPhong GetDuLieuChuyenPhong(int IdPhong, int Id)
        {
            ChuyenPhong chuyenPhong = new ChuyenPhong();
            var         ldk         = _lichDangKyRepository.GetSingleById(Id);

            chuyenPhong.ListThoiGianBatDau  = GetDanhSachThoiGianDangKyBatDau(ldk.ThoiGianBatDau.TimeOfDay, ldk.NgayDangKy);
            chuyenPhong.ListThoiGianKetThuc = GetDanhSachThoiGianDangKyBatDau(ldk.ThoiGianKetThuc.TimeOfDay, ldk.NgayDangKy);
            chuyenPhong.ListLanhDao         = GetDanhSachLanhDao(ldk.IdLanhDao);
            chuyenPhong.ThanhPhan           = ldk.ThanhPhan;
            chuyenPhong.NgayDangKy          = ldk.NgayDangKy;
            chuyenPhong.ListPhong           = GetDanhSachChuyenPhong(IdPhong);
            chuyenPhong.ID                    = Id;
            chuyenPhong.IdLanhDao             = ldk.IdLanhDao.ToString();
            chuyenPhong.PhongCu               = IdPhong;
            chuyenPhong.IdPhongMoi            = ldk.IDPhong;
            chuyenPhong.TieuDe                = ldk.TieuDe;
            chuyenPhong.Email                 = ldk.Email;
            chuyenPhong.EmailNguoiChuTri      = ldk.LanhDao.Email;
            chuyenPhong.TenNguoiChuTriCuocHop = ldk.LanhDao.HoTen;
            chuyenPhong.ChucVu                = ldk.LanhDao.ChucVu;
            chuyenPhong.DonViCongTac          = ldk.LanhDao.DonViCongTac;
            chuyenPhong.TenNguoiDangKy        = ldk.TenNguoiDangKy;
            chuyenPhong.NoiDungCuocHop        = ldk.NoiDungCuocHop;
            return(chuyenPhong);
        }
예제 #2
0
        void DisplayChuyenPhongWithSelectedTile(ThuePhongDTO thuePhong = null)
        {
            //DTO.PhongDTO phongDTO = new DTO.PhongDTO((int)tileView1.GetRowCellValue(tileView1.GetSelectedRows()[0], "MaPhong"), (string)tileView1.GetRowCellValue(tileView1.GetSelectedRows()[0], "TenPhong"), (int)tileView1.GetRowCellValue(tileView1.GetSelectedRows()[0], "MaLoaiPhong"), tileView1.GetRowCellValue(tileView1.GetSelectedRows()[0], "Tang").ToString(), tileView1.GetRowCellValue(tileView1.GetSelectedRows()[0], "GhiChu").ToString(), (int)tileView1.GetRowCellValue(tileView1.GetSelectedRows()[0], "MaTinhTrangPhong"));
            ThuePhongDTO thuePhongDto;

            if (thuePhong == null)
            {
                thuePhongDto = listPhongDangThue[(int)danhSachPhong.Rows[tileView1.GetFocusedDataSourceRowIndex()]["MaPhong"]];
            }
            else
            {
                thuePhongDto = thuePhong;
            }

            ChuyenPhong formChuyenPhong = new ChuyenPhong(thuePhongDto);

            if (FlyoutDialog.Show(this.FindForm(), formChuyenPhong) == DialogResult.OK)
            {
                DisplayTinhTrangPhongWithSelectedTile(formChuyenPhong.GetThuePhongMoi());
            }
            else
            {
            }

            //this.TinhtrangPagecontrol.SelectedPage = PageThanhtoan;
        }
예제 #3
0
        public ActionResult ChuyenLich(ChuyenPhong chuyenPhong)
        {
            MailHelper mailHelper = new MailHelper();
            var        entity     = _lichDangKyRepository.GetSingleById(chuyenPhong.ID);
            var        phongCu    = chuyenPhong.PhongCu;

            if (_lichDangKyRepository.CheckOverlap(entity.ThoiGianBatDau, entity.ThoiGianKetThuc, chuyenPhong.IdPhongMoi))
            {
                return(RedirectToAction("ChuyenLichThatBai"));
            }
            else
            {
                var mail = _mailRepository.GetAll();
                try
                {
                    entity.IDPhong         = int.Parse(chuyenPhong.TenPhong);
                    entity.IdLanhDao       = int.Parse(chuyenPhong.IdLanhDao);
                    entity.ThanhPhan       = chuyenPhong.ThanhPhan;
                    entity.NgayDangKy      = chuyenPhong.NgayDangKy;
                    entity.ThoiGianBatDau  = chuyenPhong.NgayDangKy.AddHours(double.Parse(chuyenPhong.ThoiGianBatDau));
                    entity.ThoiGianKetThuc = chuyenPhong.NgayDangKy.AddHours(double.Parse(chuyenPhong.ThoiGianKetThuc));
                    entity.NoiDungCuocHop  = chuyenPhong.NoiDungCuocHop;
                    entity.TenNguoiDangKy  = chuyenPhong.TenNguoiDangKy;
                    entity.Email           = chuyenPhong.Email;
                    entity.TieuDe          = chuyenPhong.TieuDe;
                    entity.TinhTrang       = "Đã chuyển";
                    _lichDangKyRepository.Update(entity);
                    _unitOfWork.Commit();

                    var changeRoom = mail.Where(x => x.ValueOfMail == 2);
                    //Gửi mail đã chuyển phòng
                    int    phongThayThe      = int.Parse(chuyenPhong.TenPhong);
                    var    PhongDangKy       = _phongRepository.GetAll().Where(x => x.ID == phongCu);
                    var    PhongChuyen       = _phongRepository.GetAll().Where(x => x.ID == phongThayThe);
                    string contentChangeRoom = System.IO.File.ReadAllText(Server.MapPath("/Assets/Home/MailStructure/" + changeRoom.First().TenMail));
                    contentChangeRoom = contentChangeRoom.Replace("{{Name}}", entity.TenNguoiDangKy);
                    contentChangeRoom = contentChangeRoom.Replace("{{PhongDangKy}}", PhongDangKy.First().TenPhong);
                    contentChangeRoom = contentChangeRoom.Replace("{{PhongChuyen}}", PhongChuyen.First().TenPhong);
                    //Extra
                    contentChangeRoom = contentChangeRoom.Replace("{{Email}}", entity.Email);
                    contentChangeRoom = contentChangeRoom.Replace("{{ThoiGian}}", entity.ThoiGianBatDau + "h-" + entity.ThoiGianKetThuc + "h");
                    contentChangeRoom = contentChangeRoom.Replace("{{NgayDangKy}}", entity.NgayDangKy.ToShortDateString());
                    contentChangeRoom = contentChangeRoom.Replace("{{NoiDungCuocHop}}", entity.NoiDungCuocHop);
                    contentChangeRoom = contentChangeRoom.Replace("{{SoDienThoai}}", entity.SoDienThoai);
                    contentChangeRoom = contentChangeRoom.Replace("{{TieuDe}}", entity.TieuDe);
                    contentChangeRoom = contentChangeRoom.Replace("{{ThanhPhan}}", entity.ThanhPhan);
                    contentChangeRoom = contentChangeRoom.Replace("{{TinhTrang}}", entity.TinhTrang);

                    mailHelper.SendMail(entity.Email, "NEU", contentChangeRoom);
                    return(RedirectToAction("ChuyenLichThanhCong"));
                }
                catch (Exception ex)
                {
                    return(RedirectToAction("ChuyenLichThatBai"));
                }
            }
        }
예제 #4
0
        public ChuyenPhong Layphieuchuyentheoma(string maPC)
        {
            DataTable   dt = CPDAL.LayPCTheoMa(maPC);
            ChuyenPhong cp = new ChuyenPhong();

            cp.Maphieuchuyen = dt.Rows[0][0].ToString();
            cp.Masinhvien    = dt.Rows[0][1].ToString();
            cp.Maphongcu     = dt.Rows[0][2].ToString();
            cp.Maphongmoi    = dt.Rows[0][3].ToString();
            cp.Loaiphong     = dt.Rows[0][4].ToString();
            cp.Ngaychuyen    = dt.Rows[0][5].ToString();
            cp.Manhanvien    = dt.Rows[0][6].ToString();
            cp.Ghichu        = dt.Rows[0][7].ToString();
            return(cp);
        }
예제 #5
0
 public void Xoaphieuchuyen(ChuyenPhong cp)
 {
     strSQL = "Delete ChuyenPhong where MaPC='" + cp.Maphieuchuyen + "'";
     helper.ThucThiKN(strSQL);
 }
예제 #6
0
 public void Suaphieuchuyen(ChuyenPhong cp)
 {
     strSQL = "Update ChuyenPhong set MaSV='" + cp.Masinhvien + "',MaPhongCu='" + cp.Maphongcu + "',MaPhongMoi='" + cp.Maphongmoi + "',LoaiPhong=N'" + cp.Loaiphong + "',NgayChuyen='" + cp.Ngaychuyen + "',MaNV='" + cp.Manhanvien + "',GhiChu=N'" + cp.Ghichu + "'where MaPC='" + cp.Maphieuchuyen + "'";
     helper.ThucThiKN(strSQL);
 }
예제 #7
0
 public void Themphieuchuyen(ChuyenPhong cp)
 {
     strSQL = "Insert into ChuyenPhong values('" + cp.Maphieuchuyen + "','" + cp.Masinhvien + "','" + cp.Maphongcu + "','" + cp.Maphongmoi + "',N'" + cp.Loaiphong + "','" + cp.Ngaychuyen + "','" + cp.Manhanvien + "',N'" + cp.Ghichu + "')";
     helper.ThucThiKN(strSQL);
 }
예제 #8
0
 public void XoaPhieuChuyen(string MaPC)
 {
     CP = new ChuyenPhong(MaPC, "", "", "", "", "", "", "");
     CPDAL.Xoaphieuchuyen(CP);
 }
예제 #9
0
 public void SuaPhieuChuyen(string mapc, string masv, string maphongcu, string maphongmoi, string loaiphong, string ngaychuyen, string manhanvien, string ghichu)
 {
     CP = new ChuyenPhong(mapc, masv, maphongcu, maphongmoi, Chuanhoaxau(loaiphong), ngaychuyen, manhanvien, Chuanhoaxau(ghichu));
     CPDAL.Suaphieuchuyen(CP);
 }
예제 #10
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;
            }
            }
        }