2995840376
4c2d92571e
feat(K): 规则保存时校验动作参数必须用物模型 code, 禁止 dpId
背景: 规则动作 params 的 key 会被原样当作涂鸦 code 下发(dp_id 从不参与下发), 历史测试数据里出现过 switch_1 与 1 混用, 导致下发失败或指令相互矛盾, 且保存时无任何校验。
后端: 新增 RuleActionValidator, createRule/updateRule 前校验动作参数 key 必须命中 product_property.code; 命中 dp_id 时直接提示应改用的 code; 同步校验值域(bool 取值、数值 min/max 区间、enum 候选值); 目标设备不存在、无产品物模型等场景给出明确业务错误。
前端: 后台规则表单补齐执行动作编辑(JSON), 提交前本地解析校验, 原本表单不提交 actions 导致新建规则必然失败。
Android: 物模型不可用时的回退路径改为优先使用涂鸦 code(反射读取), 避免提交 dpId 被后端拒绝。
V24: scene_run 表不存在时容错跳过, 便于在未执行 V16 的旧结构库上整段执行。
2026-10-28 00:52:04 +08:00
..
2026-10-27 12:00:41 +08:00
2026-10-27 12:00:41 +08:00
2026-10-27 12:00:41 +08:00
2026-10-27 12:00:41 +08:00
2026-10-27 12:00:41 +08:00
2026-10-27 12:00:41 +08:00
2026-10-27 12:00:41 +08:00
2026-10-27 12:00:41 +08:00
2026-10-27 12:00:41 +08:00
2026-10-27 12:00:41 +08:00
2026-10-27 12:00:41 +08:00
2026-10-27 12:00:41 +08:00
2026-10-27 12:00:41 +08:00
2026-10-27 12:00:41 +08:00
2026-10-27 12:00:41 +08:00
2026-10-27 12:00:41 +08:00
2026-10-27 12:00:41 +08:00
2026-10-27 12:00:41 +08:00
2026-10-27 12:00:41 +08:00
2026-10-27 12:00:41 +08:00
2026-10-27 12:00:41 +08:00
2026-10-27 12:00:41 +08:00
2026-10-27 12:00:41 +08:00
2026-10-27 12:00:41 +08:00
2026-10-27 12:00:41 +08:00
2026-10-27 13:49:15 +08:00
2026-10-27 19:12:13 +08:00
2026-10-28 00:52:04 +08:00