Files
thebet365/docs/UAT_CHECKLIST.md
Mars 567ec9ec8a feat: 管理端 RBAC 权限体系与员工管理
新增多角色权限控制(赛事/财务/客服管理员),支持员工 CRUD、路由菜单按权限显隐、审计日志范围过滤;登录返回角色与权限列表。玩家端赛事列表增加静默刷新避免图片闪烁。Seed 补充演示员工账号与充值相关权限。附带 RBAC/审计范围单元测试及 UAT 文档更新。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-15 17:52:39 +08:00

69 lines
3.5 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# UAT 测试与上线准备
## 测试账号
| 角色 | 用户名 | 密码 | 说明 |
|------|--------|------|------|
| 超级管理员 | admin | Admin@123 | 平台后台 |
| 赛事管理员 | matchadmin | MatchAdmin@123 | 赛事/结算/内容,无账务权限 |
| 财务管理员 | financeadmin | FinanceAdmin@123 | 上分/下分/额度/返水/充值 |
| 客服查询员 | support1 | Support@123 | 只读查询 + 重置玩家密码 |
| 一级代理 | agent1 | Agent@123 | 管理后台 :5174 登录,授信 100000 |
| 二级代理 | agent2 | Agent@123 | 隶属 agent1无独立前端 |
| 测试玩家 | player1 | Player@123 | 初始余额 1000 |
## MVP 验收清单18 项)
玩法与串关规则参考:[投注玩法说明.md](./投注玩法说明.md)。
- [ ] 玩家可登录、改密码、切换语言
- [ ] 代理可创建直属玩家
- [ ] 代理可给直属玩家上分/下分
- [ ] 代理额度正确扣减和释放
- [ ] 后台可创建比赛和盘口
- [ ] 后台可批量录入波胆赔率
- [ ] 前台可展示赛事和盘口
- [ ] 玩家可单关下注
- [ ] 玩家可 2-5 串 1
- [ ] ~~同场串关被禁止~~v1 产品决定:允许同场串关,跳过)
- [ ] 四分之一盘口不能进入串关
- [ ] 开赛自动封盘
- [ ] 后台可录入比分并生成预览
- [ ] 确认结算后钱包正确变化
- [ ] 玩家可查看注单和账变
- [ ] 玩家可查看返水明细,且与账单「反水」入账金额一致
- [ ] 后台可生成并发放返水
- [ ] Banner/公告/走马灯可配置
- [ ] 所有关键操作有日志
- [ ] 平台后台「自动化测试」运行所选套件,全部通过(约 50 条用例,含逐步 input/expected/actual 明细)
## 回归测试流程
1. 运行单元测试:`pnpm --filter @thebet365/api test`(规则类用例,不含 DB 全链路)
2. 或平台后台 → **自动化测试** → 选择套件(含「下注结算链路」)→ **运行测试**
3. 代理上分 → 玩家下注 → 封盘 → 录入比分 → 预览 → 确认结算
4. 验证钱包余额与代理额度变化
5. 测试串关限制(四分之一球、冠军竞猜;同场串关按 v1 允许)
6. 测试返水批次生成与确认
7. 返水对账:后台发放后,玩家「账单-反水」入账金额 =「返水明细」对应批次金额;账变详情可跳转返水明细
## 三角色 RBACSEC010SEC012
- [ ] **SEC010** 使用 `support1` 登录:菜单仅显示查询相关项;玩家页可查看/重置密码,无上分/下分/创建按钮;调用 `POST /admin/wallet/deposit` 返回 403
- [ ] **SEC011** 使用 `financeadmin` 登录:无赛事/结算/内容菜单;可对玩家上分、调整代理额度;调用 `POST /admin/matches` 等赛事写接口返回 403
- [ ] **SEC012** 使用 `matchadmin` 登录:有赛事/结算/内容;无上分/额度/返水确认;调用 `POST /admin/wallet/deposit` 返回 403
- [ ] 自动化:`pnpm --filter @thebet365/api exec jest admin-rbac.spec.ts --runInBand` 通过
## 备份与回滚
- PostgreSQL每日 `pg_dump` 备份(脚本:`scripts/backup-db.ps1`
- 回滚:恢复备份 + 回退部署版本
- 结算错误:使用重结算冲正流程,禁止直接改余额
## 后台操作培训要点
1. 赛事创建:联赛 → 球队 → 比赛 → 生成盘口模板 → 录入赔率 → 发布
2. 结算:录入半场/全场比分 → 生成预览 → 核对派彩 → 确认
3. 代理管理:授信额度 → 监控占用 → 负数时禁止继续放款
4. 返水:选择周期 → 预览 → 财务确认 → 发放