3.8 KiB
3.8 KiB
操作日志:账户角色中文展示与摘要统一
操作时间:2026-08-11 01:47:12
操作类型:修改、扩展
影响模块:平台总后台、气站后台、配送点后台、平台账户接口
操作前状态
- 配送点账户曾实现“配送点管理员”中文展示,但标准资源独立页面改造后退回“角色编码 / admin”。
- 气站登录只允许
admin,平台创建和更新接口却仍接受任意角色编码,可能产生无法登录的账户。 - 气站、配送点和生产商账户没有头像字段或受控头像接口,平台页面仍展示默认头像占位。
- 平台账户编辑下拉使用角色名称,但列表和详情仍可能显示原始角色编码。
具体操作
- 为气站和配送点账户增加资源级固定角色元数据,统一显示“角色”“气站管理员”“配送点管理员”。
- 气站账户创建强制写入
admin,更新不再修改角色;保留旧请求字段用于兼容但不采纳。 - 历史未知角色统一显示为“未知角色(原编码)”,不执行数据库迁移,不自动扩大权限。
- 平台账户列表和详情加载动态角色名称,用角色名称替代裸编码。
- 无真实头像能力的账户隐藏头像列并使用文字摘要;新建页不展示空的唯一标识和创建时间。具备头像接口的工作人员、用户和平台账户保持原功能。
- 气站后台和配送点后台的账户管理弹层同步使用中文只读角色,并停止向账户更新接口提交角色字段。
代码变更
backend/api/internal/logic/platform/gas/account.go:固定气站管理员角色并禁止更新角色。backend/api/internal/logic/platform/gas/account_test.go:验证旧角色字段不能改变管理员角色。frontend/platform_admin/src/api/:增加固定角色、未知角色和动态平台角色显示能力。frontend/platform_admin/src/views/resource/:按真实头像能力切换头像摘要或文字摘要。frontend/gas_admin/src/、frontend/delivery_admin/src/:统一账户角色中文名称和只读行为。frontend/platform_admin/scripts/check-account-role-presentation.mjs:静态检查三套后台的角色与摘要规则。
行为变化
| 场景 | 修改前 | 修改后 |
|---|---|---|
| 配送点账户角色 | “角色编码 / admin” | “角色 / 配送点管理员” |
| 气站账户角色 | 可输入任意编码 | 固定“气站管理员”,后端保存 admin |
| 历史未知角色 | 直接显示裸编码 | 显示“未知角色(原编码)”,不自动修改 |
| 无头像账户 | 显示不可操作默认头像 | 详情、编辑使用文字摘要;新建直接进入表单 |
| 平台账户角色 | 列表和详情可能显示编码 | 使用动态平台角色名称 |
验证结果
- 平台总后台、气站后台、配送点后台 TypeScript 类型检查和生产构建全部通过。
- 三套后台资源契约检查通过;标准资源页面检查通过:详情 46 类、新建 25 类、编辑 23 类。
- 账户角色静态检查通过,确认三套后台中文角色、未知角色和头像摘要规则均已覆盖。
- 后端
go test ./...全量测试通过,包含新增气站管理员角色约束测试。 - 本地浏览器已验证应用可正常进入登录页;数据页视觉回归因当前测试会话未登录而未执行,未使用或提交本地默认密码。
风险评估
- 不迁移历史非
admin记录,避免静默赋予管理员权限;管理员需根据“未知角色”提示单独核查。 - 气站账户从本次变更起无法创建新角色,符合当前登录与菜单仅支持
admin的既有约束。 - 生产商角色模型尚未明确,本次不修改其角色写入规则。
- 本次不新增气站、配送点或生产商头像字段,因此不产生数据库迁移和孤儿上传文件。