# 酒店民宿短租预订平台开发需求文档

## 一、项目概述

本项目旨在打造集酒店、民宿、短租、青旅预订于一体的综合性小程序平台，对标美团、携程、飞猪等主流平台功能，为C端用户提供便捷的住宿预订服务，为B端商家提供高效的店铺数字化管理工具，同时为平台运营者提供全链路的管理后台。平台将构建小程序端、商家管理后台、平台管理后台三大终端，通过前后端分离架构实现数据互通，满足不同角色的核心使用需求。

## 二、系统架构与技术栈

### （一）系统架构

平台采用“前端多终端+后端微服务”的分布式架构，前端负责用户交互与界面渲染，后端负责业务逻辑处理、数据存储与接口提供，各终端通过RESTful API与后端服务进行数据交互，保障系统的可扩展性与稳定性。

### （二）技术栈选型

| 终端类型     | 技术栈组合                                  | 选型说明                                                                    |
| ------------ | ------------------------------------------- | --------------------------------------------------------------------------- |
| 小程序端     | uni-app + Vue3 + SCSS                       | 一套代码多端运行，支持微信、支付宝、百度等主流小程序平台，提升开发效率      |
| 商家管理后台 | React 18 + TypeScript + Ant Design + 自适应 | 强类型语言保障代码质量，UI组件库快速构建企业级管理界面                      |
| 平台管理后台 | React 18 + TypeScript + Ant Design + 自适应 | 与商家后台技术栈统一，降低团队学习成本，便于跨端功能复用                    |
| 后端服务     | NestJS + MySQL + Redis + RabbitMQ           | Node.js企业级框架，搭配关系型数据库与缓存中间件，保障高并发场景下的系统性能 |
| 基础设施     | Docker + Kubernetes + Nginx                 | 容器化部署与编排，实现服务的弹性伸缩与负载均衡，提升系统可用性              |

### （三）skills

- 建立项目skills
  - 数据库skills
  - 模块需求skills

## 三、功能需求

### （一）小程序端

小程序端分为C端用户与B端商家双角色体系，通过角色权限控制实现功能隔离。

#### 1. C端用户角色

##### （1）用户认证模块

**登录模式区分**：

系统根据运行环境自动选择登录方式，微信小程序模式与非小程序模式采用不同的认证流程。

**A. 微信小程序模式**

- **登录方式**：仅支持微信授权登录（wx.login + wx.getUserProfile）
- **登录流程**：
  1. 用户首次进入小程序，自动调用微信授权接口
  2. 获取微信用户信息（昵称、头像、openid、unionid）
  3. 后端根据openid查询用户是否存在
  4. 若不存在则自动创建用户账号（无需手动注册）
  5. 返回JWT令牌，完成登录
- **特点**：
  - 无需传统的手机号注册流程
  - 无需设置登录密码
  - 用户无感知，一键授权即可使用
  - 后续可在个人中心绑定手机号（用于接收订单通知）
- **账号管理**：手机号绑定/解绑、实名认证入口、账号注销功能

**B. 非小程序模式（H5/APP/Web）**

- **登录方式**：支持手机号验证码登录、账号密码登录、第三方授权登录（微信开放平台、支付宝）
- **注册流程**：
  1. 手机号验证（发送验证码）
  2. 设置登录密码
  3. 完善个人信息（昵称、头像，可选）
  4. 支持一键跳过快速体验
- **登录流程**：
  1. 输入手机号+验证码 或 手机号+密码
  2. 后端验证通过后返回JWT令牌
  3. 完成登录
- **账号管理**：第三方账号绑定/解绑、密码修改、实名认证入口、账号注销功能

**C. 技术实现要点**

- **环境判断**：前端通过 `uni.getSystemInfoSync()` 判断运行环境（mp-weixin、h5、app）
- **接口设计**：
  - 微信小程序登录接口：`POST /api/auth/wechat-login`（参数：code, encryptedData, iv）
  - 手机号登录接口：`POST /api/auth/phone-login`（参数：phone, code/password）
  - 注册接口：`POST /api/auth/register`（参数：phone, password, code）
- **账号互通**：微信小程序用户后续绑定手机号后，可在非小程序模式下使用手机号登录同一账号
- **数据关联**：用户表需存储 openid、unionid、phone、password 等字段，支持多种登录方式关联到同一账号

##### （2）订房首页模块

