适配气站工作人员与用户受保护头像

This commit is contained in:
czl231
2026-08-18 20:28:01 +08:00
parent 084eccc3ec
commit fd2a2b38e3
11 changed files with 228 additions and 49 deletions

View File

@@ -0,0 +1,49 @@
# 气站工作人员头像适配操作日志
操作时间2026-08-18
操作类型:扩展
影响模块:气站管理端账户记录页、气站 API 工作人员与用户头像
## 操作前状态
- 5175 工作人员新建页把头像显示为普通文本输入框。
- 气站 API 没有工作人员和用户的受保护头像读取路由。
- 编辑工作人员或用户资料时,未提交头像也可能把已有头像清空。
## 具体操作
- 复用 5173 的账户摘要组件和头像组合式逻辑,在新建、详情、编辑页显示头像选择与预览。
- 启用工作人员与用户列表的受保护头像缩略图,替代头像存储路径文本。
- 从基础信息表单移除头像文本输入框,保存时仅在选择新头像或恢复默认头像后提交头像字段。
- 新增工作人员、用户头像读取路由,查询始终附加当前气站或服务关系范围。
- 将更新请求的头像字段改为可选指针,未修改头像时不更新数据库列。
## 操作后状态
- `/staff/add` 顶部显示账户摘要与头像选择区,布局和交互参考 5173。
- 工作人员与用户列表显示 32 像素圆形头像;无头像或加载失败时回退默认头像。
- 工作人员与用户的详情、编辑页可安全读取现有头像。
- 普通资料编辑不会误清空头像;主动恢复默认头像仍会提交空值。
## 代码变更
- `frontend/gas_admin/src/views/resource/ResourceRecordPage.vue`:启用头像摘要、过滤文本字段、接入上传载荷与未保存检测。
- `frontend/gas_admin/src/api/avatar.ts`:使用气站 API 前缀读取受保护头像。
- `frontend/gas_admin/src/views/shared/protected-list-avatar-loader.ts`:开放工作人员与用户缩略图渲染。
- `backend/api/internal/logic/gas/staff.go``user.go`:新增范围受限头像读取并保护头像更新语义。
- `backend/api/internal/routers/gas_business.go``gas_test.go`:注册并校验头像路由。
## 验证结果
- `go test ./internal/routers ./internal/logic/gas`:通过。
- `pnpm type:check`:通过。
- `pnpm contract:check`通过20 个资源一致。
- `pnpm resource-pages:check`:通过,详情 20、新建 11、编辑 8。
- `pnpm lint`:通过,无错误;保留仓库既有提示。
- `pnpm build`:通过。
## 风险评估
- 新头像接口只读取数据库中受控上传目录的文件,不暴露外部 URL 或任意文件路径。
- 工作人员头像按 `gas_basic_id` 限制,用户头像按当前气站服务关系限制,未扩大数据范围。
- 合同附件能力未变更,避免气站端调用不存在的平台专属接口。

View File

@@ -23,7 +23,7 @@
- 20 类标准资源具有独立详情页。
- 11 类资源具有独立新建页8 类资源具有独立编辑页。
- `/staff/add``/gasorder/create` 原地址继续可用。
- 头像和合同文件字段保持 5175 原能力不访问平台专属端点。
- 初次改造时头像和合同文件字段保持 5175 原能力2026-08-18 已按 5173 补齐气站范围内头像能力,合同文件仍不访问平台专属端点。
## 代码变更

View File

@@ -62,7 +62,7 @@ platforms/
- 保留配送点、工作人员、用户、合同、订单、钱包和工单的数据范围。
- 保留密码重置、合同启用/续签/终止、合同气瓶解绑和气站订单动作。
- 工作人员资质按来源角色校验;订单分配只加载配送人员。
- 头像和 `file_uri` 继续作为普通字段,不调用平台总后台专属的受控头像或合同附件接口
- 工作人员和用户头像使用 5173 同款账户摘要、选择预览和保存流程,并通过气站数据范围内的受控接口读取;`file_uri` 仍保持普通字段
- 支付与退款资源使用后端真实名称 `payment_order``payment_refund`
### 4.4 只读详情接口
@@ -75,6 +75,7 @@ platforms/
- 列表的新建、详情和编辑入口改为路由跳转。
- 新增 11 类受数据范围保护的详情接口及路由测试。
- 同步气站资源契约和独立页面覆盖检查。
- 为工作人员与用户补充受气站范围保护的头像读取接口,并避免普通资料编辑误清空头像。
- 未修改数据库模型、状态机、金额规则或现有写接口。
## 6. 维护指南
@@ -87,6 +88,6 @@ platforms/
## 7. 已知边界
- 气站 API 暂无受控头像读取和合同附件预览接口,因此对应字段保持原普通文本能力。
- 气站 API 暂无合同附件预览接口,因此 `file_uri`保持原普通文本能力。
- 财务对账模型没有气站主体归属字段,气站端仍不展示全局对账数据。
- 两个共享页面文件超过 500 行,但按列表编排与记录页编排保持单一职责;后续若继续增加气站专属区块,应优先拆分组合式函数或子组件。