优化智能气阀生产商关联展示

智能气阀列表改为显示生产商名称,并提供生产商唯一标识复制入口;无关联数据时显示‘未填写’。修复未来 Mock 数据生成时缺少生产商关联的问题,但不执行 Mock、迁移或 SQL,不修改当前数据库及历史数据。补充种子测试、操作日志和项目文档。
This commit is contained in:
czl231
2026-08-13 19:43:40 +08:00
parent 2252a9c2a0
commit 278488c5d5
5 changed files with 135 additions and 23 deletions

View File

@@ -0,0 +1,43 @@
# 智能气阀生产商关联展示操作日志
操作时间2026-08-13
操作类型:修改
影响模块:平台总后台智能气阀管理、开发 Mock 数据
## 操作前状态
智能气阀列表直接显示 `producer_account_identity`,列标题为“生产商唯一标识”。无关联时显示 `-`;有关联时只显示唯一标识,无法快速识别生产商名称。未来 Mock 数据生成时也没有为智能气阀设置生产商关联。
## 具体操作
1. 列标题改为“生产商”。
2. 有关联时显示生产商名称,并提供复制生产商唯一标识的按钮。
3. 无关联时显示“未填写”。
4. 新建、编辑继续要求选择有效生产商。
5. 调整未来 Mock 数据生成顺序,先创建生产商,再关联智能气阀。
6. 不回填、不修改当前数据库中的历史记录。
## 操作后状态
- 智能气阀列表以业务名称识别生产商,并可复制稳定 identity。
- 历史空关联记录明确显示“未填写”。
- 未来新生成的 Mock 智能气阀具有有效生产商关联。
- 当前数据库结构和数据保持不变。
## 代码变更
- `frontend/platform_admin/src/api/resources.ts`:配置生产商关联名称、复制和空值展示。
- `backend/api/internal/seed/mock.go`:未来 Mock 智能气阀关联生产商。
- `backend/api/internal/seed/mock_test.go`:新增 Mock 生产商关联测试。
## 验证结果
- `go test ./internal/seed ./internal/logic/platform/product`:通过。
- `npm.cmd run resource-pages:check`:通过,详情 46 类、新建 25 类、编辑 23 类。
- `npm.cmd run build`通过TypeScript 检查与 Vite 生产构建成功。
- `git diff --check`:通过。
- 未执行 Mock、迁移或 SQL 命令,当前数据库数据未修改。
## 风险评估
当前历史空关联数据不会被自动补写仍需在业务需要时通过正常编辑流程选择生产商。Mock 调整仅影响未来显式执行的数据生成。

View File

@@ -0,0 +1,37 @@
# 项目文档:智能气阀生产商关联展示 v1.0
## 1. 项目概述
本次修改将智能气阀列表中的生产商关联从内部唯一标识展示升级为“生产商名称 + 唯一标识复制”,并为历史空关联提供“未填写”提示。数据库不做任何修改。
## 2. 目录结构说明
```text
platforms/
├── backend/api/internal/seed/
│ ├── mock.go # 未来 Mock 智能气阀生产商关联
│ └── mock_test.go # Mock 关联规则测试
├── frontend/platform_admin/src/api/
│ └── resources.ts # 生产商关联展示配置
└── docs/
├── 项目文档_智能气阀生产商关联展示_v1.0.md
└── 操作日志_智能气阀生产商关联展示_20260813.md
```
## 3. 核心文件说明
- `resources.ts`:生产商字段使用现有关联名称组件,列表显示名称并复制 identity空值显示“未填写”。
- `mock.go`:生产商先落库,再将其数据库 ID 写入未来生成的 `ProductInfo.ProducerAccountID`
- `mock_test.go`:验证有效生产商可建立关联,未落库生产商会被拒绝。
## 4. 变更记录
- 列标题改为“生产商”。
- 有关联时显示名称及复制入口。
- 无关联时显示“未填写”。
- 修复未来 Mock 数据缺少生产商关联的问题。
- 不执行数据库迁移或历史数据回填。
## 5. 维护指南
生产商关系必须通过 `producer_account_identity` 输入,并由后端解析为数据库内部 ID。前端不得直接提交内部 ID。未来新增关联名称展示时应复用 `RelationNameText`,保持名称识别与 identity 复制能力一致。