# 草原指南操作人名称展示规则修正

> 日期：2026-07-14
>
> 后端 Issue：[HL #4983](https://git.1814.love:8443/wx/HL/issues/4983)
>
> 发布范围：先合入 `dev`，再同步 `dev-v3` 并部署 TEST；当前不合入 `main`、不部署正式环境

## 1. 变更内容

草原指南操作记录分页接口的路径、请求参数和响应结构均不变，仅修正 `operatorName` 的取值规则：

```http
GET /admin/grassland-guide/videos/{videoId}/operation-logs?page=1&pageSize=20
```

- 新产生的操作记录：优先保存当前管理员的企业微信姓名；未绑定企业微信或姓名为空时，保存管理员用户名。
- 历史记录已有非空 `operatorName`：继续展示原快照，不随管理员后续改名而变化。
- 历史记录的 `operatorName` 为空：后端按当前页涉及的管理员 ID 一次批量解析，企业微信姓名优先、用户名兜底。
- 管理员资料已不存在或用户服务暂时不可用时，才降级显示 `管理员#ID`；系统操作显示 `系统`。

## 2. 前端处理

- 前端无需新增字段、无需修改请求，也不要自行根据 `operatorId` 拼接名称。
- 继续直接展示接口返回的 `operatorName`。
- 部署后重新请求操作记录列表即可看到修正后的历史空名称；无需清理前端缓存。
- `operatorId` 仍按字符串处理，不能转为 JavaScript `Number`。

## 3. 兼容性说明

- 不修改数据库结构，不回填或覆盖已有操作人名称快照。
- 历史空快照的名称解析按页批量执行，不产生逐条查询。
- 用户服务查询异常不会导致操作记录分页接口失败。
- 本文件只说明操作人名称展示规则，不与操作记录分页、素材上传或视频播放变更合并记录。

## 4. TEST 验证状态

- 后端 PR [#4984](https://git.1814.love:8443/wx/HL/pulls/4984) 已合入 `dev`；同步 PR [#4985](https://git.1814.love:8443/wx/HL/pulls/4985) 已合入 `dev-v3`。
- TEST 部署任务 `60db35f4` 成功，`hl-resource-service` 的 `8082/8182` 双实例均在 Nacos 中健康并启用。
- `dev-v3` 合并态资源服务回归 1666 项通过，网关草原指南定向测试 21 项通过，均为 0 失败、0 错误。
- 未绑定企微的测试管理员新建、编辑和删除临时草稿时，`operatorName` 正确回退用户名。
- 已绑定企微的测试管理员新建临时草稿时，接口响应和数据库 `operator_name` 快照均为企业微信姓名；临时草稿已删除。
- 真实历史空快照已通过网关分页接口验证：当前目录有企业微信姓名时返回该姓名，不再返回 `管理员#ID`。
- 以上均为后端接口与数据证据；前端只需继续展示 `operatorName`，无需等待页面联调才能使用。
