docs: 添加PRD产品设计文档

- 创建GYM-PRD-001产品设计文档
- 包含产品概述、功能需求、非功能需求
- 包含用户故事、验收标准、项目里程碑
- 包含风险应对和成功标准

文档结构:
- 产品概述: 背景、目标、目标用户
- 功能需求: 9大模块详细功能描述
- 非功能需求: 性能、可用性、安全性等
- 用户故事: 会员端和管理端用户故事
- 项目里程碑: 4个阶段交付计划
- 风险与应对: 主要风险识别和应对措施
- 成功标准: 5个维度的量化指标
This commit is contained in:
张翔
2026-02-28 17:07:04 +08:00
parent e89f5f1f7f
commit 2f1f83ee72
+773
View File
@@ -0,0 +1,773 @@
# 健身房管理系统产品设计文档(PRD)
> 文档编号: GYM-PRD-001
> 版本: v1.0
> 日期: 2026-02-28
> 作者: 张翔
> 状态: 初稿
---
## 文档修订历史
| 版本 | 日期 | 作者 | 修订内容 |
|------|------|------|---------|
| v1.0 | 2026-02-28 | 张翔 | 初稿 |
---
## 一、产品概述
### 1.1 产品背景
随着健身行业数字化转型的加速,传统健身房面临着会员管理效率低、预约流程繁琐、数据统计困难等痛点。本系统旨在为综合型健身俱乐部、精品工作室、连锁品牌提供全场景的数字化管理平台,实现:
- 会员端:一站式查看个人所有信息,便捷预约签到
- 管理后台:全维度数据整理与分析,支撑运营决策
- 多业态支持:灵活适配不同规模和类型的健身场所
### 1.2 产品目标
| 目标维度 | 目标描述 | 成功指标 |
|---------|---------|---------|
| 用户体验 | 提升会员预约和签到体验 | 预约成功率 ≥ 95%,签到耗时 ≤ 3秒 |
| 运营效率 | 降低人工操作成本 | 人工处理时间减少 50% |
| 数据价值 | 提供数据驱动决策支持 | 数据报表使用率 ≥ 80% |
| 系统稳定 | 保证高可用性 | SLA ≥ 99.9% |
### 1.3 目标用户
| 用户角色 | 用户画像 | 核心需求 |
|---------|---------|---------|
| **会员** | 25-45岁健身爱好者,追求健康生活方式 | 便捷预约、快速签到、查看个人信息、追踪健身进度 |
| **教练** | 专业健身教练,需要管理课程和学员 | 课程排期、学员签到、课时统计、评价管理 |
| **前台** | 门店前台人员,负责日常接待 | 会员接待、签到辅助、会员信息查询 |
| **店长** | 门店管理者,负责门店运营 | 单店全功能管理、数据查看、员工管理 |
| **运营管理员** | 平台运营人员,负责营销和数据分析 | 营销活动配置、数据分析、报表生成 |
| **财务专员** | 财务人员,负责账务管理 | 账单管理、财务报表、对账处理 |
| **超级管理员** | 平台最高权限管理者 | 全平台管理、系统配置、权限管理 |
---
## 二、功能需求
### 2.1 会员管理
#### 2.1.1 会员注册与信息管理
**用户故事**: 作为新用户,我可以通过手机号注册成为会员,以便开始使用系统
**功能描述**:
- 支持手机号+验证码注册
- 支持微信一键登录
- 会员信息完善(姓名、性别、生日、头像等)
- 会员信息查询和修改
- 会员状态管理(正常、冻结、注销)
**验收标准**:
- 注册流程在30秒内完成
- 验证码60秒内到达
- 支持手机号脱敏显示
- 敏感信息(手机号、身份证)加密存储
#### 2.1.2 会员卡管理
**用户故事**: 作为会员,我可以购买和管理会员卡,以便享受相应的权益
**功能描述**:
- 会员卡类型管理(时长卡、次卡、储值卡、等级卡)
- 会员卡购买流程
- 会员卡信息查询
- 会员卡激活/冻结/注销
- 会员卡转让(可选)
**验收标准**:
- 支持多种支付方式(微信、支付宝、银行卡)
- 会员卡购买成功后立即生效
- 支持会员卡有效期提醒
- 支持会员卡使用记录查询
#### 2.1.3 权益管理
**用户故事**: 作为会员,我可以查看我的权益余额和使用情况,以便合理安排健身计划
**功能描述**:
- 权益类型管理(时长、次数、储值、等级)
- 权益余额查询
- 权益使用记录
- 权益到期提醒
- 权益扣减和充值
**验收标准**:
- 权益余额实时更新
- 支持权益到期前3天提醒
- 权益扣减记录可追溯
- 支持权益转让(可选)
#### 2.1.4 等级管理
**用户故事**: 作为会员,我可以查看我的等级和积分,以便了解我的会员权益
**功能描述**:
- 会员等级体系定义
- 等级升级规则
- 等级权益配置
- 积分获取规则
- 积分兑换规则
**验收标准**:
- 等级升级自动触发
- 等级权益清晰展示
- 积分获取和使用记录可查询
- 支持等级权益差异化
### 2.2 预约管理
#### 2.2.1 团课预约
**用户故事**: 作为会员,我可以预约团课,以便参加我感兴趣的课程
**功能描述**:
- 团课列表展示(按时间、类型、教练筛选)
- 团课详情查看
- 团课预约
- 预约取消
- 预约提醒
**验收标准**:
- 支持提前7天预约
- 支持课程开始前2小时取消
- 预约成功后立即发送通知
- 支持预约冲突检测
#### 2.2.2 私教预约
**用户故事**: 作为会员,我可以预约私教课程,以便获得一对一指导
**功能描述**:
- 教练列表展示
- 教练详情查看
- 教练可预约时段查询
- 私教课程预约
- 预约取消
**验收标准**:
- 支持查看教练排班
- 支持选择预约时间段
- 支持预约备注
- 支持教练确认机制
#### 2.2.3 场地预约
**用户故事**: 作为会员,我可以预约场地,以便自主训练
**功能描述**:
- 场地列表展示
- 场地详情查看
- 场地可用时段查询
- 场地预约
- 预约取消
**验收标准**:
- 支持场地类型筛选
- 支持查看场地实时占用情况
- 支持预约时长限制
- 支持预约超时自动释放
#### 2.2.4 线上课程预约
**用户故事**: 作为会员,我可以预约线上课程,以便在家锻炼
**功能描述**:
- 线上课程列表展示
- 课程详情查看
- 课程预约
- 课程回放
- 课程评价
**验收标准**:
- 支持课程分类浏览
- 支持课程搜索
- 支持课程收藏
- 支持课程进度追踪
### 2.3 签到管理
#### 2.3.1 扫码签到
**用户故事**: 作为会员,我可以通过扫码快速签到,以便节省时间
**功能描述**:
- 生成会员二维码
- 扫码签到
- 签到验证
- 签到记录查询
**验收标准**:
- 二维码有效期5分钟
- 签到响应时间 ≤ 2秒
- 支持重复签到检测
- 签到成功后发送通知
#### 2.3.2 人脸识别签到
**用户故事**: 作为会员,我可以通过人脸识别自动签到,以便实现无感入场
**功能描述**:
- 人脸信息采集
- 人脸特征存储
- 人脸识别签到
- 签到记录查询
**验收标准**:
- 人脸识别准确率 ≥ 99%
- 识别响应时间 ≤ 1秒
- 支持人脸信息更新
- 支持多人同时识别
#### 2.3.3 NFC签到
**用户故事**: 作为会员,我可以通过NFC快速签到,以便便捷入场
**功能描述**:
- NFC卡绑定
- NFC签到
- 签到验证
- 签到记录查询
**验收标准**:
- 支持ISO 14443 Type A/B标准
- 签到响应时间 ≤ 1秒
- 支持NFC卡挂失
- 支持NFC卡解绑
#### 2.3.4 教练代签
**用户故事**: 作为教练,我可以为会员代签,以便处理特殊情况
**功能描述**:
- 教练登录验证
- 选择会员
- 代签操作
- 代签记录查询
**验收标准**:
- 支持按手机号搜索会员
- 支持代签备注
- 代签记录可追溯
- 支持代签权限控制
### 2.4 课程管理
#### 2.4.1 课程类型管理
**用户故事**: 作为运营管理员,我可以管理课程类型,以便分类展示课程
**功能描述**:
- 课程类型增删改查
- 课程类型排序
- 课程类型图标
- 课程类型描述
**验收标准**:
- 支持多级分类
- 支持课程类型启用/禁用
- 支持课程类型搜索
- 支持课程类型统计
#### 2.4.2 课程排期
**用户故事**: 作为教练,我可以管理课程排期,以便安排我的教学计划
**功能描述**:
- 课程排期创建
- 课程排期修改
- 课程排期删除
- 课程排期查询
**验收标准**:
- 支持按周/月视图查看
- 支持拖拽调整排期
- 支持排期冲突检测
- 支持排期复制
#### 2.4.3 场地管理
**用户故事**: 作为店长,我可以管理场地信息,以便合理分配资源
**功能描述**:
- 场地信息增删改查
- 场地容量设置
- 场地设备管理
- 场地状态管理
**验收标准**:
- 支持场地图片上传
- 支持场地设备清单
- 支持场地维护状态
- 支持场地使用统计
#### 2.4.4 价格配置
**用户故事**: 作为运营管理员,我可以配置课程价格,以便灵活定价
**功能描述**:
- 课程价格设置
- 会员卡价格设置
- 折扣规则配置
- 价格生效时间
**验收标准**:
- 支持多种价格类型
- 支持会员等级折扣
- 支持促销活动价格
- 支持价格历史查询
### 2.5 教练管理
#### 2.5.1 教练信息管理
**用户故事**: 作为店长,我可以管理教练信息,以便展示教练资料
**功能描述**:
- 教练信息增删改查
- 教练资质管理
- 教练照片上传
- 教练简介编辑
**验收标准**:
- 支持教练资质证书上传
- 支持教练擅长领域标注
- 支持教练评价展示
- 支持教练排序
#### 2.5.2 排班管理
**用户故事**: 作为教练,我可以管理我的排班,以便安排工作时间
**功能描述**:
- 排班创建
- 排班修改
- 排班删除
- 排班查询
**验收标准**:
- 支持按日/周/月视图
- 支持设置可预约时段
- 支持设置休息日
- 支持排班模板
#### 2.5.3 课时统计
**用户故事**: 作为教练,我可以查看我的课时统计,以便了解工作量
**功能描述**:
- 课时统计查询
- 课时明细查看
- 课时趋势分析
- 课时报表导出
**验收标准**:
- 支持按时间段统计
- 支持按课程类型统计
- 支持课时收入统计
- 支持数据可视化
#### 2.5.4 评价管理
**用户故事**: 作为会员,我可以对教练进行评价,以便提供反馈
**功能描述**:
- 评价提交
- 评价查看
- 评价回复
- 评价统计
**验收标准**:
- 支持星级评价
- 支持文字评价
- 支持评价图片
- 支持评价匿名
### 2.6 财务管理
#### 2.6.1 营收统计
**用户故事**: 作为财务专员,我可以查看营收统计,以便了解经营状况
**功能描述**:
- 营收数据统计
- 营收趋势分析
- 营收对比分析
- 营收报表导出
**验收标准**:
- 支持按日/周/月统计
- 支持按门店统计
- 支持按业务类型统计
- 支持数据可视化
#### 2.6.2 账单管理
**用户故事**: 作为会员,我可以查看我的账单,以便了解消费情况
**功能描述**:
- 账单列表查询
- 账单详情查看
- 账单筛选
- 账单导出
**验收标准**:
- 支持按时间筛选
- 支持按类型筛选
- 支持账单详情查看
- 支持账单PDF导出
#### 2.6.3 退款管理
**用户故事**: 作为运营管理员,我可以处理退款申请,以便提升用户满意度
**功能描述**:
- 退款申请查看
- 退款审核
- 退款处理
- 退款记录查询
**验收标准**:
- 支持退款原因分类
- 支持退款审核流程
- 支持退款状态跟踪
- 支持退款统计
#### 2.6.4 对账管理
**用户故事**: 作为财务专员,我可以进行对账操作,以便确保账务准确
**功能描述**:
- 对账数据导入
- 对账差异分析
- 对账确认
- 对账报表
**验收标准**:
- 支持多渠道对账
- 支持自动对账
- 支持差异标记
- 支持对账记录
### 2.7 计划中心
#### 2.7.1 训练计划
**用户故事**: 作为会员,我可以制定训练计划,以便科学健身
**功能描述**:
- 训练计划创建
- 训练计划编辑
- 训练计划执行
- 训练计划分享
**验收标准**:
- 支持模板选择
- 支持自定义计划
- 支持计划执行记录
- 支持计划进度追踪
#### 2.7.2 课程排期
**用户故事**: 作为运营管理员,我可以管理课程排期,以便合理安排课程
**功能描述**:
- 课程排期查看
- 课程排期调整
- 课程排期冲突检测
- 课程排期导出
**验收标准**:
- 支持多维度视图
- 支持批量调整
- 支持排期提醒
- 支持排期统计
#### 2.7.3 会员目标
**用户故事**: 作为会员,我可以设置健身目标,以便激励自己
**功能描述**:
- 目标设置
- 目标进度追踪
- 目标达成提醒
- 目标历史记录
**验收标准**:
- 支持多种目标类型
- 支持目标周期设置
- 支持目标可视化
- 支持目标分享
#### 2.7.4 教练排班
**用户故事**: 作为店长,我可以管理教练排班,以便合理安排人力
**功能描述**:
- 教练排班查看
- 教练排班调整
- 教练排班统计
- 教练排班导出
**验收标准**:
- 支持按门店查看
- 支持按教练查看
- 支持排班冲突检测
- 支持排班优化建议
### 2.8 数据分析
#### 2.8.1 会员分析
**用户故事**: 作为运营管理员,我可以查看会员分析,以便了解会员情况
**功能描述**:
- 会员增长分析
- 会员活跃度分析
- 会员留存分析
- 会员画像分析
**验收标准**:
- 支持多维度分析
- 支持趋势图表
- 支持数据钻取
- 支持报表导出
#### 2.8.2 课程分析
**用户故事**: 作为运营管理员,我可以查看课程分析,以便优化课程安排
**功能描述**:
- 课程预约分析
- 课程签到分析
- 课程评价分析
- 课程收益分析
**验收标准**:
- 支持按课程类型分析
- 支持按时间段分析
- 支持数据对比
- 支持优化建议
#### 2.8.3 财务分析
**用户故事**: 作为财务专员,我可以查看财务分析,以便了解财务状况
**功能描述**:
- 收入分析
- 支出分析
- 利润分析
- 现金流分析
**验收标准**:
- 支持多维度分析
- 支持预算对比
- 支持预测分析
- 支持风险预警
#### 2.8.4 运营分析
**用户故事**: 作为运营管理员,我可以查看运营分析,以便优化运营策略
**功能描述**:
- 整体运营指标
- 门店运营对比
- 员工绩效分析
- 营销效果分析
**验收标准**:
- 支持实时数据
- 支持自定义指标
- 支持数据预警
- 支持决策建议
### 2.9 系统管理
#### 2.9.1 租户管理
**用户故事**: 作为超级管理员,我可以管理租户,以便支持多租户架构
**功能描述**:
- 租户信息增删改查
- 租户配置管理
- 租户状态管理
- 租户数据隔离
**验收标准**:
- 支持租户独立配置
- 支持租户数据隔离
- 支持租户计费
- 支持租户监控
#### 2.9.2 门店管理
**用户故事**: 作为超级管理员,我可以管理门店,以便支持多门店运营
**功能描述**:
- 门店信息增删改查
- 门店配置管理
- 门店状态管理
- 门店数据统计
**验收标准**:
- 支持门店图片上传
- 支持门店地址定位
- 支持门店营业时间设置
- 支持门店数据隔离
#### 2.9.3 权限管理
**用户故事**: 作为超级管理员,我可以管理权限,以便控制用户访问
**功能描述**:
- 角色管理
- 权限管理
- 用户角色分配
- 权限审计
**验收标准**:
- 支持RBAC模型
- 支持权限继承
- 支持权限审计
- 支持权限测试
#### 2.9.4 系统配置
**用户故事**: 作为超级管理员,我可以配置系统参数,以便灵活调整系统行为
**功能描述**:
- 系统参数配置
- 业务规则配置
- 接口配置
- 日志配置
**验收标准**:
- 支持参数分类管理
- 支持参数生效时间
- 支持参数变更记录
- 支持参数导出
---
## 三、非功能需求
### 3.1 性能需求
| 指标 | 要求 | 说明 |
|-------|------|------|
| 响应时间 | API响应时间 ≤ 500ms | 95%的请求 |
| 并发能力 | 支持1000 QPS | 热门课程抢课场景 |
| 数据库查询 | 单次查询 ≤ 100ms | 索引优化 |
| 页面加载 | 首屏加载 ≤ 2秒 | 3G网络环境 |
### 3.2 可用性需求
| 指标 | 要求 | 说明 |
|-------|------|------|
| 系统可用性 | SLA ≥ 99.9% | 年度停机时间 ≤ 8.76小时 |
| 故障恢复 | RTO ≤ 30分钟 | 恢复时间目标 |
| 数据备份 | 每日备份 | 保留30天 |
| 容灾能力 | 支持异地容灾 | RPO ≤ 1小时 |
### 3.3 安全性需求
| 指标 | 要求 | 说明 |
|-------|------|------|
| 数据加密 | 敏感数据加密存储 | AES-256 |
| 传输加密 | HTTPS加密传输 | TLS 1.2+ |
| 认证安全 | JWT Token认证 | 有效期2小时 |
| 权限控制 | RBAC权限模型 | 最小权限原则 |
| 审计日志 | 操作日志记录 | 保留90天 |
### 3.4 可扩展性需求
| 指标 | 要求 | 说明 |
|-------|------|------|
| 水平扩展 | 支持应用集群部署 | 无状态设计 |
| 数据库扩展 | 支持读写分离 | 主从复制 |
| 缓存扩展 | 支持Redis集群 | 分布式缓存 |
| 存储扩展 | 支持OSS对象存储 | 海量文件存储 |
### 3.5 可维护性需求
| 指标 | 要求 | 说明 |
|-------|------|------|
| 代码规范 | 遵循编码规范 | SonarQube检查 |
| 文档完善 | 代码注释率 ≥ 30% | 关键逻辑注释 |
| 日志规范 | 统一日志格式 | ELK日志分析 |
| 监控告警 | 实时监控 | Prometheus+Grafana |
---
## 四、用户故事与验收标准
### 4.1 会员端用户故事
| 用户故事 | 优先级 | 验收标准 |
|---------|-------|---------|
| 作为新用户,我可以通过手机号注册成为会员 | P0 | 注册流程在30秒内完成,验证码60秒内到达 |
| 作为会员,我可以购买会员卡 | P0 | 支持多种支付方式,购买成功后立即生效 |
| 作为会员,我可以预约团课 | P0 | 支持提前7天预约,预约成功后立即发送通知 |
| 作为会员,我可以通过扫码签到 | P0 | 二维码有效期5分钟,签到响应时间 ≤ 2秒 |
| 作为会员,我可以查看我的权益余额 | P1 | 权益余额实时更新,支持到期前3天提醒 |
| 作为会员,我可以设置健身目标 | P2 | 支持多种目标类型,支持目标可视化 |
### 4.2 管理端用户故事
| 用户故事 | 优先级 | 验收标准 |
|---------|-------|---------|
| 作为店长,我可以查看门店数据 | P0 | 支持实时数据查看,支持数据导出 |
| 作为教练,我可以管理课程排期 | P0 | 支持按周/月视图,支持拖拽调整 |
| 作为运营管理员,我可以配置课程价格 | P0 | 支持多种价格类型,支持会员等级折扣 |
| 作为财务专员,我可以查看营收统计 | P1 | 支持按日/周/月统计,支持数据可视化 |
| 作为超级管理员,我可以管理租户 | P1 | 支持租户独立配置,支持租户数据隔离 |
---
## 五、项目里程碑
| 阶段 | 时间 | 交付内容 |
|------|------|---------|
| 第一阶段 | 2026-03-01 ~ 2026-03-31 | 会员管理、预约管理、签到管理核心功能 |
| 第二阶段 | 2026-04-01 ~ 2026-04-30 | 课程管理、教练管理、财务管理 |
| 第三阶段 | 2026-05-01 ~ 2026-05-31 | 计划中心、数据分析、系统管理 |
| 第四阶段 | 2026-06-01 ~ 2026-06-30 | 系统优化、性能调优、上线部署 |
---
## 六、风险与应对
| 风险 | 影响 | 概率 | 应对措施 |
|------|------|------|---------|
| 需求变更频繁 | 高 | 中 | 采用敏捷开发,快速迭代 |
| 技术选型不当 | 高 | 低 | 充分调研,POC验证 |
| 性能不达标 | 中 | 中 | 提前性能测试,优化瓶颈 |
| 安全漏洞 | 高 | 低 | 安全审计,渗透测试 |
| 人员流动 | 中 | 中 | 知识沉淀,文档完善 |
---
## 七、成功标准
| 维度 | 指标 | 目标值 |
|------|------|-------|
| 功能完整性 | 需求覆盖率 | ≥ 95% |
| 用户体验 | 用户满意度 | ≥ 4.5/5.0 |
| 系统性能 | 响应时间 | ≤ 500ms |
| 系统稳定性 | SLA | ≥ 99.9% |
| 代码质量 | 代码覆盖率 | ≥ 80% |
---
## 八、参考文档
- 《健身房管理系统概要设计文档》 GYM-HLD-001
- 《健身房管理系统详细设计文档》 GYM-LLD-001/002/003
- Spring Boot 3 官方文档
- PostgreSQL 官方文档