Explorar el Código

调整告警规则编辑接口

liuyaowen hace 9 meses
padre
commit
d72935a245

+ 4 - 11
src/main/java/com/yunfeiyun/agmp/iotm/web/service/impl/IotWarnconfigServiceImpl.java

@@ -202,13 +202,14 @@ public class IotWarnconfigServiceImpl implements IIotWarnconfigService {
         List<IotWarnobject> oldWarnObjectList = iotWarnobjectMapper.selectIotWarnobjectList(iotWarnobjectQuery);
         // 对比两个集合,获取不同的内容
         Collection<IotWarnobject> differ = CollectionUtils.disjunction(oldWarnObjectList,iotWarnconfigEditReqVo.getIotWarnobjectList());
-        Collection<IotWarnobject> deleteData = getDifferObjects(oldWarnObjectList,differ);
+        // 老数据中存在,新数据中不存在,代表被删除的数据,即旧数据与differ的交集
+        Collection<IotWarnobject> deleteData = CollectionUtils.intersection(oldWarnObjectList,differ);
         if(!deleteData.isEmpty()){
             String[] woBids = deleteData.stream().map(IotWarnobject::getWoBid).toArray(String[]::new);
             iotWarnobjectMapper.deleteIotWarnobjectByWoBids(woBids, SecurityUtils.getTid());
         }
-        // 老数据中不存在,新数据中存在,代表新增的数据
-        Collection<IotWarnobject> addData = getDifferObjects(iotWarnconfigEditReqVo.getIotWarnobjectList(),differ);
+        // 老数据中不存在,新数据中存在,代表新增的数据,即入参与differ的交集
+        Collection<IotWarnobject> addData = CollectionUtils.intersection(iotWarnconfigEditReqVo.getIotWarnobjectList(),differ);
         for(IotWarnobject addWarnObject : addData){
             addWarnObject.setTid(SecurityUtils.getTid());
             addWarnObject.setWcBid(iotWarnconfigEditReqVo.getWcBid());
@@ -334,12 +335,4 @@ public class IotWarnconfigServiceImpl implements IIotWarnconfigService {
         return result;
     }
 
-    private Collection<IotWarnobject> getDifferObjects(List<IotWarnobject> oldData,Collection<IotWarnobject> differData){
-        if(CollectionUtils.isEqualCollection(oldData,differData)){
-            // 如果旧数据与不同的数据相同,则说明数据被完全替换
-            return differData;
-        }
-        // 老数据中存在,新数据中不存在,代表被删除的数据
-        return CollectionUtils.subtract(oldData,differData);
-    }
 }