Commit 94780ebcf3478eb85e733c3f39fa603fbe0236c1

Authored by YunaiV
1 parent 27a0aca5

fix:【iot】IotDeviceEventPostTriggerMatcher 应该使用 params 判断,而不是 data

yudao-module-iot/yudao-module-iot-biz/src/main/java/cn/iocoder/yudao/module/iot/service/rule/scene/matcher/trigger/IotDeviceEventPostTriggerMatcher.java
@@ -48,13 +48,13 @@ public class IotDeviceEventPostTriggerMatcher implements IotSceneRuleTriggerMatc @@ -48,13 +48,13 @@ public class IotDeviceEventPostTriggerMatcher implements IotSceneRuleTriggerMatc
48 // 2. 对于事件触发器,通常不需要检查操作符和值,只要事件发生即匹配 48 // 2. 对于事件触发器,通常不需要检查操作符和值,只要事件发生即匹配
49 // 但如果配置了操作符和值,则需要进行条件匹配 49 // 但如果配置了操作符和值,则需要进行条件匹配
50 if (StrUtil.isNotBlank(trigger.getOperator()) && StrUtil.isNotBlank(trigger.getValue())) { 50 if (StrUtil.isNotBlank(trigger.getOperator()) && StrUtil.isNotBlank(trigger.getValue())) {
51 - Object eventData = message.getData();  
52 - if (eventData == null) {  
53 - IotSceneRuleMatcherHelper.logTriggerMatchFailure(message, trigger, "消息中事件数据为空"); 51 + Object eventParams = message.getParams();
  52 + if (eventParams == null) {
  53 + IotSceneRuleMatcherHelper.logTriggerMatchFailure(message, trigger, "消息中事件参数为空");
54 return false; 54 return false;
55 } 55 }
56 56
57 - boolean matched = IotSceneRuleMatcherHelper.evaluateCondition(eventData, trigger.getOperator(), trigger.getValue()); 57 + boolean matched = IotSceneRuleMatcherHelper.evaluateCondition(eventParams, trigger.getOperator(), trigger.getValue());
58 if (!matched) { 58 if (!matched) {
59 IotSceneRuleMatcherHelper.logTriggerMatchFailure(message, trigger, "事件数据条件不匹配"); 59 IotSceneRuleMatcherHelper.logTriggerMatchFailure(message, trigger, "事件数据条件不匹配");
60 return false; 60 return false;