docs(spec): 归档 platform-tenant-switch + 同步租户切换主 spec
Some checks failed
CI / backend (push) Has been cancelled
CI / frontend (push) Has been cancelled

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
liuyun 2026-10-12 00:03:21 +08:00
parent d793d34cfc
commit c7a934dd79
10 changed files with 29 additions and 0 deletions

View File

@ -67,3 +67,18 @@
#### Scenario: 改密后清除
- **WHEN** 待改密用户修改密码成功
- **THEN** 其 must_change_password 置为 false
### Requirement: 平台超管租户切换
系统 SHALL 支持平台超管(`super_admin`)切入任意租户:`POST /auth/switch-tenant` 校验调用者为平台超管后签发 `super=true` 的新 token,其 `tenantCode` 为目标租户、`sub` 为超管真实 userId;切换后数据按目标租户过滤、权限按超管绕过。
#### Scenario: 切换租户
- **WHEN** 平台超管请求切入目标租户
- **THEN** 返回新 token(tenantCode=目标租户、super=true)
#### Scenario: 非超管切换被拒
- **WHEN** 非平台超管请求切换租户
- **THEN** 系统返回 403
#### Scenario: 切换后数据隔离
- **WHEN** 切换后的超管查询业务数据
- **THEN** 返回目标租户的数据

View File

@ -85,6 +85,13 @@
- **WHEN** 租户未配置某品牌字段
- **THEN** 该字段回退为默认值(标题回退 name、主题色回退默认主色)
### Requirement: 顶栏租户切换
前端 SHALL 在顶栏为平台超管提供「切换租户」入口:列出全部租户,切换后替换 token、重置菜单/字典/权限等缓存并刷新。
#### Scenario: 切换租户
- **WHEN** 平台超管选择某租户并切换
- **THEN** 前端更新 token、重置缓存,按目标租户渲染菜单与数据
### Requirement: 布局设置持久化
所有布局与主题设置 SHALL 持久化到 localStorage,刷新页面后保持。

View File

@ -115,3 +115,10 @@
#### Scenario: 维护租户品牌
- **WHEN** 管理员新增或编辑租户并填写品牌字段
- **THEN** 品牌字段随 tenant 一并保存与返回
### Requirement: 租户切换接口
系统 SHALL 提供 `POST /auth/switch-tenant`(body 含 tenantCode,仅登录态),由平台超管调用,返回切换后的新 access/refresh token 与目标租户信息。
#### Scenario: 切换租户
- **WHEN** 平台超管请求 POST /auth/switch-tenant
- **THEN** 返回新 token,后续请求按目标租户上下文执行