Browse Source

修改项目报警相关

xujiaheng 3 years ago
parent
commit
f3e4308070

+ 2 - 0
src/main/java/com/persagy/apm/alarmservice/group/alarmrule/service/IGroupAlarmRuleService.java

@@ -83,4 +83,6 @@ public interface IGroupAlarmRuleService  {
     List<EquipItem> getAllEquip(String classCode, String condition);
 
     List<GroupAlarmRule> getExistAlarmItem(String groupId);
+
+    void deleteEquipCondition(String condition, String classCode, String alarmItemCode) throws Exception;
 }

+ 0 - 1
src/main/java/com/persagy/apm/alarmservice/group/alarmrule/service/impl/GroupAlarmRuleServiceImpl.java

@@ -376,7 +376,6 @@ public class GroupAlarmRuleServiceImpl extends ServiceImpl<GroupAlarmRuleMapper,
         //删除设备报警条件 begin
         BatchDeleteAlarmConfigDTO batchDeleteAlarmConfigDTO = new BatchDeleteAlarmConfigDTO();
         List<DeleteAlarmConfigDTO> alarmConfigs = new ArrayList<>();
-
         //查询所有设备
         List<EquipItem> equips = this.getAllEquip(classCode, condition);
         List<String> objIds = equips.stream().map(EquipItem::getId).collect(Collectors.toList());

+ 1 - 1
src/main/java/com/persagy/apm/alarmservice/project/alarmcondition/controller/AlarmConditionController.java

