fa4127b9e5
Reviewed-on: #128
1.6 KiB
1.6 KiB
POST /admin/api/users/{user_id}/status — 封禁/解封用户
所属:Admin·用户 组(前缀
/admin/api/users) | 鉴权:Bearer admin_token(角色:operator,super_admin恒通过) | ← 返回 API 索引
入参
- 路径:
user_id(int) - application/json:
字段 类型 必填 说明 statusstring ✓ 目标状态,枚举 active(解封)/disabled(封禁);注销deleted不走此接口
出参
响应 200:OkResponse = { "ok": true }
错误码
400已注销账号不可改状态(目标用户当前status == deleted,detail: "已注销账号不可改状态")401未带/无效/过期 admin token、管理员被禁用(头带WWW-Authenticate: Bearer)403角色不足(需operator或super_admin)404用户不存在(detail: "用户不存在")422status非active/disabled枚举 / 缺字段 /user_id非整数
说明
- 业务写(改用户状态)与审计写在同一事务原子提交:改了就有痕、有痕就真改了。
- 写操作记审计 admin_audit_log:
action = user.status.set,target_type = user,target_id = user_id,detail = {before, after},并记录操作 IP。 - 关联用户表 user。
POST /admin/api/users/{user_id}/debug-trace — 开关调试链接权限
- body:
{"enabled": true|false}→ 写user.debug_trace_enabled(带审计action=user.debug_trace.set)。 - 开了的用户在比价完成弹窗 + 比价记录页可见「复制调试链接」按钮(trace_url);运营按用户灰度排障用。鉴权同本组(operator)。