refactor(A): 产品/物模型/设备三层架构重构 - 地基批次
新增:
- iot-common/PlatformType: 平台维度单一真相源(枚举)
统一 tuya/matter/local/xiaomi/huawei/dueros/alexa/google_home,
提供 legacy 别名归一(miot|mi -> xiaomi)与已知性判定
- backend/sql/V22__product_device_arch_refactor.sql: 幂等迁移(153行)
A. platform_type 平台字典表 + 种子数据(后台可维护)
B. product 加 protocol 列; platform_product_id 空串清洗为 NULL;
清洗 model/manufacturer 被涂鸦 productId 污染的历史脏数据;
加 (platform, platform_product_id, deleted) 唯一约束
C. product_property 加 grp/is_primary/enum_label + (product_id,code) 唯一约束
D. product_event/product_action 加 (product_id,code) 唯一约束;
product_action 加 completion_mode
E. device 加 product_id 索引(OTA 物化目标设备此前全表扫); platform 归一
改造:
- DeviceAdapter 新增 platform() 显式声明平台
- DeviceAdapterManager 改为按 platform() 精确匹配,
移除'类名是否包含平台字符串'的脆弱约定(类名与平台码不同名会静默降级)
- DevicePlatform 委托 PlatformType, 消除第四套平台取值域
验证: mvn -pl iot-common,iot-device -am compile 通过