@@ -111,7 +111,7 @@ public class AlarmConditionController {
     //    return ResultHelper.multi(pagedResultList);
     //}
 
-    @ApiOperation(value = "集团报警规则详情")
+    @ApiOperation(value = "查询集团报警规则")
     @PostMapping("/getCondition")
     public CommonResult<AlarmConditionItemVO> getCondition(
             @Valid @RequestBody GetGroupAlarmRuleDTO getGroupAlarmRuleDTO) {

+ 4 - 0
src/main/java/com/persagy/apm/alarmservice/project/alarmcondition/service/IAlarmConditionService.java

@@ -77,6 +77,10 @@ public interface IAlarmConditionService  {
 
     CommonResult<Boolean> validate(ValidateAlarmConditionDTO formulaString);
 
+    void saveCondition(AlarmCondition alarmCondition);
+
+    Map<String, Object> swtichAlarmCondition(AddAlarmConditionDTO addAlarmConditionDTO);
+
     Map<String, Object> frontend2Backend(List<List<CalculateMethodDTO>> frontend);
 
     void updateById(Map<String, Object> conditionMap, UpdateAlarmConditionDTO alarmCondition);

+ 28 - 0
src/main/java/com/persagy/apm/alarmservice/project/alarmcondition/service/impl/AlarmConditionServiceImpl.java

@@ -64,6 +64,34 @@ public class AlarmConditionServiceImpl extends ServiceImpl<AlarmConditionMapper,
         return stringMap;
     }
 
+    @Override
+    public void saveCondition(AlarmCondition alarmCondition){
+        save(alarmCondition);
+    }
+
+    /**
+     * 转换报警条件
+     *
+     * @return 报警条件主键
+     * @author lixing
+     * @version V1.0 2021-09-08 22:30:38
+     */
+    @Override
+    public Map<String, Object> swtichAlarmCondition(AddAlarmConditionDTO addAlarmConditionDTO) {
+        AlarmCondition alarmCondition = ConvertAlarmConditionTool.INSTANCE.convertAddDto2Entity(addAlarmConditionDTO);
+        List<List<CalculateMethodDTO>> frontend = addAlarmConditionDTO.getFrontend();
+        alarmCondition.setFrontend(frontend);
+        //将前端公式转换成后台公式
+        Map<String, Object> stringMap = frontend2Backend(frontend);
+        alarmCondition.setBackend((String) stringMap.get("backend"));
+        alarmCondition.setInfoCodes((List<String>) stringMap.get("infoCode"));
+        // 设置默认值
+        setDefaultValue(alarmCondition);
+        stringMap.put("alarmCondition",alarmCondition);
+        stringMap.put("id", alarmCondition.getId());
+        return stringMap;
+    }
+
     public Map<String, Object> frontend2Backend(List<List<CalculateMethodDTO>> frontend) {
         StringBuffer allNotNull = new StringBuffer();
         StringBuffer allNull = new StringBuffer();

+ 123 - 69
src/main/java/com/persagy/apm/alarmservice/project/alarmrule/service/impl/ProjectAlarmRuleServiceImpl.java

@@ -1,5 +1,6 @@
 package com.persagy.apm.alarmservice.project.alarmrule.service.impl;
 
+import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONArray;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
@@ -8,6 +9,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.persagy.apm.alarmservice.common.util.DataUtils;
 import com.persagy.apm.alarmservice.group.alarmrule.model.GroupAlarmRule;
 import com.persagy.apm.alarmservice.group.alarmrule.model.dto.AddGroupAlarmRuleDTO;
+import com.persagy.apm.alarmservice.group.alarmrule.model.dto.GetGroupAlarmRuleDTO;
 import com.persagy.apm.alarmservice.group.alarmrule.model.dto.QueryGroupAlarmRuleDTO;
 import com.persagy.apm.alarmservice.group.alarmrule.service.IGroupAlarmRuleService;
 import com.persagy.apm.alarmservice.group.management.model.equip.dto.QueryEquipDTO;
@@ -16,6 +18,8 @@ import com.persagy.apm.alarmservice.group.management.model.equip.vo.EquipListIte
 import com.persagy.apm.alarmservice.group.management.service.impl.GroupManagementServiceImpl;
 import com.persagy.apm.alarmservice.project.alarmcondition.model.ConvertAlarmConditionTool;
 import com.persagy.apm.alarmservice.project.alarmcondition.model.dto.AddAlarmConditionDTO;
+import com.persagy.apm.alarmservice.project.alarmcondition.model.dto.QueryAlarmConditionDTO;
+import com.persagy.apm.alarmservice.project.alarmcondition.model.dto.UpdateAlarmConditionDTO;
 import com.persagy.apm.alarmservice.project.alarmcondition.service.IAlarmConditionService;
 import com.persagy.apm.alarmservice.project.alarmrule.dao.ProjectAlarmRuleMapper;
 import com.persagy.apm.alarmservice.project.alarmrule.model.ConvertProjectAlarmRuleTool;
@@ -34,6 +38,7 @@ import com.persagy.apm.common.constant.enums.ValidEnum;
 import com.persagy.apm.common.context.AppContext;
 import com.persagy.apm.common.context.poems.PoemsContext;
 import com.persagy.apm.energyalarmstarter.alarmdata.feign.DmpResult;
+import com.persagy.apm.energyalarmstarter.alarmdata.model.dto.AlarmEffectTime;
 import com.persagy.apm.energyalarmstarter.alarmdata.model.dto.alarmconfig.*;
 import com.persagy.apm.energyalarmstarter.alarmdata.model.vo.AlarmConfigItem;
 import com.persagy.apm.energyalarmstarter.alarmdata.service.AlarmConfigServiceImpl;
@@ -88,7 +93,6 @@ public class ProjectAlarmRuleServiceImpl extends ServiceImpl<ProjectAlarmRuleMap
     @Transactional(rollbackFor = Exception.class)
     public String createProjectAlarmRule(AddProjectAlarmRuleDTO addProjectAlarmRuleDTO) throws Exception {
         ProjectAlarmRule projectAlarmRule = ConvertProjectAlarmRuleTool.INSTANCE.convertAddDto2Entity(addProjectAlarmRuleDTO);
-//        List<ProjectAlarmRuleObjRelListItemVO> equipList = ConvertProjectAlarmRuleObjRelTool.INSTANCE.convert2List(addProjectAlarmRuleDTO.getAddEquipList());
         AddAlarmConditionDTO alarmConditionDTO = addProjectAlarmRuleDTO.getAlarmCondition();
         ConvertAlarmConditionTool.INSTANCE.convertAddDto2Entity(alarmConditionDTO);
         //存储报警规则
@@ -101,7 +105,7 @@ public class ProjectAlarmRuleServiceImpl extends ServiceImpl<ProjectAlarmRuleMap
         save(projectAlarmRule);
 
         List<ProjectAlarmRuleObjRel> addEquipList = addProjectAlarmRuleDTO.getAddEquipList();
-        addEquipList.forEach(addEquip->{
+        addEquipList.forEach(addEquip -> {
             addEquip.setProjectAlarmRuleId(projectAlarmRule.getId());
         });
         //保存报警对象
@@ -111,21 +115,41 @@ public class ProjectAlarmRuleServiceImpl extends ServiceImpl<ProjectAlarmRuleMap
         List<AddAlarmConfigDTO> alarmConfigs = new ArrayList<>();
         for (ProjectAlarmRuleObjRel ProjectAlarmRuleObjRel : addEquipList) {
             AddAlarmConfigDTO addAlarmConfigDTO = new AddAlarmConfigDTO();
-            addAlarmConfigDTO.setObjId(ProjectAlarmRuleObjRel.getObjId());
+            String equipId = ProjectAlarmRuleObjRel.getObjId();
+            addAlarmConfigDTO.setObjId(equipId);
             addAlarmConfigDTO.setItemCode(addProjectAlarmRuleDTO.getAlarmItemCode());
             addAlarmConfigDTO.setClassCode(addProjectAlarmRuleDTO.getClassCode());
             addAlarmConfigDTO.setLevel(alarmConditionDTO.getAlarmLevel());
-            AlarmCondition condition = new AlarmCondition();
-            condition.setTrigger(alarmConditionDTO.getBackend());
-            List<String> infoCodeList = alarmConditionDTO.getInfoCodes();
-            condition.setInfoCode(infoCodeList);
-            condition.setTriggerUphold(alarmConditionDTO.getTriggerUphold());
-            Map<String, Object> stringMap = alarmConditionService.frontend2Backend(alarmConditionDTO.getFrontend());
-            condition.setRules((List<String>) stringMap.get("displayFormula"));
-            addAlarmConfigDTO.setCondition(condition);
+            addAlarmConfigDTO.setCategory("Eqdx");
+            addAlarmConfigDTO.setOpen(1);
+            AlarmCondition equipCondition = new AlarmCondition();
+            List<String> infoCodeList = (List<String>) alarmConditionMap.get("infoCode");
+            List<String> infoCodeNew = new ArrayList<>();
+            for (String infoCode : infoCodeList) {
+                String replacement = equipId + "_" + infoCode;
+                infoCodeNew.add(infoCode.replaceAll(infoCode, replacement));
+            }
+            equipCondition.setInfoCode(infoCodeNew);
+            String backend = (String) alarmConditionMap.get("backend");
+            for (String infoCode : infoCodeList) {
+                String replacement = equipId + "_" + infoCode;
+                backend = backend.replaceAll(infoCode, replacement);
+            }
+            equipCondition.setEnd("!" + backend);
+            equipCondition.setEndUphold(0);
+            equipCondition.setTrigger(backend);
+            equipCondition.setTriggerUphold(alarmConditionDTO.getTriggerUphold() * 60);
+            equipCondition.setRules((List<String>) alarmConditionMap.get("displayFormula"));
+            JSONArray configs = JSONArray.parseArray(JSON.toJSONString(alarmConditionDTO.getFrontend()));
+            equipCondition.setConfigs(configs);
+            AlarmEffectTime effectTime = new AlarmEffectTime();
+            effectTime.setType("always");
+            equipCondition.setEffectTime(effectTime);
+            addAlarmConfigDTO.setCondition(equipCondition);
             alarmConfigs.add(addAlarmConfigDTO);
         }
         batchAddAlarmConfigDTO.setAlarmConfigs(alarmConfigs);
+        batchAddAlarmConfigDTO.setProjectId(addProjectAlarmRuleDTO.getProjectId());
         alarmConfigService.batchCreate(batchAddAlarmConfigDTO);
         return projectAlarmRule.getId();
     }
@@ -171,70 +195,100 @@ public class ProjectAlarmRuleServiceImpl extends ServiceImpl<ProjectAlarmRuleMap
         projectAlarmRule = ConvertProjectAlarmRuleTool.INSTANCE.convertUpdateDto2Entity(projectAlarmRule, updateProjectAlarmRuleDTO);
         projectAlarmRule.setModifier(AppContext.getContext().getAccountId());
         AddAlarmConditionDTO alarmCondition = updateProjectAlarmRuleDTO.getAlarmCondition();
-        if (alarmCondition != null) {
-            //查询已有报警
-            ProjectAlarmRule projectRule = getById(updateProjectAlarmRuleDTO.getId());
-            int belongOld = projectRule.getBelong();
-            int belongNew = updateProjectAlarmRuleDTO.getBelong();
-            //删除对应项目、报警类型、报警对象的关联
-            projectAlarmRuleObjRelService.deleteRelation(updateProjectAlarmRuleDTO.getProjectId());
-            if (belongOld > belongNew) {//集团规则->项目自定义规则
-                //新增自定义的规则
-                Map<String, Object> map = alarmConditionService.createAlarmCondition(alarmCondition);
-                projectAlarmRule.setAlarmConditionId((String) map.get("id"));
-            } else if (belongOld < belongNew) {//项目自定义规则->集团规则
-                String conditionId = getConditionId(updateProjectAlarmRuleDTO.getAlarmItemCode());
-                projectAlarmRule.setAlarmConditionId(conditionId);
-            } else if (belongOld == 0 && belongNew == 0) {//项目自定义规则->项目自定义规则
-                //删除自定义规则,新增自定义的规则
-                alarmConditionService.deleteAlarmCondition(updateProjectAlarmRuleDTO.getAlarmConditionId());
-                Map<String, Object> map = alarmConditionService.createAlarmCondition(alarmCondition);
-                projectAlarmRule.setAlarmConditionId((String) map.get("id"));
-            }
-            //新增关联关系
-            List<UpdateAlarmItemDTO> addRelationList = updateProjectAlarmRuleDTO.getAddRelationList();
-            String projectId = updateProjectAlarmRuleDTO.getProjectId();
-            String id = updateProjectAlarmRuleDTO.getId();
-            List<AddProjectAlarmRuleObjRelDTO> addRelations = convert2AddProjectAlarmRuleObjRelDTO(addRelationList,id,projectId);
-            projectAlarmRuleObjRelService.createBatchRelation(addRelations);
-
-            //同步更新设备报警条件 begin
-//            BatchUpdateAlarmConfigDTO batchUpdateAlarmConfigDTO = new BatchUpdateAlarmConfigDTO();
-//            List<UpdateAlarmConfigDTO> updateAlarmConfigDTOs = new ArrayList();
-//            String condition = updateProjectAlarmRuleDTO.getCondition();
-//            String classCode = updateProjectAlarmRuleDTO.getClassCode();
-//            QueryEquipDTO queryEquipDTO = new QueryEquipDTO();
-//            queryEquipDTO.setProjectId(projectId);
-//            queryEquipDTO.setClassCode(classCode);
-//            queryEquipDTO.setCondition(condition);
-//            List<EquipItem> records = groupManagementService.getEquipList(queryEquipDTO);
-//            Map<String, Object> stringMap = alarmConditionService.frontend2Backend(alarmCondition.getFrontend());
-//            for (EquipItem record : records) {
-//                AlarmCondition alarmCondit = new AlarmCondition();
-//                alarmCondit.setTrigger(alarmCondition.getBackend());
-//                List<String> infoCodeList = alarmCondition.getInfoCodes();
-//                alarmCondit.setInfoCode(infoCodeList);
-//                alarmCondit.setTriggerUphold(alarmCondition.getTriggerUphold());
-//                alarmCondit.setRules((List<String>) stringMap.get("displayFormula"));
-//                UpdateAlarmConfigDTO updateAlarmConfigDTO = new UpdateAlarmConfigDTO();
-//                updateAlarmConfigDTO.setCondition(alarmCondit);
-//                updateAlarmConfigDTO.setId(record.getId());
-//                updateAlarmConfigDTO.setLevel(alarmCondition.getAlarmLevel());
-//                updateAlarmConfigDTOs.add(updateAlarmConfigDTO);
-//            }
-//            batchUpdateAlarmConfigDTO.setAlarmConfigs(updateAlarmConfigDTOs);
-//            alarmConfigService.batchUpdate(batchUpdateAlarmConfigDTO);
-            //同步更新设备报警条件 end
+        Map<String, Object> conditionMap = alarmConditionService.swtichAlarmCondition(alarmCondition);
+        //查询已有项目报警
+        ProjectAlarmRule projectRule = getById(updateProjectAlarmRuleDTO.getId());
+        int belongOld = projectRule.getBelong();
+        int belongNew = updateProjectAlarmRuleDTO.getBelong();
+        if (belongOld > belongNew) {//集团规则->项目自定义规则
+            //新增规则
+            com.persagy.apm.alarmservice.project.alarmcondition.model.AlarmCondition condition =
+                    (com.persagy.apm.alarmservice.project.alarmcondition.model.AlarmCondition) conditionMap.get("alarmCondition");
+            String uuid = DataUtils.getUUID();
+            condition.setId(uuid);
+            alarmConditionService.saveCondition(condition);
+            //将规则ID传给项目报警
+            projectAlarmRule.setAlarmConditionId(uuid);
+        } else if (belongOld < belongNew) {//项目自定义规则->集团规则
+            //删除自定义规则
+            ProjectAlarmRule projectAlarm = getById(updateProjectAlarmRuleDTO.getId());
+            alarmConditionService.deleteAlarmCondition(projectAlarm.getAlarmConditionId());
+            //查询集团规则,将集团规则ID传给项目报警
+            GetGroupAlarmRuleDTO getGroupAlarmRuleDTO = new GetGroupAlarmRuleDTO();
+            getGroupAlarmRuleDTO.setGroupId(updateProjectAlarmRuleDTO.getGroupId());
+            getGroupAlarmRuleDTO.setAlarmItemCode(updateProjectAlarmRuleDTO.getAlarmItemCode());
+            GroupAlarmRule groupAlarmRule = groupAlarmRuleService.getGroupAlarmRule(getGroupAlarmRuleDTO);
+            projectAlarmRule.setAlarmConditionId(groupAlarmRule.getId());
+        } else if (belongOld == 0 && belongNew == 0) {//项目自定义规则->项目自定义规则
+            //修改自定义规则
+            UpdateAlarmConditionDTO updateAlarmConditionDTO = new UpdateAlarmConditionDTO();
+            updateAlarmConditionDTO.setFrontend(alarmCondition.getFrontend());
+            updateAlarmConditionDTO.setId(updateProjectAlarmRuleDTO.getAlarmConditionId());
+            updateAlarmConditionDTO.setTriggerUphold(alarmCondition.getTriggerUphold());
+            updateAlarmConditionDTO.setAlarmLevel(alarmCondition.getAlarmLevel());
+            alarmConditionService.updateAlarmCondition(updateAlarmConditionDTO);
         }
         //更新项目报警
         projectAlarmRule.setModifiedTime(new Date());
         projectAlarmRule.setModifier(PoemsContext.getContext().getUserId());
         updateById(projectAlarmRule);
-
-
+        //删除报警对象关联关系
+        projectAlarmRuleObjRelService.deleteRelation(updateProjectAlarmRuleDTO.getId());
+        //新增关联关系
+        List<UpdateAlarmItemDTO> addRelationList = updateProjectAlarmRuleDTO.getAddRelationList();
+        String projectId = updateProjectAlarmRuleDTO.getProjectId();
+        String id = updateProjectAlarmRuleDTO.getId();
+        List<AddProjectAlarmRuleObjRelDTO> addRelations = convert2AddProjectAlarmRuleObjRelDTO(addRelationList, id, projectId);
+        projectAlarmRuleObjRelService.createBatchRelation(addRelations);
+        String condition = updateProjectAlarmRuleDTO.getCondition();
+        String classCode = updateProjectAlarmRuleDTO.getClassCode();
+        String alarmItemCode = updateProjectAlarmRuleDTO.getAlarmItemCode();
+        //删除中台报警条件
+        groupAlarmRuleService.deleteEquipCondition(condition, classCode, alarmItemCode);
+        //新增中台报警条件
+        BatchAddAlarmConfigDTO batchAddAlarmConfigDTO = new BatchAddAlarmConfigDTO();
+        List<AddAlarmConfigDTO> alarmConfigs = new ArrayList<>();
+        for (AddProjectAlarmRuleObjRelDTO equipRel : addRelations) {
+            AddAlarmConfigDTO addAlarmConfigDTO = new AddAlarmConfigDTO();
+            String equipId = equipRel.getObjId();
+            addAlarmConfigDTO.setObjId(equipId);
+            addAlarmConfigDTO.setItemCode(alarmItemCode);
+            addAlarmConfigDTO.setClassCode(classCode);
+            addAlarmConfigDTO.setLevel(alarmCondition.getAlarmLevel());
+            addAlarmConfigDTO.setCategory("Eqdx");
+            addAlarmConfigDTO.setOpen(1);
+            AlarmCondition equipCondition = new AlarmCondition();
+            List<String> infoCodeList = (List<String>) conditionMap.get("infoCode");
+            List<String> infoCodeNew = new ArrayList<>();
+            for (String infoCode : infoCodeList) {
+                String replacement = equipId + "_" + infoCode;
+                infoCodeNew.add(infoCode.replaceAll(infoCode, replacement));
+            }
+            equipCondition.setInfoCode(infoCodeNew);
+            String backend = (String) conditionMap.get("backend");
+            for (String infoCode : infoCodeList) {
+                String replacement = equipId + "_" + infoCode;
+                backend = backend.replaceAll(infoCode, replacement);
+            }
+            equipCondition.setEnd("!" + backend);
+            equipCondition.setEndUphold(0);
+            equipCondition.setTrigger(backend);
+            equipCondition.setTriggerUphold(alarmCondition.getTriggerUphold() * 60);
+            equipCondition.setRules((List<String>) conditionMap.get("displayFormula"));
+            JSONArray configs = JSONArray.parseArray(JSON.toJSONString(alarmCondition.getFrontend()));
+            equipCondition.setConfigs(configs);
+            AlarmEffectTime effectTime = new AlarmEffectTime();
+            effectTime.setType("always");
+            equipCondition.setEffectTime(effectTime);
+            addAlarmConfigDTO.setCondition(equipCondition);
+            alarmConfigs.add(addAlarmConfigDTO);
+        }
+        batchAddAlarmConfigDTO.setAlarmConfigs(alarmConfigs);
+        batchAddAlarmConfigDTO.setProjectId(projectId);
+        alarmConfigService.batchCreate(batchAddAlarmConfigDTO);
     }
 
-    private List<AddProjectAlarmRuleObjRelDTO> convert2AddProjectAlarmRuleObjRelDTO(List<UpdateAlarmItemDTO> addRelationList,String id,String projectId) {
+    private List<AddProjectAlarmRuleObjRelDTO> convert2AddProjectAlarmRuleObjRelDTO(List<UpdateAlarmItemDTO> addRelationList, String id, String projectId) {
         List<AddProjectAlarmRuleObjRelDTO> list = new ArrayList<>();
         for (UpdateAlarmItemDTO updateAlarmItemDTO : addRelationList) {
             AddProjectAlarmRuleObjRelDTO addProjectAlarmRuleObjRelDTO = new AddProjectAlarmRuleObjRelDTO();
@@ -298,7 +352,7 @@ public class ProjectAlarmRuleServiceImpl extends ServiceImpl<ProjectAlarmRuleMap
             alarmConditionService.deleteAlarmCondition(projectAlarmRule.getAlarmConditionId());
         }
         //删除项目报警规则与监测对象的关联
-        projectAlarmRuleObjRelService.deleteRelation(projectAlarmRule.getProjectId());
+        projectAlarmRuleObjRelService.deleteRelation(projectAlarmRule.getId());
         //删除设备报警条件 begin
         BatchDeleteAlarmConfigDTO batchDeleteAlarmConfigDTO = new BatchDeleteAlarmConfigDTO();
         List<DeleteAlarmConfigDTO> alarmConfigs = new ArrayList<>();

+ 2 - 2
src/main/java/com/persagy/apm/alarmservice/project/alarmruleobjrel/service/impl/ProjectAlarmRuleObjRelServiceImpl.java

@@ -254,9 +254,9 @@ public class ProjectAlarmRuleObjRelServiceImpl extends ServiceImpl<ProjectAlarmR
     }
 
     @Override
-    public void deleteRelation(String projectId) {
+    public void deleteRelation(String id) {
         QueryWrapper<ProjectAlarmRuleObjRel> queryWrapper = new QueryWrapper<>();
-        queryWrapper.eq(ProjectAlarmRuleObjRel.PROP_PROJECT_ID, projectId);
+        queryWrapper.eq(ProjectAlarmRuleObjRel.PROP_PROJECT_ALARM_RULE_ID, id);
         ProjectAlarmRuleObjRel projectAlarmRuleObjRel = new ProjectAlarmRuleObjRel();
         projectAlarmRuleObjRel.setValid(ValidEnum.FALSE.getType());
         update(projectAlarmRuleObjRel, queryWrapper);