Files
platforms/docs/开发日志_设备分类与厂商映射_20260911.md
czl231 3ef33b531d 已完成用户APP首期功能开发
交付用户端首期页面、配套接口、后台资源及测试文档。用户APP构建、静态分析和三个管理后台构建通过;完整测试仍有2项失败,后端模型注释检查未通过,详见交付记录。
2026-09-13 00:57:32 +08:00

2.0 KiB
Raw Permalink Blame History

设备分类与厂商映射

问题与变更

现有产品档案既包含钢瓶也包含瓶阀原有厂商上行消息使用独立16位设备编号不能靠名称推测归属关系。 新增 product_info.device_kind(未分类、智能阀、报警器、钢瓶)和 vendor_device_id(可为空的厂商编号)。历史记录默认未分类且未关联,不改写现有用户归属。

后台产品新建、编辑与详情加入两项配置。后端写入白名单和校验同时扩展:只有智能阀/报警器允许厂商编号编号必须为16位数字且非全零非空编号由数据库全局唯一索引约束。空编号表示尚未关联不代表设备离线。

文件与验证

  • 模型:backend/api/internal/models/product_info.go
  • 写入校验:backend/api/internal/logic/platform/product/product.godevice_mapping.go
  • 测试:device_mapping_test.go
  • 独立迁移:backend/api/cmd/cli/device_mapping_migration.go,命令 migrate-device-mapping
  • 后台字段:frontend/platform_admin/src/api/resources.ts

产品逻辑、路由、CLI测试通过后台类型与48项资源契约检查通过。 迁移已在原远程配置执行成功只新增两列、注释和唯一索引API已切换到 heqi-device-mapping-api.exe。 浏览器首次检查发现通用字段函数要求在中文名称字典注册即便调用处已有label也不能省略已补齐并验证列表恢复显示“未分类/未关联”。

内置浏览器实际进入新建表单,展开分类选项并选择“智能阀”,确认四项分类及厂商编号输入区可见。此次只检查表单,没有提交新产品或修改已有产品。

尚未完成

此变更只建立明确映射配置,用户“我的设备”页面和遥测读取还未接入,不开放远程控制。未将现有示例产品自动映射到真实厂商编号。配置保存、重复编号及实际设备联调还需继续验证,不能据此宣称设备闭环完成。