highestAlarmSeverity fixed

This commit is contained in:
AndrewVolostnykhThingsboard 2021-01-25 18:01:17 +02:00
parent 4d4d189816
commit a4981a869f

View File

@ -320,17 +320,29 @@ public class BaseAlarmService extends AbstractEntityService implements AlarmServ
boolean hasNext = true; boolean hasNext = true;
AlarmSeverity highestSeverity = null; AlarmSeverity highestSeverity = null;
AlarmQuery query; AlarmQuery query;
while (hasNext && AlarmSeverity.CRITICAL != highestSeverity) { while (hasNext) {
query = new AlarmQuery(entityId, nextPageLink, alarmSearchStatus, alarmStatus, false, null); query = new AlarmQuery(entityId, nextPageLink, alarmSearchStatus, alarmStatus, false, null);
PageData<AlarmInfo> alarms = alarmDao.findAlarms(tenantId, query); PageData<AlarmInfo> alarms = alarmDao.findAlarms(tenantId, query);
if(alarms.getData().isEmpty()) {
return null;
}
if (alarms.hasNext()) { if (alarms.hasNext()) {
nextPageLink = nextPageLink.nextPageLink(); nextPageLink = nextPageLink.nextPageLink();
} else {
hasNext = false;
} }
AlarmSeverity severity = detectHighestSeverity(alarms.getData()); AlarmSeverity severity = detectHighestSeverity(alarms.getData());
if (severity == null) { if (severity == null) {
continue; continue;
} }
if (severity == AlarmSeverity.CRITICAL || highestSeverity == null) {
if(severity == AlarmSeverity.CRITICAL) {
return severity;
}
if (highestSeverity == null) {
highestSeverity = severity; highestSeverity = severity;
} else { } else {
highestSeverity = highestSeverity.compareTo(severity) < 0 ? highestSeverity : severity; highestSeverity = highestSeverity.compareTo(severity) < 0 ? highestSeverity : severity;