Commit 959f022c authored by caotao's avatar caotao

1.根据预警周期动态返回数据

parent 5567c659
...@@ -168,6 +168,9 @@ public class AlarmInfoDetailServiceImpl implements IAlarmInfoDetailService { ...@@ -168,6 +168,9 @@ public class AlarmInfoDetailServiceImpl implements IAlarmInfoDetailService {
HashMap<String, Object> result = new HashMap<>(); HashMap<String, Object> result = new HashMap<>();
HashMap<String, Object> alarmTrendMap = new HashMap<>(); HashMap<String, Object> alarmTrendMap = new HashMap<>();
HashMap<String,Object> maxValueAndWaringCycle = getWaringCycleAndMaxValueByWaring(idxBizFanWarningRecord.getWarningPeriod(),idxBizFanWarningRecord.getCONTENT(),idxBizFanWarningRecord.getPointName()); HashMap<String,Object> maxValueAndWaringCycle = getWaringCycleAndMaxValueByWaring(idxBizFanWarningRecord.getWarningPeriod(),idxBizFanWarningRecord.getCONTENT(),idxBizFanWarningRecord.getPointName());
Integer warningCycle = Integer.valueOf(maxValueAndWaringCycle.get("warningCycle").toString());
alarmTrendMap.put("maxValue", maxValueAndWaringCycle.get("maxValue"));
alarmTrendMap.put("warningCycle", warningCycle);
List<HashMap<String, String>> alarmAbnormalityList = new ArrayList<>(); List<HashMap<String, String>> alarmAbnormalityList = new ArrayList<>();
List<IdxBizFanHealthIndex> idxBizFanHealthIndexList = idxBizFanHealthIndexMapper.selectList(new QueryWrapper<IdxBizFanHealthIndex>() List<IdxBizFanHealthIndex> idxBizFanHealthIndexList = idxBizFanHealthIndexMapper.selectList(new QueryWrapper<IdxBizFanHealthIndex>()
.eq("GATEWAY_ID", idxBizFanWarningRecord.getGatewayId()) .eq("GATEWAY_ID", idxBizFanWarningRecord.getGatewayId())
...@@ -190,39 +193,19 @@ public class AlarmInfoDetailServiceImpl implements IAlarmInfoDetailService { ...@@ -190,39 +193,19 @@ public class AlarmInfoDetailServiceImpl implements IAlarmInfoDetailService {
alarmAbnormalityItem.put("time", idxBizFanHealthIndex.getANALYSISTIME()); alarmAbnormalityItem.put("time", idxBizFanHealthIndex.getANALYSISTIME());
alarmAbnormalityItem.put("abnormal", String.valueOf(idxBizFanHealthIndex.getANOMALY()).replace("null","0.0")); alarmAbnormalityItem.put("abnormal", String.valueOf(idxBizFanHealthIndex.getANOMALY()).replace("null","0.0"));
alarmAbnormalityItem.put("healthValue", String.valueOf(idxBizFanHealthIndex.getHealthIndex())); alarmAbnormalityItem.put("healthValue", String.valueOf(idxBizFanHealthIndex.getHealthIndex()));
if (idxBizFanHealthIndexListSize >= 3) {
if (i == 0) {
endTime = handlerDateStr(idxBizFanHealthIndex.getANALYSISTIME(), -8, 5);
}
if (i == 2) {
startTime = handlerDateStr(idxBizFanHealthIndex.getANALYSISTIME(), -8, -5);
}
}
if (idxBizFanHealthIndexListSize == 2) {
if (i == 0) {
endTime = handlerDateStr(idxBizFanHealthIndex.getANALYSISTIME(), -8, 5);
}
if (i == 1) {
startTime = handlerDateStr(idxBizFanHealthIndex.getANALYSISTIME(), -8, -5);
}
}
if (idxBizFanHealthIndexListSize == 1) {
if (i == 0) {
endTime = handlerDateStr(idxBizFanHealthIndex.getANALYSISTIME(), -8, 5);
startTime = handlerDateStr(idxBizFanHealthIndex.getANALYSISTIME(), -8, -5);
}
}
alarmAbnormalityList.add(alarmAbnormalityItem); alarmAbnormalityList.add(alarmAbnormalityItem);
} }
alarmTrendMap.put("xDatas", xDatas); alarmTrendMap.put("xDatas", xDatas);
alarmTrendMap.put("yDatas", yDatas); alarmTrendMap.put("yDatas", yDatas);
alarmTrendMap.put("maxValue", maxValueAndWaringCycle.get("maxValue"));
alarmTrendMap.put("warningCycle", maxValueAndWaringCycle.get("warningCycle"));
result.put("alarmTrend", alarmTrendMap); result.put("alarmTrend", alarmTrendMap);
// 异常度 alarmAbnormality // 异常度 alarmAbnormality
int alarmAbnormalitySize = idxBizFanHealthIndexListSize >= 3 ? 3 : idxBizFanHealthIndexListSize; alarmAbnormalityList=alarmAbnormalityList.subList(alarmAbnormalityList.size() - warningCycle, alarmAbnormalityList.size());
alarmAbnormalityList=alarmAbnormalityList.subList(alarmAbnormalityList.size() - alarmAbnormalitySize, alarmAbnormalityList.size());
alarmAbnormalityList.sort(Comparator.comparingInt(o->Integer.parseInt(o.get("sort")))); alarmAbnormalityList.sort(Comparator.comparingInt(o->Integer.parseInt(o.get("sort"))));
if(alarmAbnormalityList.size()>0){
endTime = handlerDateStr(alarmAbnormalityList.get(0).get("time"),-8,5);
startTime = handlerDateStr(alarmAbnormalityList.get(alarmAbnormalityList.size()-1).get("time"),-8,-5);
}
result.put("alarmAbnormalityList", alarmAbnormalityList); result.put("alarmAbnormalityList", alarmAbnormalityList);
result.put("startTime", startTime); result.put("startTime", startTime);
result.put("endTime", endTime); result.put("endTime", endTime);
...@@ -238,6 +221,9 @@ public class AlarmInfoDetailServiceImpl implements IAlarmInfoDetailService { ...@@ -238,6 +221,9 @@ public class AlarmInfoDetailServiceImpl implements IAlarmInfoDetailService {
HashMap<String, Object> result = new HashMap<>(); HashMap<String, Object> result = new HashMap<>();
HashMap<String, Object> alarmTrendMap = new HashMap<>(); HashMap<String, Object> alarmTrendMap = new HashMap<>();
HashMap<String,Object> maxValueAndWaringCycle = getWaringCycleAndMaxValueByWaring(idxBizPvWarningRecord.getWarningPeriod(),idxBizPvWarningRecord.getCONTENT(),idxBizPvWarningRecord.getPointName()); HashMap<String,Object> maxValueAndWaringCycle = getWaringCycleAndMaxValueByWaring(idxBizPvWarningRecord.getWarningPeriod(),idxBizPvWarningRecord.getCONTENT(),idxBizPvWarningRecord.getPointName());
Integer warningCycle = Integer.valueOf(maxValueAndWaringCycle.get("warningCycle").toString());
alarmTrendMap.put("maxValue", maxValueAndWaringCycle.get("maxValue"));
alarmTrendMap.put("warningCycle", warningCycle);
List<HashMap<String, String>> alarmAbnormalityList = new ArrayList<>(); List<HashMap<String, String>> alarmAbnormalityList = new ArrayList<>();
List<IdxBizPvHealthIndex> idxBizPvHealthIndexList = idxBizPvHealthIndexMapper.selectList(new QueryWrapper<IdxBizPvHealthIndex>() List<IdxBizPvHealthIndex> idxBizPvHealthIndexList = idxBizPvHealthIndexMapper.selectList(new QueryWrapper<IdxBizPvHealthIndex>()
.eq("GATEWAY_ID", idxBizPvWarningRecord.getGatewayId()) .eq("GATEWAY_ID", idxBizPvWarningRecord.getGatewayId())
...@@ -290,9 +276,12 @@ public class AlarmInfoDetailServiceImpl implements IAlarmInfoDetailService { ...@@ -290,9 +276,12 @@ public class AlarmInfoDetailServiceImpl implements IAlarmInfoDetailService {
alarmTrendMap.put("warningCycle", maxValueAndWaringCycle.get("warningCycle")); alarmTrendMap.put("warningCycle", maxValueAndWaringCycle.get("warningCycle"));
result.put("alarmTrend", alarmTrendMap); result.put("alarmTrend", alarmTrendMap);
// 异常度 alarmAbnormality // 异常度 alarmAbnormality
int alarmAbnormalitySize = idxBizPvHealthIndexListSize >= 3 ? 3 : idxBizPvHealthIndexListSize; alarmAbnormalityList=alarmAbnormalityList.subList(alarmAbnormalityList.size() - warningCycle, alarmAbnormalityList.size());
alarmAbnormalityList=alarmAbnormalityList.subList(alarmAbnormalityList.size() - alarmAbnormalitySize, alarmAbnormalityList.size());
alarmAbnormalityList.sort(Comparator.comparingInt(o->Integer.parseInt(o.get("sort")))); alarmAbnormalityList.sort(Comparator.comparingInt(o->Integer.parseInt(o.get("sort"))));
if(alarmAbnormalityList.size()>0){
endTime = handlerDateStr(alarmAbnormalityList.get(0).get("time"),-8,5);
startTime = handlerDateStr(alarmAbnormalityList.get(alarmAbnormalityList.size()-1).get("time"),-8,-5);
}
result.put("alarmAbnormalityList", alarmAbnormalityList); result.put("alarmAbnormalityList", alarmAbnormalityList);
result.put("startTime", startTime); result.put("startTime", startTime);
result.put("endTime", endTime); result.put("endTime", endTime);
...@@ -625,7 +614,7 @@ public class AlarmInfoDetailServiceImpl implements IAlarmInfoDetailService { ...@@ -625,7 +614,7 @@ public class AlarmInfoDetailServiceImpl implements IAlarmInfoDetailService {
String spiltStr =CommonConstans.waringPeriodTowaringCycle.get(warningPeriod); String spiltStr =CommonConstans.waringPeriodTowaringCycle.get(warningPeriod);
String [] strings= warningContenct.split(spiltStr); String [] strings= warningContenct.split(spiltStr);
Double maxValue=0.0; Double maxValue=0.0;
Integer warningCycle=0; Integer warningCycle=1;
if(strings.length == 2){ if(strings.length == 2){
if (spiltStr.equals("分钟")){ if (spiltStr.equals("分钟")){
warningCycle = Integer.valueOf(strings[0])/10; warningCycle = Integer.valueOf(strings[0])/10;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment