feat(M02-D): 完成用户与员工权限管理

This commit is contained in:
Codex
2026-06-18 14:45:01 +08:00
parent 46acb8422a
commit 5a300a82f6
21 changed files with 894 additions and 40 deletions
@@ -0,0 +1,21 @@
# M02-D 用户与员工管理 API
## 新增接口
- `GET /admin-api/users`:分页查询当前租户用户,支持状态和关键词筛选;手机号与最近登录 IP 脱敏。
- `POST /admin-api/staff`:创建员工并分配角色、门店和备注。
- `PATCH /admin-api/users/:id`:更新资料、状态、角色、门店范围和备注。
- `POST /admin-api/users/:id/reset-sessions`:撤销目标用户全部活动会话。
## 权限与数据范围
- 需要 `staff.manage``tenant.manage` 或平台管理员角色。
- 门店管理员只能查看和管理自己授权门店内的员工,不能授予租户级或平台级角色。
- 租户管理员可管理本租户员工,但所有 SQL 仍强制包含 `tenant_id`
- 禁止管理员修改自己的角色、状态和门店范围,避免自锁或提权绕过。
## 会话与审计
- 禁用、角色变化、门店范围变化会提升 `role_version` 并撤销活动会话。
- 重置登录会话会提升 `role_version`,旧 JWT 立即失效。
- 创建、更新和重置会话均写入 `qipai_audit_logs`,记录操作者、资源、traceId 和非敏感变更摘要。