|
@@ -21,6 +21,12 @@ import com.persagy.apm.alarmservice.project.alarmruleobjrel.service.IProjectAlar
|
|
|
import com.persagy.apm.common.constant.enums.ValidEnum;
|
|
|
import com.persagy.apm.common.context.AppContext;
|
|
|
import com.persagy.apm.common.model.dto.Sort;
|
|
|
+import com.persagy.apm.energyalarmstarter.alarmdata.feign.DmpResult;
|
|
|
+import com.persagy.apm.energyalarmstarter.alarmdata.model.dto.alarmconfig.BatchDeleteAlarmConfigDTO;
|
|
|
+import com.persagy.apm.energyalarmstarter.alarmdata.model.dto.alarmconfig.DeleteAlarmConfigDTO;
|
|
|
+import com.persagy.apm.energyalarmstarter.alarmdata.model.dto.alarmconfig.QueryAlarmConfigDTO;
|
|
|
+import com.persagy.apm.energyalarmstarter.alarmdata.model.vo.AlarmConfigItem;
|
|
|
+import com.persagy.apm.energyalarmstarter.alarmdata.service.AlarmConfigServiceImpl;
|
|
|
import org.apache.commons.lang.StringUtils;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Service;
|
|
@@ -44,6 +50,8 @@ public class ProjectAlarmRuleObjRelServiceImpl extends ServiceImpl<ProjectAlarmR
|
|
|
@Autowired
|
|
|
private IProjectAlarmRuleService projectAlarmRuleService;
|
|
|
|
|
|
+ @Autowired
|
|
|
+ AlarmConfigServiceImpl alarmConfigService;
|
|
|
|
|
|
@Autowired
|
|
|
GroupManagementService groupManagementService;
|
|
@@ -264,11 +272,51 @@ public class ProjectAlarmRuleObjRelServiceImpl extends ServiceImpl<ProjectAlarmR
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
- public void updateBatch(ShieldManageListDTO shieldManageListDTO) {
|
|
|
+ public void updateBatch(ShieldManageListDTO shieldManageListDTO) throws Exception {
|
|
|
List<ShieldManageDTO> shieldManageDTOList = shieldManageListDTO.getShieldManageDTOList();
|
|
|
String projectAlarmRuleId = shieldManageListDTO.getProjectAlarmRuleId();
|
|
|
String projectId = shieldManageListDTO.getProjectId();
|
|
|
projectAlarmRuleObjRelMapper.updateStatus(shieldManageDTOList,projectAlarmRuleId,projectId);
|
|
|
+
|
|
|
+ //删除设备报警条件 begin
|
|
|
+ BatchDeleteAlarmConfigDTO batchDeleteAlarmConfigDTO = new BatchDeleteAlarmConfigDTO();
|
|
|
+ List<DeleteAlarmConfigDTO> alarmConfigs = new ArrayList<>();
|
|
|
+ String condition = shieldManageListDTO.getCondition();
|
|
|
+ String classCode = shieldManageListDTO.getClassCode();
|
|
|
+ //查询所有设备
|
|
|
+ List<EquipItem> equips = this.getAllEquip(classCode, condition);
|
|
|
+ List<String> objIds = equips.stream().map(EquipItem::getId).collect(Collectors.toList());
|
|
|
+ QueryAlarmConfigDTO queryAlarmConfigDTO = new QueryAlarmConfigDTO();
|
|
|
+ queryAlarmConfigDTO.setObjId(objIds);
|
|
|
+ DmpResult<List<AlarmConfigItem>> query = alarmConfigService.query(queryAlarmConfigDTO);
|
|
|
+ //所有设备条件
|
|
|
+ List<AlarmConfigItem> data = query.getData();
|
|
|
+ //组织删除参数
|
|
|
+ if(data.size()>0){
|
|
|
+ data.forEach(alarmConfigItem -> {
|
|
|
+ DeleteAlarmConfigDTO deleteAlarmConfigDTO = new DeleteAlarmConfigDTO();
|
|
|
+ deleteAlarmConfigDTO.setId(alarmConfigItem.getId());
|
|
|
+ alarmConfigs.add(deleteAlarmConfigDTO);
|
|
|
+ });
|
|
|
+ batchDeleteAlarmConfigDTO.setAlarmConfigs(alarmConfigs);
|
|
|
+ alarmConfigService.batchDelete(batchDeleteAlarmConfigDTO);
|
|
|
+ }
|
|
|
+ //删除设备报警条件 end
|
|
|
+ }
|
|
|
+
|
|
|
+ public List<EquipItem> getAllEquip(String classCode,String condition){
|
|
|
+ //查询所有项目
|
|
|
+ List<ProjectVO> projects = projectAlarmRuleService.getProject();
|
|
|
+ List<EquipItem> records = new ArrayList<>();
|
|
|
+ for (ProjectVO project : projects) {
|
|
|
+ QueryEquipDTO queryEquipDTO = new QueryEquipDTO();
|
|
|
+ queryEquipDTO.setProjectId(project.getProjectId());
|
|
|
+ queryEquipDTO.setClassCode(classCode);
|
|
|
+ queryEquipDTO.setCondition(condition);
|
|
|
+ List<EquipItem> record = groupManagementService.getEquipList(queryEquipDTO);
|
|
|
+ records.addAll(record);
|
|
|
+ }
|
|
|
+ return records;
|
|
|
}
|
|
|
|
|
|
@Override
|