# 生产商地址受控展示操作日志 操作时间:2026-08-13 01:34:48 操作类型:修改 影响模块:平台总后台生产商管理、平台管理 API ## 操作前状态 生产商新建和编辑表单会将地址保存到 `producer_account.address`,但生产商列表与详情复用通用资源查询。通用敏感字段保护会删除响应中的 `address`,导致列表统一显示 `-`,编辑页面也无法取得已保存地址。 ## 具体操作 1. 将生产商列表与详情改为专用查询处理器。 2. 保留通用敏感字段保护,并在保护完成后仅对生产商管理资源恢复本记录的企业地址。 3. 将生产商地址空值文案配置为“未填写”,地址仍保持可选。 4. 新增列表、详情和空地址三个单元测试。 ## 操作后状态 - 已填写地址:生产商列表、详情和编辑页面可取得并展示企业地址。 - 未填写地址:接口保留空字符串,管理页面显示“未填写”。 - 其他资源和公共响应:继续执行原有全局敏感字段保护,不放宽地址保护规则。 ## 代码变更 - `backend/api/internal/logic/platform/product/producer.go` - 修改 `ListProducerAccount`。 - 修改 `GetProducerAccount`。 - 新增 `restoreProducerAccountAddresses`。 - `backend/api/internal/logic/platform/product/producer_test.go` - 新增生产商地址恢复及空值边界测试。 - `frontend/platform_admin/src/api/resources.ts` - 为生产商地址配置“未填写”空值文案。 ## 验证结果 - `go test ./internal/logic/platform/product`:通过。 - `npm.cmd run build`:通过,Vue 类型检查与 Vite 生产构建成功。 - `git diff --check`:通过。 ## 风险评估 - 影响范围仅限已鉴权的平台生产商管理接口。 - 没有数据库结构、公共接口或写入规则变更,兼容已有生产商数据。 - 地址恢复依赖查询结果与响应数组顺序一致;单元测试已覆盖多记录顺序映射。