Commit 40b7e60e22daa1177bdef80c9b7377c5294fb34b
1 parent
ddb1b303
refactor: 场景联动启用时,刷新全部设备映射的设备信息
1、刷新触发器映射的设备信息 2、刷新执行条件映射的设备信息 3、刷新动作映射的设备信息
Showing
1 changed file
with
17 additions
and
1 deletions
... | ... | @@ -468,7 +468,23 @@ public class SceneLinkageServiceImpl extends AbstractBaseService<SceneLinkageMap |
468 | 468 | for(DeviceDTO item:organizationDevices){ |
469 | 469 | devices.add(item.getTbDeviceId()); |
470 | 470 | } |
471 | - deviceSceneMap(maps, devices,scene.getId() ); | |
471 | + String sceneId = scene.getId(); | |
472 | + List<Trigger> triggers = triggerMapper.selectList(new QueryWrapper<Trigger>().lambda().eq(Trigger::getSceneLinkageId,sceneId)); | |
473 | + triggers.forEach(item ->{ | |
474 | + item.setEntityId(devices); | |
475 | + triggerMapper.updateById(item); | |
476 | + }); | |
477 | + List<DoCondition> conditions = doConditionMapper.selectList(new QueryWrapper<DoCondition>().lambda().eq(DoCondition::getSceneLinkageId,sceneId)); | |
478 | + conditions.forEach(item ->{ | |
479 | + item.setEntityId(devices); | |
480 | + doConditionMapper.updateById(item); | |
481 | + }); | |
482 | + List<DoAction> actions = doActionMapper.selectList(new QueryWrapper<DoAction>().lambda().eq(DoAction::getSceneLinkageId,sceneId)); | |
483 | + actions.forEach(item ->{ | |
484 | + item.setDeviceId(devices); | |
485 | + doActionMapper.updateById(item); | |
486 | + }); | |
487 | + deviceSceneMap(maps, devices, sceneId); | |
472 | 488 | } |
473 | 489 | |
474 | 490 | ... | ... |