密码规则配置功能
This commit is contained in:
@@ -81,7 +81,7 @@ public class CarryCapcityServiceImpl implements CarryCapcityService {
|
||||
private final RedisUtil redisUtil;
|
||||
private final CarryCapacityResultPOService carryCapacityResultPOService;
|
||||
private final CarryCapacityUserPOService carryCapacityUserPOService;
|
||||
private static final double DEFAULTVALUE=3141.5926;
|
||||
private static final double DEFAULTVALUE=3.1415926;
|
||||
|
||||
private final FileStorageUtil fileStorageUtil;
|
||||
|
||||
@@ -152,7 +152,7 @@ public class CarryCapcityServiceImpl implements CarryCapcityService {
|
||||
缺失布置3.1415926,后边更具3.1415926个数来判断数据完整性,及进行数据补充*/
|
||||
//有功功率
|
||||
String SqlP1 = "select mean(p)*1000 as value from data_harmpower_p where value_type='CP95' and phasic_type!='T' and line_id='"+lineId+
|
||||
"' and time >= '" + startTime + "'and time <= '" +endTime + "'"+"group by time("+timeInterval+"m) ,* fill(3.1415926)"+InfluxDBPublicParam.TIME_ZONE;
|
||||
"' and time >= '" + startTime + "'and time <= '" +endTime + "'"+"group by time("+timeInterval+"m) ,* fill(0.0031415926)"+InfluxDBPublicParam.TIME_ZONE;
|
||||
dataHarmPowerPList = dataHarmPowerPMapper.getSqlResult(SqlP1);
|
||||
|
||||
//数据校验
|
||||
@@ -172,7 +172,7 @@ public class CarryCapcityServiceImpl implements CarryCapcityService {
|
||||
|
||||
//无功功率
|
||||
String SqlQ1 = "select mean(q)*1000 as value from data_harmpower_q where value_type='CP95' and phasic_type!='T' and line_id='"+lineId+
|
||||
"' and time >= '" + startTime + "'and time <= '" +endTime + "'"+"group by time("+timeInterval+"m) ,* fill(3.1415926)"+InfluxDBPublicParam.TIME_ZONE;
|
||||
"' and time >= '" + startTime + "'and time <= '" +endTime + "'"+"group by time("+timeInterval+"m) ,* fill(0.0031415926)"+InfluxDBPublicParam.TIME_ZONE;
|
||||
dataHarmPowerQList = dataHarmPowerQMapper.getSqlResult(SqlQ1);
|
||||
//数据缺失填补
|
||||
//数据校验
|
||||
@@ -201,7 +201,7 @@ public class CarryCapcityServiceImpl implements CarryCapcityService {
|
||||
, formatter) + " 23:59:00";
|
||||
|
||||
String SqlP2 = "select mean(p)*1000 as value from data_harmpower_p where value_type='CP95' and phasic_type!='T' and line_id='"+lineId+
|
||||
"' and time >= '" + forwardStartTime + "'and time <= '" +forwardEndTime + "'"+"group by time("+timeInterval+"m) ,* fill(3.1415926)"+InfluxDBPublicParam.TIME_ZONE;
|
||||
"' and time >= '" + forwardStartTime + "'and time <= '" +forwardEndTime + "'"+"group by time("+timeInterval+"m) ,* fill(0.0031415926)"+InfluxDBPublicParam.TIME_ZONE;
|
||||
dataHarmPowerP2List = dataHarmPowerPMapper.getSqlResult(SqlP2);
|
||||
//数据校验
|
||||
if(CollectionUtil.isEmpty(dataHarmPowerP2List)){
|
||||
@@ -220,7 +220,7 @@ public class CarryCapcityServiceImpl implements CarryCapcityService {
|
||||
|
||||
//无功功率
|
||||
String SqlQ2 = "select mean(q)*1000 as value from data_harmpower_q where value_type='CP95' and phasic_type!='T' and line_id='"+lineId+
|
||||
"' and time >= '" + forwardStartTime + "'and time <= '" +forwardEndTime + "'"+"group by time("+timeInterval+"m) ,* fill(3.1415926)"+InfluxDBPublicParam.TIME_ZONE;
|
||||
"' and time >= '" + forwardStartTime + "'and time <= '" +forwardEndTime + "'"+"group by time("+timeInterval+"m) ,* fill(0.0031415926)"+InfluxDBPublicParam.TIME_ZONE;
|
||||
dataHarmPowerQ2List = dataHarmPowerQMapper.getSqlResult(SqlQ2);
|
||||
//数据校验
|
||||
//数据校验
|
||||
@@ -240,7 +240,7 @@ public class CarryCapcityServiceImpl implements CarryCapcityService {
|
||||
|
||||
//电压
|
||||
String SqlU2 = "select mean(rms)*1000 as value from data_v where value_type='CP95' and phasic_type!='T' and line_id='"+lineId+
|
||||
"' and time >= '" + forwardStartTime + "'and time <= '" +forwardEndTime + "'"+"group by time("+timeInterval+"m) ,* fill(3.1415926)"+InfluxDBPublicParam.TIME_ZONE;
|
||||
"' and time >= '" + forwardStartTime + "'and time <= '" +forwardEndTime + "'"+"group by time("+timeInterval+"m) ,* fill(0.0031415926)"+InfluxDBPublicParam.TIME_ZONE;
|
||||
dataHarmPowerU2List = dataVMapper.getSqlResult(SqlU2);
|
||||
//数据校验
|
||||
//数据校验
|
||||
@@ -325,7 +325,7 @@ public class CarryCapcityServiceImpl implements CarryCapcityService {
|
||||
if(CollectionUtil.isEmpty(dataHarmPowerQList)){
|
||||
//无功功率
|
||||
String SqlQ1 = "select mean(q)*1000 as value from data_harmpower_q where value_type='CP95' and phasic_type!='T' and line_id='"+lineId+
|
||||
"' and time >= '" + startTime + "'and time <= '" +endTime + "'"+"group by time("+timeInterval+"m) ,* fill(3.1415926)"+InfluxDBPublicParam.TIME_ZONE;
|
||||
"' and time >= '" + startTime + "'and time <= '" +endTime + "'"+"group by time("+timeInterval+"m) ,* fill(0.0031415926)"+InfluxDBPublicParam.TIME_ZONE;
|
||||
dataHarmPowerQList = dataHarmPowerQMapper.getSqlResult(SqlQ1);
|
||||
if(CollectionUtil.isEmpty(dataHarmPowerQList)){
|
||||
throw new BusinessException(AdvanceResponseEnum.DATA_NOT_FOUND);
|
||||
@@ -796,7 +796,7 @@ public class CarryCapcityServiceImpl implements CarryCapcityService {
|
||||
, formatter) + " 23:59:00";
|
||||
|
||||
String SqlP2 = "select mean(p)*1000 as value from data_harmpower_p where value_type='CP95' and phasic_type!='T' and line_id='"+lineId+
|
||||
"' and time >= '" + forwardStartTime + "'and time <= '" +forwardEndTime + "'"+"group by time("+timeInterval+"m) ,* fill(3.1415926)"+InfluxDBPublicParam.TIME_ZONE;
|
||||
"' and time >= '" + forwardStartTime + "'and time <= '" +forwardEndTime + "'"+"group by time("+timeInterval+"m) ,* fill(0.0031415926)"+InfluxDBPublicParam.TIME_ZONE;
|
||||
dataHarmPowerP2List = dataHarmPowerPMapper.getSqlResult(SqlP2);
|
||||
//数据校验
|
||||
if(CollectionUtil.isEmpty(dataHarmPowerP2List)){
|
||||
@@ -818,14 +818,14 @@ public class CarryCapcityServiceImpl implements CarryCapcityService {
|
||||
|
||||
//无功功率
|
||||
String SqlQ2 = "select mean(q)*1000 as value from data_harmpower_q where value_type='CP95' and phasic_type!='T' and line_id='"+lineId+
|
||||
"' and time >= '" + forwardStartTime + "'and time <= '" +forwardEndTime + "'"+"group by time("+timeInterval+"m) ,* fill(3.1415926)"+InfluxDBPublicParam.TIME_ZONE;
|
||||
"' and time >= '" + forwardStartTime + "'and time <= '" +forwardEndTime + "'"+"group by time("+timeInterval+"m) ,* fill(0.0031415926)"+InfluxDBPublicParam.TIME_ZONE;
|
||||
dataHarmPowerQ2List = dataHarmPowerQMapper.getSqlResult(SqlQ2);
|
||||
//数据校验
|
||||
//数据缺失填补
|
||||
linearInterpolation(dataHarmPowerQ2List);
|
||||
//电压
|
||||
String SqlU2 = "select mean(rms)*1000 as value from data_v where value_type='CP95' and phasic_type!='T' and line_id='"+lineId+
|
||||
"' and time >= '" + forwardStartTime + "'and time <= '" +forwardEndTime + "'"+"group by time("+timeInterval+"m) ,* fill(3.1415926)"+InfluxDBPublicParam.TIME_ZONE;
|
||||
"' and time >= '" + forwardStartTime + "'and time <= '" +forwardEndTime + "'"+"group by time("+timeInterval+"m) ,* fill(0.0031415926)"+InfluxDBPublicParam.TIME_ZONE;
|
||||
dataHarmPowerU2List = dataVMapper.getSqlResult(SqlU2);
|
||||
//数据校验
|
||||
|
||||
@@ -1163,24 +1163,31 @@ public class CarryCapcityServiceImpl implements CarryCapcityService {
|
||||
*/
|
||||
public static void linearInterpolation(List<CarryCapcityData> data) {
|
||||
|
||||
for (int i = 0; i < data.size(); i++) {
|
||||
if (data.get(i).getValue() == DEFAULTVALUE ||Objects.isNull(data.get(i).getValue())) {
|
||||
int prevIndex = i - 1;
|
||||
int nextIndex = i + 1;
|
||||
while (prevIndex >= 0 && (data.get(prevIndex).getValue() == DEFAULTVALUE|| Objects.isNull(data.get(prevIndex).getValue()))) {
|
||||
prevIndex--;
|
||||
}
|
||||
while (nextIndex < data.size() && (data.get(nextIndex).getValue() == DEFAULTVALUE|| Objects.isNull(data.get(nextIndex).getValue()))) {
|
||||
nextIndex++;
|
||||
}
|
||||
if (prevIndex >= 0 && nextIndex < data.size()) {
|
||||
double slope = (data.get(nextIndex).getValue() - data.get(prevIndex).getValue()) / (nextIndex - prevIndex);
|
||||
data.get(i).setValue(data.get(prevIndex).getValue() + slope * (i - prevIndex));
|
||||
} else {
|
||||
data.get(i).setValue(DEFAULTVALUE);
|
||||
|
||||
|
||||
data.stream().collect(Collectors.groupingBy(CarryCapcityData::getPhaseType)).forEach((k,v)->{
|
||||
|
||||
for (int i = 0; i < v.size(); i++) {
|
||||
if (v.get(i).getValue() == DEFAULTVALUE ||Objects.isNull(v.get(i).getValue())) {
|
||||
int prevIndex = i - 1;
|
||||
int nextIndex = i + 1;
|
||||
while (prevIndex >= 0 && (v.get(prevIndex).getValue() == DEFAULTVALUE|| Objects.isNull(v.get(prevIndex).getValue()))) {
|
||||
prevIndex--;
|
||||
}
|
||||
while (nextIndex < v.size() && (v.get(nextIndex).getValue() == DEFAULTVALUE|| Objects.isNull(v.get(nextIndex).getValue()))) {
|
||||
nextIndex++;
|
||||
}
|
||||
if (prevIndex >= 0 && nextIndex < v.size()) {
|
||||
double slope = (v.get(nextIndex).getValue() - v.get(prevIndex).getValue()) / (nextIndex - prevIndex);
|
||||
v.get(i).setValue(v.get(prevIndex).getValue() + slope * (i - prevIndex));
|
||||
} else {
|
||||
v.get(i).setValue(DEFAULTVALUE);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
|
||||
}
|
||||
/**
|
||||
@@ -1192,72 +1199,76 @@ public class CarryCapcityServiceImpl implements CarryCapcityService {
|
||||
*/
|
||||
public static void linearInterpolationI(List<DataI> data) {
|
||||
|
||||
for (int i = 0; i < data.size(); i++) {
|
||||
if (data.get(i).getI2() == DEFAULTVALUE||Objects.isNull(data.get(i).getI2())) {
|
||||
int prevIndex = i - 1;
|
||||
int nextIndex = i + 1;
|
||||
while (prevIndex >= 0 && (data.get(prevIndex).getI2() == DEFAULTVALUE||Objects.isNull(data.get(prevIndex).getI2()))) {
|
||||
prevIndex--;
|
||||
}
|
||||
while (nextIndex < data.size() && (data.get(nextIndex).getI2() == DEFAULTVALUE||Objects.isNull(data.get(nextIndex).getI2()))) {
|
||||
nextIndex++;
|
||||
}
|
||||
if (prevIndex >= 0 && nextIndex < data.size()) {
|
||||
double slope = (data.get(nextIndex).getI2() - data.get(prevIndex).getI2()) / (nextIndex - prevIndex);
|
||||
data.get(i).setI2(data.get(prevIndex).getI2() + slope * (i - prevIndex));
|
||||
data.get(i).setI3(data.get(prevIndex).getI3() + slope * (i - prevIndex));
|
||||
data.get(i).setI4(data.get(prevIndex).getI4() + slope * (i - prevIndex));
|
||||
data.get(i).setI5(data.get(prevIndex).getI5() + slope * (i - prevIndex));
|
||||
data.get(i).setI6(data.get(prevIndex).getI6() + slope * (i - prevIndex));
|
||||
data.get(i).setI7(data.get(prevIndex).getI7() + slope * (i - prevIndex));
|
||||
data.get(i).setI8(data.get(prevIndex).getI8() + slope * (i - prevIndex));
|
||||
data.get(i).setI9(data.get(prevIndex).getI9() + slope * (i - prevIndex));
|
||||
data.get(i).setI10(data.get(prevIndex).getI10() + slope * (i - prevIndex));
|
||||
data.get(i).setI11(data.get(prevIndex).getI11() + slope * (i - prevIndex));
|
||||
data.get(i).setI12(data.get(prevIndex).getI12() + slope * (i - prevIndex));
|
||||
data.get(i).setI13(data.get(prevIndex).getI13() + slope * (i - prevIndex));
|
||||
data.get(i).setI14(data.get(prevIndex).getI14() + slope * (i - prevIndex));
|
||||
data.get(i).setI15(data.get(prevIndex).getI15() + slope * (i - prevIndex));
|
||||
data.get(i).setI16(data.get(prevIndex).getI16() + slope * (i - prevIndex));
|
||||
data.get(i).setI17(data.get(prevIndex).getI17() + slope * (i - prevIndex));
|
||||
data.get(i).setI18(data.get(prevIndex).getI18() + slope * (i - prevIndex));
|
||||
data.get(i).setI19(data.get(prevIndex).getI19() + slope * (i - prevIndex));
|
||||
data.get(i).setI20(data.get(prevIndex).getI20() + slope * (i - prevIndex));
|
||||
data.get(i).setI21(data.get(prevIndex).getI21() + slope * (i - prevIndex));
|
||||
data.get(i).setI22(data.get(prevIndex).getI22() + slope * (i - prevIndex));
|
||||
data.get(i).setI23(data.get(prevIndex).getI23() + slope * (i - prevIndex));
|
||||
data.get(i).setI24(data.get(prevIndex).getI24() + slope * (i - prevIndex));
|
||||
data.get(i).setI25(data.get(prevIndex).getI25() + slope * (i - prevIndex));
|
||||
data.stream().collect(Collectors.groupingBy(DataI::getPhaseType)).forEach((k,v)->{
|
||||
for (int i = 0; i < v.size(); i++) {
|
||||
if (v.get(i).getI2() == DEFAULTVALUE||Objects.isNull(v.get(i).getI2())) {
|
||||
int prevIndex = i - 1;
|
||||
int nextIndex = i + 1;
|
||||
while (prevIndex >= 0 && (v.get(prevIndex).getI2() == DEFAULTVALUE||Objects.isNull(v.get(prevIndex).getI2()))) {
|
||||
prevIndex--;
|
||||
}
|
||||
while (nextIndex < v.size() && (v.get(nextIndex).getI2() == DEFAULTVALUE||Objects.isNull(v.get(nextIndex).getI2()))) {
|
||||
nextIndex++;
|
||||
}
|
||||
if (prevIndex >= 0 && nextIndex < v.size()) {
|
||||
double slope = (v.get(nextIndex).getI2() - v.get(prevIndex).getI2()) / (nextIndex - prevIndex);
|
||||
v.get(i).setI2(v.get(prevIndex).getI2() + slope * (i - prevIndex));
|
||||
v.get(i).setI3(v.get(prevIndex).getI3() + slope * (i - prevIndex));
|
||||
v.get(i).setI4(v.get(prevIndex).getI4() + slope * (i - prevIndex));
|
||||
v.get(i).setI5(v.get(prevIndex).getI5() + slope * (i - prevIndex));
|
||||
v.get(i).setI6(v.get(prevIndex).getI6() + slope * (i - prevIndex));
|
||||
v.get(i).setI7(v.get(prevIndex).getI7() + slope * (i - prevIndex));
|
||||
v.get(i).setI8(v.get(prevIndex).getI8() + slope * (i - prevIndex));
|
||||
v.get(i).setI9(v.get(prevIndex).getI9() + slope * (i - prevIndex));
|
||||
v.get(i).setI10(v.get(prevIndex).getI10() + slope * (i - prevIndex));
|
||||
v.get(i).setI11(v.get(prevIndex).getI11() + slope * (i - prevIndex));
|
||||
v.get(i).setI12(v.get(prevIndex).getI12() + slope * (i - prevIndex));
|
||||
v.get(i).setI13(v.get(prevIndex).getI13() + slope * (i - prevIndex));
|
||||
v.get(i).setI14(v.get(prevIndex).getI14() + slope * (i - prevIndex));
|
||||
v.get(i).setI15(v.get(prevIndex).getI15() + slope * (i - prevIndex));
|
||||
v.get(i).setI16(v.get(prevIndex).getI16() + slope * (i - prevIndex));
|
||||
v.get(i).setI17(v.get(prevIndex).getI17() + slope * (i - prevIndex));
|
||||
v.get(i).setI18(v.get(prevIndex).getI18() + slope * (i - prevIndex));
|
||||
v.get(i).setI19(v.get(prevIndex).getI19() + slope * (i - prevIndex));
|
||||
v.get(i).setI20(v.get(prevIndex).getI20() + slope * (i - prevIndex));
|
||||
v.get(i).setI21(v.get(prevIndex).getI21() + slope * (i - prevIndex));
|
||||
v.get(i).setI22(v.get(prevIndex).getI22() + slope * (i - prevIndex));
|
||||
v.get(i).setI23(v.get(prevIndex).getI23() + slope * (i - prevIndex));
|
||||
v.get(i).setI24(v.get(prevIndex).getI24() + slope * (i - prevIndex));
|
||||
v.get(i).setI25(v.get(prevIndex).getI25() + slope * (i - prevIndex));
|
||||
|
||||
} else {
|
||||
data.get(i).setI2(DEFAULTVALUE);
|
||||
data.get(i).setI3(DEFAULTVALUE);
|
||||
data.get(i).setI4(DEFAULTVALUE);
|
||||
data.get(i).setI5(DEFAULTVALUE);
|
||||
data.get(i).setI6(DEFAULTVALUE);
|
||||
data.get(i).setI7(DEFAULTVALUE);
|
||||
data.get(i).setI8(DEFAULTVALUE);
|
||||
data.get(i).setI9(DEFAULTVALUE);
|
||||
data.get(i).setI10(DEFAULTVALUE);
|
||||
data.get(i).setI11(DEFAULTVALUE);
|
||||
data.get(i).setI12(DEFAULTVALUE);
|
||||
data.get(i).setI13(DEFAULTVALUE);
|
||||
data.get(i).setI14(DEFAULTVALUE);
|
||||
data.get(i).setI15(DEFAULTVALUE);
|
||||
data.get(i).setI16(DEFAULTVALUE);
|
||||
data.get(i).setI17(DEFAULTVALUE);
|
||||
data.get(i).setI18(DEFAULTVALUE);
|
||||
data.get(i).setI19(DEFAULTVALUE);
|
||||
data.get(i).setI20(DEFAULTVALUE);
|
||||
data.get(i).setI21(DEFAULTVALUE);
|
||||
data.get(i).setI22(DEFAULTVALUE);
|
||||
data.get(i).setI23(DEFAULTVALUE);
|
||||
data.get(i).setI24(DEFAULTVALUE);
|
||||
data.get(i).setI25(DEFAULTVALUE);
|
||||
} else {
|
||||
v.get(i).setI2(DEFAULTVALUE);
|
||||
v.get(i).setI3(DEFAULTVALUE);
|
||||
v.get(i).setI4(DEFAULTVALUE);
|
||||
v.get(i).setI5(DEFAULTVALUE);
|
||||
v.get(i).setI6(DEFAULTVALUE);
|
||||
v.get(i).setI7(DEFAULTVALUE);
|
||||
v.get(i).setI8(DEFAULTVALUE);
|
||||
v.get(i).setI9(DEFAULTVALUE);
|
||||
v.get(i).setI10(DEFAULTVALUE);
|
||||
v.get(i).setI11(DEFAULTVALUE);
|
||||
v.get(i).setI12(DEFAULTVALUE);
|
||||
v.get(i).setI13(DEFAULTVALUE);
|
||||
v.get(i).setI14(DEFAULTVALUE);
|
||||
v.get(i).setI15(DEFAULTVALUE);
|
||||
v.get(i).setI16(DEFAULTVALUE);
|
||||
v.get(i).setI17(DEFAULTVALUE);
|
||||
v.get(i).setI18(DEFAULTVALUE);
|
||||
v.get(i).setI19(DEFAULTVALUE);
|
||||
v.get(i).setI20(DEFAULTVALUE);
|
||||
v.get(i).setI21(DEFAULTVALUE);
|
||||
v.get(i).setI22(DEFAULTVALUE);
|
||||
v.get(i).setI23(DEFAULTVALUE);
|
||||
v.get(i).setI24(DEFAULTVALUE);
|
||||
v.get(i).setI25(DEFAULTVALUE);
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
|
||||
}
|
||||
/**
|
||||
|
||||
Reference in New Issue
Block a user