diff --git a/src/main/java/iet/ustb/sf/service/impl/UtilServiceImpl.java b/src/main/java/iet/ustb/sf/service/impl/UtilServiceImpl.java index 067c6ae..89b33f6 100644 --- a/src/main/java/iet/ustb/sf/service/impl/UtilServiceImpl.java +++ b/src/main/java/iet/ustb/sf/service/impl/UtilServiceImpl.java @@ -356,7 +356,7 @@ public class UtilServiceImpl implements UtilService { queryWrapper.eq("target_id", targetId); queryWrapper.ne("warn_level", "999"); List monitorList = monitorMapper.selectList(queryWrapper); - Map map = monitorList.stream().collect(Collectors.toMap(Monitor::getXShow, vo -> vo)); + Map> map = monitorList.stream().collect(Collectors.groupingBy(Monitor::getXShow)); List ruleList = ruleMapper.selectList(new QueryWrapper().eq("target_id", targetId)); if ("delete".equals(type) && ruleList.isEmpty()) { @@ -375,8 +375,8 @@ public class UtilServiceImpl implements UtilService { List saveMonitorList = new ArrayList<>(); for (TargetData targetData : targetDataList) { - Monitor tmp = map.get(targetData.getXShow()); - if (tmp == null) { + List tmp = map.get(targetData.getXShow()); + if (tmp == null || tmp.isEmpty()) { if ("delete".equals(type)) { Monitor monitor = getInitMonitor(targetData, target, addRule); monitor.setWarnLevel(998);