Commit 0cd380c59a3d06bc5e5d2f5b27bca590e19c64e9

Authored by xp.Huang
1 parent acee92a1

fix: 修复任务中心,按设备执行,选择多个设备时,其中有设备不允许执行该任务,但实际执行了的BUG

@@ -91,7 +91,19 @@ public class RpcCommandTask { @@ -91,7 +91,19 @@ public class RpcCommandTask {
91 key, 91 key,
92 LocalDateTime.now().toInstant(ZoneOffset.of("+8")).toEpochMilli()); 92 LocalDateTime.now().toInstant(ZoneOffset.of("+8")).toEpochMilli());
93 if (targetType.equals(TargetTypeEnum.DEVICES)) { 93 if (targetType.equals(TargetTypeEnum.DEVICES)) {
  94 + // 过滤取消执行的设备
  95 + Map<String, List<String>> map = targetContent.getCancelExecuteDevices();
  96 + List<String> cancelExecuteDevices = new ArrayList<>();
  97 + if (null != map && !map.isEmpty()) {
  98 + for (String deviceProfileId : map.keySet()) {
  99 + cancelExecuteDevices.addAll(map.get(deviceProfileId));
  100 + }
  101 + }
94 for (String deviceId : data) { 102 for (String deviceId : data) {
  103 + if (!cancelExecuteDevices.isEmpty()
  104 + && cancelExecuteDevices.contains(deviceId)) {
  105 + continue;
  106 + }
95 sendRpcCommand(cmdJsonNode, tenantId, deviceId, securityUser, taskCenterId); 107 sendRpcCommand(cmdJsonNode, tenantId, deviceId, securityUser, taskCenterId);
96 } 108 }
97 } else { 109 } else {