- **智能搜索**：支持目的地模糊搜索、拼音首字母匹配，实时展示搜索联想词；集成地图选点功能，支持按位置半径筛选房源
- **多维筛选**：提供价格区间、房型类型、星级标准、设施服务（免费停车、早餐、WiFi等）、品牌筛选等12类筛选条件，支持自定义筛选组合
- **房源展示**：列表模式（图片、名称、价格、评分、距离、标签）与地图模式（位置标记、价格气泡）自由切换；房源卡片支持视频预览、VR看房入口
- **个性化推荐**：基于用户浏览历史、预订记录、地理位置，通过协同过滤算法推荐相似房源；展示热门目的地榜单、特价秒杀专区、新品首发板块
- **活动营销**：顶部轮播图展示平台大促活动，首页固定位置展示用户专属优惠券、会员专享价信息

##### （3）订单管理模块

- **订单分类**：待支付、待确认、待入住、已入住、已完成、已取消、退款中7种订单状态，支持按状态、时间范围筛选
- **订单详情**：展示房源信息、入住离店时间、价格明细（房费、服务费、优惠券抵扣）、支付方式、联系人信息；支持订单修改（仅限未确认状态）、取消、申请退款操作
- **消息提醒**：通过小程序模板消息、短信双渠道推送订单状态变更通知，包括预订成功、确认入住、离店提醒、退款到账等场景

##### （4）个人中心模块

- **基础信息**：头像、昵称、手机号展示与修改，支持昵称一键同步微信/支付宝账号
- **收藏管理**：收藏房源列表，支持批量取消收藏、一键对比收藏房源功能
- **评价管理**：已发布评价列表，支持查看商家回复、追评功能；待评价订单提醒入口
- **优惠券中心**：展示可用、已过期、已使用优惠券，支持优惠券分享、转赠功能
- **会员体系**：会员等级、成长值、积分展示，会员权益说明，积分兑换商城入口
- **商家入驻**：提供“我要开店”入口，引导用户提交商家入驻申请，支持申请进度查询
- **系统设置**：消息通知开关、隐私设置、清除缓存、关于我们、意见反馈

#### 2. B端商家角色

##### （1）商家认证模块

- **登录方式**：手机号验证码登录、账号密码登录
- **入驻流程**：提交营业执照→填写店铺信息→上传资质证明→平台审核→缴纳保证金→开通店铺
- **店铺设置**：店铺名称、Logo、营业时间、联系电话、地址信息修改，店铺公告发布

##### （2）订单管理模块

- **订单列表**：展示店铺全量订单，支持按订单状态、时间范围、客人姓名、订单号筛选；支持订单导出Excel功能
- **订单操作**：待确认订单支持确认/拒绝操作，待入住订单支持发送入住提醒，已完成订单支持催评
- **自动接单配置**：可设置接单时间范围、订单金额阈值、房型限制条件，开启后符合规则的订单自动确认；支持异常订单自动拒绝功能

##### （3）房源管理模块

- **房价房量日历**：以日历视图展示每日房价、房量、房态信息，支持按房型切换查看；支持单日/多日房价房量快速调整
- **批量操作**：批量修改房价（按日期范围、房型设置价格调整幅度）、批量修改房态房量（一键设置可售/不可售状态）
- **产品管理**：房源产品添加/编辑/删除，支持房型名称、面积、床型、设施、最多入住人数、价格等信息配置；支持房源图片批量上传、排序
- **房态日志**：记录所有房态、房价、房量变更操作，包括操作人、操作时间、变更内容，支持按时间范围查询与导出

##### （4）促销推广模块

- **促销活动**：创建满减、折扣、优惠券、套餐优惠等促销活动，设置活动时间、参与房型、优惠力度、限购数量；支持活动暂停/恢复/删除
- **权益中心**：配置免费升房（设置升房条件、可升级房型）、无忧取消（设置取消政策、退款比例）等权益，支持按订单类型开启/关闭

##### （5）评价管理模块

- **评价列表**：展示用户对店铺的评价内容，包括评分、文字评价、图片/视频评价；支持按评价时间、评分星级筛选
- **评价操作**：对用户评价进行回复，支持批量回复模板设置；支持差评预警提醒，及时处理负面反馈

##### （6）财务管理模块

- **财务概览**：展示店铺总收入、待结算金额、已结算金额、可提现余额；提供近7日/30日收入趋势图表
- **对账管理**：预付对账（预付订单结算明细）、现付对账（现付订单收款明细）、应付对账（供应商结算明细），支持按时间范围导出对账报表
- **发票管理**：发票申请、开具、查询功能，支持电子发票自动推送；展示发票开具进度、历史记录
- **收款记录**：记录所有收款信息，包括收款时间、金额、支付方式、订单关联；支持按支付方式筛选
- **涉税信息**：纳税人识别号、税务登记证号、开户行信息填写与保存，支持信息修改与验证
- **钱包管理**：账户余额展示、提现申请（设置提现金额、到账账户）、提现记录查询；支持账户充值功能

### （二）商家管理后台

商家管理后台与小程序端商家角色功能对齐，提供更强大的批量操作能力与数据统计分析功能。

