# TimeStay - 多供应商小时酒店预订系统
## 项目概述
**TimeStay** 是一个多供应商小时酒店房间预订网站(基于订阅),管理员向供应商销售订阅计划(月度/年度/终身),供应商订阅后可以添加酒店和房间。客户可以按小时预订房间(例如 3 小时、6 小时、9 小时等)。已预订的小时和假期日期将被阻止预订。
## 主要功能
### 核心功能
- **多供应商系统** - 供应商订阅计划后添加酒店和房间
- **小时预订** - 按小时预订房间(3/6/9 小时等)
- **高级搜索** - 按日期、时间、小时、位置等筛选
- **地理位置搜索** - 基于半径的酒店/房间搜索(可启用/禁用)
- **预订管理** - 已预订时间和假期日期自动阻止
- **推广系统** - 供应商可以付费推广酒店/房间
- **订阅计划** - 月度/年度/终身订阅套餐
### 支付网关 (19种)
- PayPal
- Stripe
- Razorpay
- Paytm
- Mollie
- Paystack
- Flutterwave
- Mercadopago
- Authorize.net
- Instamojo
- Iyzico
- Midtrans
- MyFatoorah
- 银行转账
- 无限线下支付方式
### 用户功能
- 高级搜索筛选(日期、时间、小时、位置)
- 地理位置/半径搜索
- 房间预订
- 订单管理
- 支付和发票
### 供应商功能
- 订阅计划购买
- 酒店管理
- 房间管理
- 预订管理
- 推广服务
- 收入统计
- 提现申请
### 管理功能
- 订阅套餐管理
- 供应商管理
- 酒店管理
- 房间审核
- 预订管理
- 支付网关配置
- 邮件模板设置
- 多语言管理
- 货币设置
- 拖拽菜单构建器
- 管理员角色和权限
- 公告弹窗
- 维护模式
### 前端特性
- 3 个独特且吸引人的模板
- 完全多语言和 RTL 支持
- 响应式设计
## 技术栈
### 后端
- **框架**: Laravel 9.52.16
- **PHP 版本**: ^8.2
- **数据库**: MySQL
- **模板引擎**: Blade
### 主要依赖包
- Laravel Framework ^9.52.16
- Laravel Socialite ^5.5 (社交登录)
- Stripe Laravel ^14.0
- Razorpay SDK 2.*
- Mollie Laravel ^2.0
- PayPal REST API SDK
- Authorize.net API ^3.1
- Paytm Wallet ^2.0
- Midtrans PHP ^2.5
- Iyzico PHP ^2.0
- MyFatoorah Laravel ^1.0
- Laravel DOMPDF ^2.0 (PDF 生成)
- Maatwebsite Excel ^3.1
- Laravel WebPush ^7.0
- Spatie Cookie Consent ^3.2
- No Captcha ^3.3
### 前端
- **CSS 框架**: Bootstrap
- **JavaScript**: jQuery, Vue.js
- **图标**: Font Awesome
- **字体**: 主题字体
## 文件结构
```
codecanyon-56212618-timestay-multivendor-hourly-hotel-booking-laravel-website-saas/
├── documentation/ # 文档目录
│ ├── css/
│ ├── fonts/
│ ├── images/
│ ├── js/
│ └── index.html
├── installable/ # 可安装文件
│ ├── app/
│ ├── bootstrap/
│ ├── config/
│ ├── database/
│ ├── public/
│ ├── resources/
│ │ └── views/
│ ├── routes/
│ ├── storage/
│ ├── tests/
│ ├── vendor/
│ ├── composer.json
│ ├── package.json
│ ├── .env.example
│ └── README.md
├── updater/ # 更新程序
└── PROJECT_ANALYSIS.md
```
## 安装说明
### 系统要求
- PHP 8.2
- BCMath PHP 扩展
- Ctype PHP 扩展
- Fileinfo PHP 扩展
- JSON PHP 扩展
- Mbstring PHP 扩展
- OpenSSL PHP 扩展
- PDO PHP 扩展
- Tokenizer PHP 扩展
- XML PHP 扩展
- GMP PHP 扩展
- EXIF PHP 扩展
### 安装步骤
1. 解压下载的 zip 文件,获取 `installable.zip`
2. 上传 `installable.zip` 到服务器并解压
3. 删除服务器上的 `installable.zip` 文件
4. 访问网站域名进入安装向导
5. 点击 "Check Requirements" 检查系统要求
6. 按照向导完成数据库配置和管理员账号设置
7. 完成安装
### 升级说明 (1.0 到 1.1)
- 备份数据库和文件
- 上传新版本文件
- 运行数据库迁移
- 清除缓存
### Cron Job 设置
需要设置 Cron Job 来执行计划任务:
```
* * * * * cd /path/to/project && php artisan schedule:run >> /dev/null 2>&1
```
## 亮点特色
1. **小时预订系统** - 独特的按小时预订模式
2. **多供应商架构** - 完整的供应商入驻和订阅管理
3. **地理位置搜索** - 基于半径的酒店搜索
4. **丰富的支付方式** - 支持 19 种支付网关
5. **灵活的订阅模式** - 月度、年度、终身套餐
6. **推广系统** - 供应商可以付费推广
7. **高级搜索筛选** - 多维度搜索和筛选
8. **多语言支持** - 完全多语言和 RTL 支持
9. **拖拽菜单构建器** - 可视化菜单管理
10. **Web 推送通知** - Laravel WebPush 集成
11. **公告弹窗** - 公告弹窗构建器
12. **自动安装器** - 内置图形化安装向导
13. **响应式设计** - 3 个独特模板