Commit 1e2f8bfa authored by caotao's avatar caotao

预警等级周期问题处理

parent d27ec3dd
...@@ -211,25 +211,29 @@ public class HealthStatusIndicatorServiceImpl { ...@@ -211,25 +211,29 @@ public class HealthStatusIndicatorServiceImpl {
Double healthValueRisk = 0.0; Double healthValueRisk = 0.0;
Double healthValueNotice = 0.0; Double healthValueNotice = 0.0;
long healthValueWarnCount = 0; int healthValueWarnCount = 0;
long healthValueRiskCount = 0; int healthValueRiskCount = 0;
long healthValueNoticeCount = 0; int healthValueNoticeCount = 0;
long healthValueMinCount = 0; int healthValueMinCount = 0;
int riskNum=0;
int warnNum=0;
int noticeNum=0;
for (IdxBizPvWarningRuleSet e : idxBizPvWarningRuleSets) { for (IdxBizPvWarningRuleSet e : idxBizPvWarningRuleSets) {
switch (e.getWarningName()){ switch (e.getWarningName()){
case "警告": case "警告":
healthValueWarn = Double.parseDouble(e.getWarningIf().substring(2)); healthValueWarn = Double.parseDouble(e.getWarningIf().substring(2));
healthValueWarnCount =Long.parseLong(e.getWarningCycle()); healthValueWarnCount =Integer.parseInt(e.getWarningCycle());
break; break;
case "危险": case "危险":
healthValueRisk = Double.parseDouble(e.getWarningIf().substring(2)); healthValueRisk = Double.parseDouble(e.getWarningIf().substring(2));
healthValueRiskCount =Long.parseLong(e.getWarningCycle()); healthValueRiskCount =Integer.parseInt(e.getWarningCycle());
break; break;
case "注意": case "注意":
healthValueNotice = Double.parseDouble(e.getWarningIf().substring(2)); healthValueNotice = Double.parseDouble(e.getWarningIf().substring(2));
healthValueNoticeCount =Long.parseLong(e.getWarningCycle()); healthValueNoticeCount =Integer.parseInt(e.getWarningCycle());
break; break;
} }
...@@ -237,11 +241,20 @@ public class HealthStatusIndicatorServiceImpl { ...@@ -237,11 +241,20 @@ public class HealthStatusIndicatorServiceImpl {
List<Double> healthIndex = idxBizPvHealthIndices.stream().map(PvHealthIndexMoment::getHealthIndex).collect(Collectors.toList()); List<Double> healthIndex = idxBizPvHealthIndices.stream().map(PvHealthIndexMoment::getHealthIndex).collect(Collectors.toList());
Double finalHealthValueRisk = healthValueRisk; Double finalHealthValueRisk = healthValueRisk;
long riskNum = healthIndex.subList(healthIndex.size()>healthValueRiskCount? (int) (healthIndex.size() - healthValueRiskCount) :0,healthIndex.size()).stream().filter(e -> e <= finalHealthValueRisk).count(); if(healthIndex.size()>=healthValueRiskCount){
List<Double> healthIndexList = healthIndex.subList(healthIndex.size()-healthValueRiskCount,healthIndex.size());
riskNum = (int) healthIndexList.stream().filter(e -> e <= finalHealthValueRisk).count();
}
Double finalHealthValueWarn = healthValueWarn; Double finalHealthValueWarn = healthValueWarn;
long warnNum = healthIndex.subList(healthIndex.size()>healthValueWarnCount? (int) (healthIndex.size() - healthValueWarnCount) :0,healthIndex.size()).stream().filter(e -> e <= finalHealthValueWarn).count(); if(healthIndex.size()>=healthValueWarnCount){
List<Double> healthIndexList = healthIndex.subList(healthIndex.size()-healthValueWarnCount,healthIndex.size());
warnNum = (int) healthIndexList.stream().filter(e -> e <= finalHealthValueWarn).count();
}
Double finalHealthValueNotice = healthValueNotice; Double finalHealthValueNotice = healthValueNotice;
long noticeNum = healthIndex.subList(healthIndex.size()>healthValueNoticeCount? (int) (healthIndex.size() - healthValueNoticeCount) :0,healthIndex.size()).stream().filter(e -> e <= finalHealthValueNotice).count(); if(healthIndex.size()>=healthValueNoticeCount){
List<Double> healthIndexList = healthIndex.subList(healthIndex.size()-healthValueWarnCount,healthIndex.size());
noticeNum = (int) healthIndexList.stream().filter(e -> e <= finalHealthValueNotice).count();
}
String level = ""; String level = "";
String content = ""; String content = "";
String num = ""; String num = "";
...@@ -330,9 +343,9 @@ public class HealthStatusIndicatorServiceImpl { ...@@ -330,9 +343,9 @@ public class HealthStatusIndicatorServiceImpl {
// @Scheduled(cron = "0 0/5 * * * ?") // @Scheduled(cron = "0 0/5 * * * ?")
@Async("async") @Async("async")
public void healthWarningHourGF() { public void healthWarningHourGF() {
// if (!openHealth){ if (!openHealth){
// return; return;
// } }
Date time = new Date(); Date time = new Date();
// Date date = DateUtils.dateAddHours(time, -13); // Date date = DateUtils.dateAddHours(time, -13);
// Calendar calendar = Calendar.getInstance(); // Calendar calendar = Calendar.getInstance();
...@@ -383,10 +396,13 @@ public class HealthStatusIndicatorServiceImpl { ...@@ -383,10 +396,13 @@ public class HealthStatusIndicatorServiceImpl {
Double healthValueRisk = 0.0; Double healthValueRisk = 0.0;
Double healthValueNotice = 0.0; Double healthValueNotice = 0.0;
long healthValueNoticeCount = 0; int healthValueWarnCount = 0;
long healthValueRiskCount = 0; int healthValueRiskCount = 0;
long healthValueWarnCount = 0; int healthValueNoticeCount = 0;
long healthValueHourCount = 0; int healthValueMinCount = 0;
int riskNum=0;
int warnNum=0;
int noticeNum=0;
...@@ -394,27 +410,41 @@ public class HealthStatusIndicatorServiceImpl { ...@@ -394,27 +410,41 @@ public class HealthStatusIndicatorServiceImpl {
switch (e.getWarningName()){ switch (e.getWarningName()){
case "警告": case "警告":
healthValueWarn = Double.parseDouble(e.getWarningIf().substring(2)); healthValueWarn = Double.parseDouble(e.getWarningIf().substring(2));
healthValueWarnCount =Long.parseLong(e.getWarningCycle()); healthValueWarnCount =Integer.parseInt(e.getWarningCycle());
break; break;
case "危险": case "危险":
healthValueRisk = Double.parseDouble(e.getWarningIf().substring(2)); healthValueRisk = Double.parseDouble(e.getWarningIf().substring(2));
healthValueRiskCount =Long.parseLong(e.getWarningCycle()); healthValueRiskCount =Integer.parseInt(e.getWarningCycle());
break; break;
case "注意": case "注意":
healthValueNotice = Double.parseDouble(e.getWarningIf().substring(2)); healthValueNotice = Double.parseDouble(e.getWarningIf().substring(2));
healthValueNoticeCount =Long.parseLong(e.getWarningCycle()); healthValueNoticeCount =Integer.parseInt(e.getWarningCycle());
break; break;
} }
} }
List<Double> healthIndex = idxBizPvHealthIndices.stream().map(PvHealthIndexHour::getHealthIndex).collect(Collectors.toList()); List<Double> healthIndex = idxBizPvHealthIndices.stream().map(PvHealthIndexHour::getHealthIndex).collect(Collectors.toList());
// Double finalHealthValueRisk = healthValueRisk;
// long riskNum = healthIndex.subList(healthIndex.size()>healthValueRiskCount? (int) (healthIndex.size() - healthValueRiskCount) :0,healthIndex.size()).stream().filter(e -> e <= finalHealthValueRisk).count();
// Double finalHealthValueWarn = healthValueWarn;
// long warnNum = healthIndex.subList(healthIndex.size()>healthValueWarnCount? (int) (healthIndex.size() - healthValueWarnCount) :0,healthIndex.size()).stream().filter(e -> e <= finalHealthValueWarn).count();
// Double finalHealthValueNotice = healthValueNotice;
// long noticeNum = healthIndex.subList(healthIndex.size()>healthValueNoticeCount? (int) (healthIndex.size() - healthValueNoticeCount) :0,healthIndex.size()).stream().filter(e -> e <= finalHealthValueNotice).count();
Double finalHealthValueRisk = healthValueRisk; Double finalHealthValueRisk = healthValueRisk;
long riskNum = healthIndex.subList(healthIndex.size()>healthValueRiskCount? (int) (healthIndex.size() - healthValueRiskCount) :0,healthIndex.size()).stream().filter(e -> e <= finalHealthValueRisk).count(); if(healthIndex.size()>=healthValueRiskCount){
List<Double> healthIndexList = healthIndex.subList(healthIndex.size()-healthValueRiskCount,healthIndex.size());
riskNum = (int) healthIndexList.stream().filter(e -> e <= finalHealthValueRisk).count();
}
Double finalHealthValueWarn = healthValueWarn; Double finalHealthValueWarn = healthValueWarn;
long warnNum = healthIndex.subList(healthIndex.size()>healthValueWarnCount? (int) (healthIndex.size() - healthValueWarnCount) :0,healthIndex.size()).stream().filter(e -> e <= finalHealthValueWarn).count(); if(healthIndex.size()>=healthValueWarnCount){
List<Double> healthIndexList = healthIndex.subList(healthIndex.size()-healthValueWarnCount,healthIndex.size());
warnNum = (int) healthIndexList.stream().filter(e -> e <= finalHealthValueWarn).count();
}
Double finalHealthValueNotice = healthValueNotice; Double finalHealthValueNotice = healthValueNotice;
long noticeNum = healthIndex.subList(healthIndex.size()>healthValueNoticeCount? (int) (healthIndex.size() - healthValueNoticeCount) :0,healthIndex.size()).stream().filter(e -> e <= finalHealthValueNotice).count(); if(healthIndex.size()>=healthValueNoticeCount){
List<Double> healthIndexList = healthIndex.subList(healthIndex.size()-healthValueWarnCount,healthIndex.size());
noticeNum = (int) healthIndexList.stream().filter(e -> e <= finalHealthValueNotice).count();
}
String level = ""; String level = "";
String content = ""; String content = "";
String num = ""; String num = "";
...@@ -551,36 +581,54 @@ public class HealthStatusIndicatorServiceImpl { ...@@ -551,36 +581,54 @@ public class HealthStatusIndicatorServiceImpl {
Double healthValueRisk = 0.0; Double healthValueRisk = 0.0;
Double healthValueNotice = 0.0; Double healthValueNotice = 0.0;
long healthValueDayCount = 0; int healthValueWarnCount = 0;
long healthValueNoticeCount = 0; int healthValueRiskCount = 0;
long healthValueRiskCount = 0; int healthValueNoticeCount = 0;
long healthValueWarnCount = 0; int healthValueMinCount = 0;
int riskNum=0;
int warnNum=0;
int noticeNum=0;
for (IdxBizPvWarningRuleSet e : idxBizPvWarningRuleSets) { for (IdxBizPvWarningRuleSet e : idxBizPvWarningRuleSets) {
switch (e.getWarningName()){ switch (e.getWarningName()){
case "警告": case "警告":
healthValueWarn = Double.parseDouble(e.getWarningIf().substring(2)); healthValueWarn = Double.parseDouble(e.getWarningIf().substring(2));
healthValueWarnCount =Long.parseLong(e.getWarningCycle()); healthValueWarnCount =Integer.parseInt(e.getWarningCycle());
break; break;
case "危险": case "危险":
healthValueRisk = Double.parseDouble(e.getWarningIf().substring(2)); healthValueRisk = Double.parseDouble(e.getWarningIf().substring(2));
healthValueRiskCount =Long.parseLong(e.getWarningCycle()); healthValueRiskCount =Integer.parseInt(e.getWarningCycle());
break; break;
case "注意": case "注意":
healthValueNotice = Double.parseDouble(e.getWarningIf().substring(2)); healthValueNotice = Double.parseDouble(e.getWarningIf().substring(2));
healthValueNoticeCount =Long.parseLong(e.getWarningCycle()); healthValueNoticeCount =Integer.parseInt(e.getWarningCycle());
break; break;
} }
} }
List<Double> healthIndex = idxBizPvHealthIndices.stream().map(PvHealthIndexDay::getHealthIndex).collect(Collectors.toList()); List<Double> healthIndex = idxBizPvHealthIndices.stream().map(PvHealthIndexDay::getHealthIndex).collect(Collectors.toList());
// Double finalHealthValueRisk = healthValueRisk;
// long riskNum = healthIndex.subList(healthIndex.size()>healthValueRiskCount? (int) (healthIndex.size() - healthValueRiskCount) :0,healthIndex.size()).stream().filter(e -> e <= finalHealthValueRisk).count();
// Double finalHealthValueWarn = healthValueWarn;
// long warnNum = healthIndex.subList(healthIndex.size()>healthValueWarnCount? (int) (healthIndex.size() - healthValueWarnCount) :0,healthIndex.size()).stream().filter(e -> e <= finalHealthValueWarn).count();
// Double finalHealthValueNotice = healthValueNotice;
// long noticeNum = healthIndex.subList(healthIndex.size()>healthValueNoticeCount? (int) (healthIndex.size() - healthValueNoticeCount) :0,healthIndex.size()).stream().filter(e -> e <= finalHealthValueNotice).count();
Double finalHealthValueRisk = healthValueRisk; Double finalHealthValueRisk = healthValueRisk;
long riskNum = healthIndex.subList(healthIndex.size()>healthValueRiskCount? (int) (healthIndex.size() - healthValueRiskCount) :0,healthIndex.size()).stream().filter(e -> e <= finalHealthValueRisk).count(); if(healthIndex.size()>=healthValueRiskCount){
List<Double> healthIndexList = healthIndex.subList(healthIndex.size()-healthValueRiskCount,healthIndex.size());
riskNum = (int) healthIndexList.stream().filter(e -> e <= finalHealthValueRisk).count();
}
Double finalHealthValueWarn = healthValueWarn; Double finalHealthValueWarn = healthValueWarn;
long warnNum = healthIndex.subList(healthIndex.size()>healthValueWarnCount? (int) (healthIndex.size() - healthValueWarnCount) :0,healthIndex.size()).stream().filter(e -> e <= finalHealthValueWarn).count(); if(healthIndex.size()>=healthValueWarnCount){
List<Double> healthIndexList = healthIndex.subList(healthIndex.size()-healthValueWarnCount,healthIndex.size());
warnNum = (int) healthIndexList.stream().filter(e -> e <= finalHealthValueWarn).count();
}
Double finalHealthValueNotice = healthValueNotice; Double finalHealthValueNotice = healthValueNotice;
long noticeNum = healthIndex.subList(healthIndex.size()>healthValueNoticeCount? (int) (healthIndex.size() - healthValueNoticeCount) :0,healthIndex.size()).stream().filter(e -> e <= finalHealthValueNotice).count(); if(healthIndex.size()>=healthValueNoticeCount){
List<Double> healthIndexList = healthIndex.subList(healthIndex.size()-healthValueWarnCount,healthIndex.size());
noticeNum = (int) healthIndexList.stream().filter(e -> e <= finalHealthValueNotice).count();
}
String level = ""; String level = "";
String content = ""; String content = "";
String num = ""; String num = "";
...@@ -720,25 +768,28 @@ public class HealthStatusIndicatorServiceImpl { ...@@ -720,25 +768,28 @@ public class HealthStatusIndicatorServiceImpl {
Double healthValueRisk = 0.0; Double healthValueRisk = 0.0;
Double healthValueNotice = 0.0; Double healthValueNotice = 0.0;
long healthValueWarnCount = 0; int healthValueWarnCount = 0;
long healthValueRiskCount = 0; int healthValueRiskCount = 0;
long healthValueNoticeCount = 0; int healthValueNoticeCount = 0;
long healthValueMinCount = 0; int healthValueMinCount = 0;
int riskNum=0;
int warnNum=0;
int noticeNum=0;
for (IdxBizFanWarningRuleSet e : idxBizPvWarningRuleSets) { for (IdxBizFanWarningRuleSet e : idxBizPvWarningRuleSets) {
switch (e.getWarningName()){ switch (e.getWarningName()){
case "警告": case "警告":
healthValueWarn = Double.parseDouble(e.getWarningIf().substring(2)); healthValueWarn = Double.parseDouble(e.getWarningIf().substring(2));
healthValueWarnCount =Long.parseLong(e.getWarningCycle()); healthValueWarnCount = Integer.parseInt(e.getWarningCycle());
break; break;
case "危险": case "危险":
healthValueRisk = Double.parseDouble(e.getWarningIf().substring(2)); healthValueRisk = Double.parseDouble(e.getWarningIf().substring(2));
healthValueRiskCount =Long.parseLong(e.getWarningCycle()); healthValueRiskCount =Integer.parseInt(e.getWarningCycle());
break; break;
case "注意": case "注意":
healthValueNotice = Double.parseDouble(e.getWarningIf().substring(2)); healthValueNotice = Double.parseDouble(e.getWarningIf().substring(2));
healthValueNoticeCount =Long.parseLong(e.getWarningCycle()); healthValueNoticeCount =Integer.parseInt(e.getWarningCycle());
break; break;
} }
...@@ -747,13 +798,27 @@ public class HealthStatusIndicatorServiceImpl { ...@@ -747,13 +798,27 @@ public class HealthStatusIndicatorServiceImpl {
List<Double> healthIndex = idxBizFanHealthIndices.stream().map(FanHealthIndexMoment::getHealthIndex).collect(Collectors.toList()); List<Double> healthIndex = idxBizFanHealthIndices.stream().map(FanHealthIndexMoment::getHealthIndex).collect(Collectors.toList());
// Double finalHealthValueRisk = healthValueRisk;
// long riskNum = healthIndex.subList(healthIndex.size()>healthValueRiskCount? (int) (healthIndex.size() - healthValueRiskCount) :0,healthIndex.size()).stream().filter(e -> e <= finalHealthValueRisk).count();
// Double finalHealthValueWarn = healthValueWarn;
// long warnNum = healthIndex.subList(healthIndex.size()>healthValueWarnCount? (int) (healthIndex.size() - healthValueWarnCount) :0,healthIndex.size()).stream().filter(e -> e <= finalHealthValueWarn).count();
// Double finalHealthValueNotice = healthValueNotice;
// long noticeNum = healthIndex.subList(healthIndex.size()>healthValueNoticeCount? (int) (healthIndex.size() - healthValueNoticeCount) :0,healthIndex.size()).stream().filter(e -> e <= finalHealthValueNotice).count();
Double finalHealthValueRisk = healthValueRisk; Double finalHealthValueRisk = healthValueRisk;
long riskNum = healthIndex.subList(healthIndex.size()>healthValueRiskCount? (int) (healthIndex.size() - healthValueRiskCount) :0,healthIndex.size()).stream().filter(e -> e <= finalHealthValueRisk).count(); if(healthIndex.size()>=healthValueRiskCount){
List<Double> healthIndexList = healthIndex.subList(healthIndex.size()-healthValueRiskCount,healthIndex.size());
riskNum = (int) healthIndexList.stream().filter(e -> e <= finalHealthValueRisk).count();
}
Double finalHealthValueWarn = healthValueWarn; Double finalHealthValueWarn = healthValueWarn;
long warnNum = healthIndex.subList(healthIndex.size()>healthValueWarnCount? (int) (healthIndex.size() - healthValueWarnCount) :0,healthIndex.size()).stream().filter(e -> e <= finalHealthValueWarn).count(); if(healthIndex.size()>=healthValueWarnCount){
List<Double> healthIndexList = healthIndex.subList(healthIndex.size()-healthValueWarnCount,healthIndex.size());
warnNum = (int) healthIndexList.stream().filter(e -> e <= finalHealthValueWarn).count();
}
Double finalHealthValueNotice = healthValueNotice; Double finalHealthValueNotice = healthValueNotice;
long noticeNum = healthIndex.subList(healthIndex.size()>healthValueNoticeCount? (int) (healthIndex.size() - healthValueNoticeCount) :0,healthIndex.size()).stream().filter(e -> e <= finalHealthValueNotice).count(); if(healthIndex.size()>=healthValueNoticeCount){
List<Double> healthIndexList = healthIndex.subList(healthIndex.size()-healthValueWarnCount,healthIndex.size());
noticeNum = (int) healthIndexList.stream().filter(e -> e <= finalHealthValueNotice).count();
}
String level = ""; String level = "";
String content = ""; String content = "";
String num = ""; String num = "";
...@@ -899,36 +964,58 @@ public class HealthStatusIndicatorServiceImpl { ...@@ -899,36 +964,58 @@ public class HealthStatusIndicatorServiceImpl {
Double healthValueRisk = 0.0; Double healthValueRisk = 0.0;
Double healthValueNotice = 0.0; Double healthValueNotice = 0.0;
long healthValueNoticeCount = 0; // long healthValueNoticeCount = 0;
long healthValueRiskCount = 0; // long healthValueRiskCount = 0;
long healthValueWarnCount = 0; // long healthValueWarnCount = 0;
int healthValueWarnCount = 0;
int healthValueRiskCount = 0;
int healthValueNoticeCount = 0;
int healthValueMinCount = 0;
int riskNum=0;
int warnNum=0;
int noticeNum=0;
for (IdxBizFanWarningRuleSet e : idxBizPvWarningRuleSets) { for (IdxBizFanWarningRuleSet e : idxBizPvWarningRuleSets) {
switch (e.getWarningName()){ switch (e.getWarningName()){
case "警告": case "警告":
healthValueWarn = Double.parseDouble(e.getWarningIf().substring(2)); healthValueWarn = Double.parseDouble(e.getWarningIf().substring(2));
healthValueWarnCount =Long.parseLong(e.getWarningCycle()); healthValueWarnCount =Integer.parseInt(e.getWarningCycle());
break; break;
case "危险": case "危险":
healthValueRisk = Double.parseDouble(e.getWarningIf().substring(2)); healthValueRisk = Double.parseDouble(e.getWarningIf().substring(2));
healthValueRiskCount =Long.parseLong(e.getWarningCycle()); healthValueRiskCount =Integer.parseInt(e.getWarningCycle());
break; break;
case "注意": case "注意":
healthValueNotice = Double.parseDouble(e.getWarningIf().substring(2)); healthValueNotice = Double.parseDouble(e.getWarningIf().substring(2));
healthValueNoticeCount =Long.parseLong(e.getWarningCycle()); healthValueNoticeCount =Integer.parseInt(e.getWarningCycle());
break; break;
} }
} }
List<Double> healthIndex = idxBizFanHealthIndices.stream().map(FanHealthIndexHour::getHealthIndex).collect(Collectors.toList()); List<Double> healthIndex = idxBizFanHealthIndices.stream().map(FanHealthIndexHour::getHealthIndex).collect(Collectors.toList());
// Double finalHealthValueRisk = healthValueRisk;
// long riskNum = healthIndex.subList(healthIndex.size()>healthValueRiskCount? (int) (healthIndex.size() - healthValueRiskCount) :0,healthIndex.size()).stream().filter(e -> e <= finalHealthValueRisk).count();
// Double finalHealthValueWarn = healthValueWarn;
// long warnNum = healthIndex.subList(healthIndex.size()>healthValueWarnCount? (int) (healthIndex.size() - healthValueWarnCount) :0,healthIndex.size()).stream().filter(e -> e <= finalHealthValueWarn).count();
// Double finalHealthValueNotice = healthValueNotice;
// long noticeNum = healthIndex.subList(healthIndex.size()>healthValueNoticeCount? (int) (healthIndex.size() - healthValueNoticeCount) :0,healthIndex.size()).stream().filter(e -> e <= finalHealthValueNotice).count();
Double finalHealthValueRisk = healthValueRisk; Double finalHealthValueRisk = healthValueRisk;
long riskNum = healthIndex.subList(healthIndex.size()>healthValueRiskCount? (int) (healthIndex.size() - healthValueRiskCount) :0,healthIndex.size()).stream().filter(e -> e <= finalHealthValueRisk).count(); if(healthIndex.size()>=healthValueRiskCount){
List<Double> healthIndexList = healthIndex.subList(healthIndex.size()-healthValueRiskCount,healthIndex.size());
riskNum = (int) healthIndexList.stream().filter(e -> e <= finalHealthValueRisk).count();
}
Double finalHealthValueWarn = healthValueWarn; Double finalHealthValueWarn = healthValueWarn;
long warnNum = healthIndex.subList(healthIndex.size()>healthValueWarnCount? (int) (healthIndex.size() - healthValueWarnCount) :0,healthIndex.size()).stream().filter(e -> e <= finalHealthValueWarn).count(); if(healthIndex.size()>=healthValueWarnCount){
List<Double> healthIndexList = healthIndex.subList(healthIndex.size()-healthValueWarnCount,healthIndex.size());
warnNum = (int) healthIndexList.stream().filter(e -> e <= finalHealthValueWarn).count();
}
Double finalHealthValueNotice = healthValueNotice; Double finalHealthValueNotice = healthValueNotice;
long noticeNum = healthIndex.subList(healthIndex.size()>healthValueNoticeCount? (int) (healthIndex.size() - healthValueNoticeCount) :0,healthIndex.size()).stream().filter(e -> e <= finalHealthValueNotice).count(); if(healthIndex.size()>=healthValueNoticeCount){
List<Double> healthIndexList = healthIndex.subList(healthIndex.size()-healthValueWarnCount,healthIndex.size());
noticeNum = (int) healthIndexList.stream().filter(e -> e <= finalHealthValueNotice).count();
}
String level = ""; String level = "";
String content = ""; String content = "";
String num = ""; String num = "";
...@@ -1068,25 +1155,31 @@ public class HealthStatusIndicatorServiceImpl { ...@@ -1068,25 +1155,31 @@ public class HealthStatusIndicatorServiceImpl {
Double healthValueRisk = 0.0; Double healthValueRisk = 0.0;
Double healthValueNotice = 0.0; Double healthValueNotice = 0.0;
long healthValueNoticeCount = 0; // long healthValueNoticeCount = 0;
long healthValueWarnCount = 0; // long healthValueWarnCount = 0;
long healthValueRiskCount = 0; // long healthValueRiskCount = 0;
int healthValueWarnCount = 0;
int healthValueRiskCount = 0;
int healthValueNoticeCount = 0;
int healthValueMinCount = 0;
int riskNum=0;
int warnNum=0;
int noticeNum=0;
for (IdxBizFanWarningRuleSet e : idxBizPvWarningRuleSets) { for (IdxBizFanWarningRuleSet e : idxBizPvWarningRuleSets) {
switch (e.getWarningName()){ switch (e.getWarningName()){
case "警告": case "警告":
healthValueWarn = Double.parseDouble(e.getWarningIf().substring(2)); healthValueWarn = Double.parseDouble(e.getWarningIf().substring(2));
healthValueWarnCount =Long.parseLong(e.getWarningCycle()); healthValueWarnCount =Integer.parseInt(e.getWarningCycle());
break; break;
case "危险": case "危险":
healthValueRisk = Double.parseDouble(e.getWarningIf().substring(2)); healthValueRisk = Double.parseDouble(e.getWarningIf().substring(2));
healthValueRiskCount =Long.parseLong(e.getWarningCycle()); healthValueRiskCount =Integer.parseInt(e.getWarningCycle());
break; break;
case "注意": case "注意":
healthValueNotice = Double.parseDouble(e.getWarningIf().substring(2)); healthValueNotice = Double.parseDouble(e.getWarningIf().substring(2));
healthValueNoticeCount =Long.parseLong(e.getWarningCycle()); healthValueNoticeCount =Integer.parseInt(e.getWarningCycle());
break; break;
} }
...@@ -1095,13 +1188,27 @@ public class HealthStatusIndicatorServiceImpl { ...@@ -1095,13 +1188,27 @@ public class HealthStatusIndicatorServiceImpl {
List<Double> healthIndex = idxBizFanHealthIndices.stream().map(FanHealthIndexDay::getHealthIndex).collect(Collectors.toList()); List<Double> healthIndex = idxBizFanHealthIndices.stream().map(FanHealthIndexDay::getHealthIndex).collect(Collectors.toList());
// Double finalHealthValueRisk = healthValueRisk;
// long riskNum = healthIndex.subList(healthIndex.size()>healthValueRiskCount? (int) (healthIndex.size() - healthValueRiskCount) :0,healthIndex.size()).stream().filter(e -> e <= finalHealthValueRisk).count();
// Double finalHealthValueWarn = healthValueWarn;
// long warnNum = healthIndex.subList(healthIndex.size()>healthValueWarnCount? (int) (healthIndex.size() - healthValueWarnCount) :0,healthIndex.size()).stream().filter(e -> e <= finalHealthValueWarn).count();
// Double finalHealthValueNotice = healthValueNotice;
// long noticeNum = healthIndex.subList(healthIndex.size()>healthValueNoticeCount? (int) (healthIndex.size() - healthValueNoticeCount) :0,healthIndex.size()).stream().filter(e -> e <= finalHealthValueNotice).count();
Double finalHealthValueRisk = healthValueRisk; Double finalHealthValueRisk = healthValueRisk;
long riskNum = healthIndex.subList(healthIndex.size()>healthValueRiskCount? (int) (healthIndex.size() - healthValueRiskCount) :0,healthIndex.size()).stream().filter(e -> e <= finalHealthValueRisk).count(); if(healthIndex.size()>=healthValueRiskCount){
List<Double> healthIndexList = healthIndex.subList(healthIndex.size()-healthValueRiskCount,healthIndex.size());
riskNum = (int) healthIndexList.stream().filter(e -> e <= finalHealthValueRisk).count();
}
Double finalHealthValueWarn = healthValueWarn; Double finalHealthValueWarn = healthValueWarn;
long warnNum = healthIndex.subList(healthIndex.size()>healthValueWarnCount? (int) (healthIndex.size() - healthValueWarnCount) :0,healthIndex.size()).stream().filter(e -> e <= finalHealthValueWarn).count(); if(healthIndex.size()>=healthValueWarnCount){
List<Double> healthIndexList = healthIndex.subList(healthIndex.size()-healthValueWarnCount,healthIndex.size());
warnNum = (int) healthIndexList.stream().filter(e -> e <= finalHealthValueWarn).count();
}
Double finalHealthValueNotice = healthValueNotice; Double finalHealthValueNotice = healthValueNotice;
long noticeNum = healthIndex.subList(healthIndex.size()>healthValueNoticeCount? (int) (healthIndex.size() - healthValueNoticeCount) :0,healthIndex.size()).stream().filter(e -> e <= finalHealthValueNotice).count(); if(healthIndex.size()>=healthValueNoticeCount){
List<Double> healthIndexList = healthIndex.subList(healthIndex.size()-healthValueWarnCount,healthIndex.size());
noticeNum = (int) healthIndexList.stream().filter(e -> e <= finalHealthValueNotice).count();
}
String level = ""; String level = "";
String content = ""; String content = "";
String num = ""; String num = "";
......
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