#### 1. 订单管理模块

- **高级筛选**：支持按订单来源（小程序、官网、第三方渠道）、支付方式、客人手机号筛选订单
- **数据统计**：订单数量、销售额、入住率等核心指标统计，按日/周/月维度生成报表
- **批量操作**：批量确认订单、批量发送消息、批量导出订单数据

#### 2. 房源管理模块

- **批量导入**：支持通过Excel模板批量导入房源信息、房价房量数据，提升批量上架效率
- **房源分析**：展示各房型的预订量、销售额、入住率数据，为定价策略提供数据支撑
- **库存预警**：房量低于设置阈值时自动提醒，避免超售情况发生

#### 3. 促销推广模块

- **活动效果分析**：展示促销活动的参与人数、订单数量、销售额、优惠金额等数据，生成ROI分析报表
- **权益使用统计**：统计免费升房、无忧取消等权益的使用次数、用户占比，优化权益配置策略

#### 4. 评价管理模块

- **评价数据分析**：好评率、平均评分、评价关键词云图，帮助商家了解用户关注点
- **差评处理追踪**：记录差评处理进度、处理结果，形成闭环管理

#### 5. 财务管理模块

- **财务报表**：生成月度/季度/年度财务报表，包括收入报表、支出报表、利润报表
- **结算提醒**：待结算金额达到设置阈值时自动提醒商家申请结算
- **税务申报辅助**：提供涉税数据统计，辅助商家进行税务申报

### （三）平台管理后台

平台管理后台为运营者提供全平台的管理与监控能力。

#### 1. 订单管理模块

- **全量订单视图**：展示平台所有订单，支持按商家、用户、订单状态、时间范围筛选
- **订单干预**：对异常订单进行人工干预，包括修改订单信息、强制取消订单、处理退款申请
- **订单统计**：平台订单总量、销售额、转化率、平均客单价等核心指标统计，按日/周/月/年生成趋势图表

#### 2. 商家管理模块

- **商家列表**：展示所有商家信息，包括商家名称、店铺状态、入驻时间、销售额、评分；支持按商家类型、地区、状态筛选
- **商家操作**：商家入驻审核（通过/拒绝）、店铺冻结/解冻、保证金管理、权限配置
- **商家统计**：商家数量、入驻率、活跃度、流失率统计，按地区、行业维度分析商家分布

#### 3. 用户管理模块

- **用户列表**：展示所有用户信息，包括用户ID、昵称、手机号、注册时间、消费金额、会员等级；支持按用户类型、注册渠道、消费能力筛选
- **用户操作**：用户账号冻结/解冻、重置密码、发送系统消息
- **用户分析**：用户增长趋势、留存率、消费频次、消费偏好分析，为运营策略提供数据支撑

#### 4. 财务管理模块

- **平台财务概览**：展示平台总收入、总支出、平台佣金、利润等核心指标，生成财务健康度报表
- **提现管理**：处理商家提现申请，审核提现信息，支持批量审核与批量打款；可设置不同商家等级的提现费率
- **财务配置**：设置平台佣金比例、提现手续费、保证金标准等财务参数
- **资金监控**：实时监控平台资金流向，异常资金变动自动预警

#### 5. 推广管理模块

- **平台活动管理**：创建平台级促销活动，设置活动规则、参与商家、优惠力度；支持活动预热、上线、下线全流程管理
- **广告管理**：平台广告位配置、广告内容审核、广告投放监控；展示广告曝光量、点击量、转化率数据
- **渠道管理**：第三方合作渠道配置，设置渠道佣金比例、结算规则；监控渠道订单数据与质量

## 四、非功能需求

### （一）性能需求

1. **响应时间**：小程序页面加载时间≤2秒，接口响应时间≤800毫秒，95%以上请求在1秒内完成
2. **并发能力**：支持≥50000用户同时在线，峰值订单处理能力≥5000笔/分钟
3. **数据存储**：支持≥1000万条订单数据、≥50万条商家数据、≥1亿条用户数据的存储与快速查询
4. **缓存策略**：高频访问数据（房源列表、用户信息）缓存过期时间≥15分钟，热点数据实时更新

### （二）安全需求

1. **数据加密**：用户敏感信息（手机号、身份证号）采用AES-256加密存储，支付数据采用RSA加密传输
2. **身份认证**：采用JWT令牌认证，令牌有效期2小时，支持令牌刷新机制；重要操作需二次验证
3. **权限控制**：基于RBAC权限模型，实现用户-角色-权限的精细化控制，防止越权操作
4. **日志审计**：记录所有系统操作日志，包括操作人、操作时间、操作内容，日志保存时间≥6个月
5. **安全防护**：集成WAF防火墙、DDoS防护、SQL注入防护，保障系统安全稳定
