河北超高压算法调整
This commit is contained in:
@@ -145,67 +145,59 @@ public class DayDataServiceImpl implements DayDataService {
|
||||
|
||||
List<String> lineIds = calculatedParam.getIdList();
|
||||
//河北数据量较大,以尺寸20分片
|
||||
List<List<String>> pendingIds = ListUtils.partition(lineIds,5);
|
||||
List<List<String>> pendingIds = ListUtils.partition(lineIds,1);
|
||||
String beginDay =LocalDateTimeUtil.format(LocalDateTimeUtil.beginOfDay(LocalDateTimeUtil.parse(calculatedParam.getDataDate(), DatePattern.NORM_DATE_PATTERN)),DatePattern.NORM_DATETIME_PATTERN);
|
||||
String endDay = LocalDateTimeUtil.format(LocalDateTimeUtil.endOfDay(LocalDateTimeUtil.parse(calculatedParam.getDataDate(), DatePattern.NORM_DATE_PATTERN)),DatePattern.NORM_DATETIME_PATTERN);
|
||||
lineIds.forEach(item->{
|
||||
for (List<String> pendingId : pendingIds) {
|
||||
//获取dataV数据
|
||||
List<DataV> vList = getDataV(item,beginDay,endDay);
|
||||
List<DataV> vList = getDataV(pendingId,beginDay,endDay);
|
||||
list1.addAll(vList);
|
||||
});
|
||||
log.info("mysql入库数据:" + list1);
|
||||
|
||||
// for (List<String> pendingId : pendingIds) {
|
||||
// //获取dataV数据
|
||||
// List<DataV> vList = getDataV(pendingId,beginDay,endDay);
|
||||
// log.info("mysql入库数据:" + vList);
|
||||
// list1.addAll(vList);
|
||||
//获取dataI数据
|
||||
//List<DataI> iList = getDataI(pendingId,beginDay,endDay);
|
||||
//list2.addAll(iList);
|
||||
List<DataI> iList = getDataI(pendingId,beginDay,endDay);
|
||||
list2.addAll(iList);
|
||||
//获取dataFlicker数据
|
||||
//List<DataFlicker> dataFlickerList = getDataFlicker(pendingId,beginDay,endDay);
|
||||
//list3.addAll(dataFlickerList);
|
||||
List<DataFlicker> dataFlickerList = getDataFlicker(pendingId,beginDay,endDay);
|
||||
list3.addAll(dataFlickerList);
|
||||
//获取dataFluc数据
|
||||
//List<DataFluc> dataFlucList = getDataFluc(pendingId,beginDay,endDay);
|
||||
//list4.addAll(dataFlucList);
|
||||
List<DataFluc> dataFlucList = getDataFluc(pendingId,beginDay,endDay);
|
||||
list4.addAll(dataFlucList);
|
||||
//获取DataHarmPhasicI数据
|
||||
//List<DataHarmPhasicI> dataHarmPhasicIList = getDataHarmphasicI(pendingId,beginDay,endDay);
|
||||
//list5.addAll(dataHarmPhasicIList);
|
||||
List<DataHarmPhasicI> dataHarmPhasicIList = getDataHarmphasicI(pendingId,beginDay,endDay);
|
||||
list5.addAll(dataHarmPhasicIList);
|
||||
//获取DataHarmPhasicV数据
|
||||
//List<DataHarmPhasicV> dataHarmPhasicVList = getDataHarmphasicV(pendingId,beginDay,endDay);
|
||||
//list6.addAll(dataHarmPhasicVList);
|
||||
List<DataHarmPhasicV> dataHarmPhasicVList = getDataHarmphasicV(pendingId,beginDay,endDay);
|
||||
list6.addAll(dataHarmPhasicVList);
|
||||
//获取data_harmpower_p数据
|
||||
//List<DataHarmPowerP> dataHarmPowerPList = getDataHarmPowerP(pendingId,beginDay,endDay);
|
||||
//list7.addAll(dataHarmPowerPList);
|
||||
List<DataHarmPowerP> dataHarmPowerPList = getDataHarmPowerP(pendingId,beginDay,endDay);
|
||||
list7.addAll(dataHarmPowerPList);
|
||||
//获取data_harmpower_q数据
|
||||
//List<DataHarmPowerQ> dataHarmPowerQList = getDataHarmPowerQ(pendingId,beginDay,endDay);
|
||||
//list8.addAll(dataHarmPowerQList);
|
||||
List<DataHarmPowerQ> dataHarmPowerQList = getDataHarmPowerQ(pendingId,beginDay,endDay);
|
||||
list8.addAll(dataHarmPowerQList);
|
||||
//获取data_harmpower_s数据
|
||||
//List<DataHarmPowerS> dataHarmPowerSList = getDataHarmPowerS(pendingId,beginDay,endDay);
|
||||
//list9.addAll(dataHarmPowerSList);
|
||||
List<DataHarmPowerS> dataHarmPowerSList = getDataHarmPowerS(pendingId,beginDay,endDay);
|
||||
list9.addAll(dataHarmPowerSList);
|
||||
//获取data_harmrate_i数据
|
||||
//List<DataHarmRateI> dataHarmRateIList = getDataHarmRateI(pendingId,beginDay,endDay);
|
||||
//list10.addAll(dataHarmRateIList);
|
||||
List<DataHarmRateI> dataHarmRateIList = getDataHarmRateI(pendingId,beginDay,endDay);
|
||||
list10.addAll(dataHarmRateIList);
|
||||
//获取data_harmrate_v数据
|
||||
//List<DataHarmRateV> dataHarmRateVList = getDataHarmRateV(pendingId,beginDay,endDay);
|
||||
//list11.addAll(dataHarmRateVList);
|
||||
List<DataHarmRateV> dataHarmRateVList = getDataHarmRateV(pendingId,beginDay,endDay);
|
||||
list11.addAll(dataHarmRateVList);
|
||||
//获取data_inharm_i数据
|
||||
//List<DataInHarmI> dataInHarmIList = getDataInHarmI(pendingId,beginDay,endDay);
|
||||
//list12.addAll(dataInHarmIList);
|
||||
List<DataInHarmI> dataInHarmIList = getDataInHarmI(pendingId,beginDay,endDay);
|
||||
list12.addAll(dataInHarmIList);
|
||||
//获取data_inharm_v数据
|
||||
//List<DataInHarmV> dataInHarmVList = getDataInHarmV(pendingId,beginDay,endDay);
|
||||
//list13.addAll(dataInHarmVList);
|
||||
List<DataInHarmV> dataInHarmVList = getDataInHarmV(pendingId,beginDay,endDay);
|
||||
list13.addAll(dataInHarmVList);
|
||||
//获取data_inharmrate_i数据 influxDB暂无此表数据,统计待定
|
||||
//List<DataInHarmRateI> dataInHarmRateIList = getDataInHarmRateI(pendingId,beginDay,endDay);
|
||||
//list14.addAll(dataInHarmRateIList);
|
||||
List<DataInHarmRateI> dataInHarmRateIList = getDataInHarmRateI(pendingId,beginDay,endDay);
|
||||
list14.addAll(dataInHarmRateIList);
|
||||
//获取data_inharmrate_v数据 influxDB暂无此表数据,统计待定
|
||||
//List<DataInHarmRateV> dataInHarmRateVList = getDataInHarmRateV(pendingId,beginDay,endDay);
|
||||
//list15.addAll(dataInHarmRateVList);
|
||||
List<DataInHarmRateV> dataInHarmRateVList = getDataInHarmRateV(pendingId,beginDay,endDay);
|
||||
list15.addAll(dataInHarmRateVList);
|
||||
//获取data_plt数据
|
||||
//List<DataPlt> dataPltList = getDataPlt(pendingId,beginDay,endDay);
|
||||
//list16.addAll(dataPltList);
|
||||
// }
|
||||
List<DataPlt> dataPltList = getDataPlt(pendingId,beginDay,endDay);
|
||||
list16.addAll(dataPltList);
|
||||
}
|
||||
//dataV数据入库
|
||||
if (!CollectionUtils.isEmpty(list1)) {
|
||||
for (DataV item : list1) {
|
||||
@@ -451,12 +443,12 @@ public class DayDataServiceImpl implements DayDataService {
|
||||
* @param endTime 结束时间
|
||||
* @return
|
||||
*/
|
||||
public List<DataV> getDataV(String lineIndex, String startTime, String endTime) {
|
||||
public List<DataV> getDataV(List<String> lineIndex, String startTime, String endTime) {
|
||||
List<DataV> result = new ArrayList<>();
|
||||
//最小值
|
||||
InfluxQueryWrapper influxQueryWrapper = new InfluxQueryWrapper(DataV.class);
|
||||
influxQueryWrapper.minSamePrefixAndSuffix(InfluxDbSqlConstant.V,"", HarmonicTimesUtil.harmonicTimesList(1,50,1));
|
||||
influxQueryWrapper.eq(DataV::getLineId, lineIndex)
|
||||
influxQueryWrapper.regular(DataV::getLineId, lineIndex)
|
||||
.eq(DataV::getValueType, InfluxDbSqlConstant.MIN)
|
||||
.min(DataV::getFreq)
|
||||
.min(DataV::getFreqDev)
|
||||
@@ -472,12 +464,11 @@ public class DayDataServiceImpl implements DayDataService {
|
||||
.groupBy(DataV::getLineId,DataV::getPhasicType,DataV::getQualityFlag,DataV::getValueType)
|
||||
.between(DataV::getTime, startTime, endTime);
|
||||
List<DataV> result1 = dataVMapper.getStatisticsByWraper(influxQueryWrapper);
|
||||
log.info("最小值数据:" + result1);
|
||||
result.addAll(result1);
|
||||
//最大值
|
||||
InfluxQueryWrapper influxQueryWrapper2 = new InfluxQueryWrapper(DataV.class);
|
||||
influxQueryWrapper2.maxSamePrefixAndSuffix(InfluxDbSqlConstant.V,"", HarmonicTimesUtil.harmonicTimesList(1,50,1));
|
||||
influxQueryWrapper2.eq(DataV::getLineId, lineIndex)
|
||||
influxQueryWrapper2.regular(DataV::getLineId, lineIndex)
|
||||
.eq(DataV::getValueType, InfluxDbSqlConstant.MAX)
|
||||
.max(DataV::getFreq)
|
||||
.max(DataV::getFreqDev)
|
||||
@@ -493,12 +484,11 @@ public class DayDataServiceImpl implements DayDataService {
|
||||
.groupBy(DataV::getLineId,DataV::getPhasicType,DataV::getQualityFlag,DataV::getValueType)
|
||||
.between(DataV::getTime, startTime, endTime);
|
||||
List<DataV> result2 = dataVMapper.getStatisticsByWraper(influxQueryWrapper2);
|
||||
log.info("最大值数据:" + result2);
|
||||
result.addAll(result2);
|
||||
//平均值
|
||||
InfluxQueryWrapper influxQueryWrapper3 = new InfluxQueryWrapper(DataV.class);
|
||||
influxQueryWrapper3.meanSamePrefixAndSuffix(InfluxDbSqlConstant.V,"", HarmonicTimesUtil.harmonicTimesList(1,50,1));
|
||||
influxQueryWrapper3.eq(DataV::getLineId, lineIndex)
|
||||
influxQueryWrapper3.regular(DataV::getLineId, lineIndex)
|
||||
.eq(DataV::getValueType, InfluxDbSqlConstant.AVG_WEB)
|
||||
.mean(DataV::getFreq)
|
||||
.mean(DataV::getFreqDev)
|
||||
@@ -514,12 +504,11 @@ public class DayDataServiceImpl implements DayDataService {
|
||||
.groupBy(DataV::getLineId,DataV::getPhasicType,DataV::getQualityFlag,DataV::getValueType)
|
||||
.between(DataV::getTime, startTime, endTime);
|
||||
List<DataV> result3 = dataVMapper.getStatisticsByWraper(influxQueryWrapper3);
|
||||
log.info("平均值数据:" + result3);
|
||||
result.addAll(result3);
|
||||
//CP95(取平均值的CP95值)
|
||||
InfluxQueryWrapper influxQueryWrapper4 = new InfluxQueryWrapper(DataV.class);
|
||||
influxQueryWrapper4.percentileSamePrefixAndSuffix(InfluxDbSqlConstant.V,"", HarmonicTimesUtil.harmonicTimesList(1,50,1),95);
|
||||
influxQueryWrapper4.eq(DataV::getLineId, lineIndex)
|
||||
influxQueryWrapper4.regular(DataV::getLineId, lineIndex)
|
||||
.eq(DataV::getValueType, InfluxDbSqlConstant.AVG_WEB)
|
||||
.percentile(DataV::getFreq,95)
|
||||
.percentile(DataV::getFreqDev,95)
|
||||
@@ -535,104 +524,12 @@ public class DayDataServiceImpl implements DayDataService {
|
||||
.groupBy(DataV::getLineId,DataV::getPhasicType,DataV::getQualityFlag,DataV::getValueType)
|
||||
.between(DataV::getTime, startTime, endTime);
|
||||
List<DataV> result4 = dataVMapper.getStatisticsByWraper(influxQueryWrapper4);
|
||||
log.info("CP95值数据:" + result4);
|
||||
result4.forEach(item->{
|
||||
item.setValueType(InfluxDbSqlConstant.CP95);
|
||||
});
|
||||
result.addAll(result4);
|
||||
return result;
|
||||
}
|
||||
// public List<DataV> getDataV(List<String> lineIndex, String startTime, String endTime) {
|
||||
// List<DataV> result = new ArrayList<>();
|
||||
// //最小值
|
||||
// InfluxQueryWrapper influxQueryWrapper = new InfluxQueryWrapper(DataV.class);
|
||||
// influxQueryWrapper.minSamePrefixAndSuffix(InfluxDbSqlConstant.V,"", HarmonicTimesUtil.harmonicTimesList(1,50,1));
|
||||
// influxQueryWrapper.regular(DataV::getLineId, lineIndex)
|
||||
// .eq(DataV::getValueType, InfluxDbSqlConstant.MIN)
|
||||
// .min(DataV::getFreq)
|
||||
// .min(DataV::getFreqDev)
|
||||
// .min(DataV::getRms)
|
||||
// .min(DataV::getRmsLvr)
|
||||
// .min(DataV::getVNeg)
|
||||
// .min(DataV::getVPos)
|
||||
// .min(DataV::getVThd)
|
||||
// .min(DataV::getVUnbalance)
|
||||
// .min(DataV::getVZero)
|
||||
// .min(DataV::getVlDev)
|
||||
// .min(DataV::getVuDev)
|
||||
// .groupBy(DataV::getLineId,DataV::getPhasicType,DataV::getQualityFlag,DataV::getValueType)
|
||||
// .between(DataV::getTime, startTime, endTime);
|
||||
// List<DataV> result1 = dataVMapper.getStatisticsByWraper(influxQueryWrapper);
|
||||
// log.info("最小值数据:" + result1);
|
||||
// result.addAll(result1);
|
||||
// //最大值
|
||||
// InfluxQueryWrapper influxQueryWrapper2 = new InfluxQueryWrapper(DataV.class);
|
||||
// influxQueryWrapper2.maxSamePrefixAndSuffix(InfluxDbSqlConstant.V,"", HarmonicTimesUtil.harmonicTimesList(1,50,1));
|
||||
// influxQueryWrapper2.regular(DataV::getLineId, lineIndex)
|
||||
// .eq(DataV::getValueType, InfluxDbSqlConstant.MAX)
|
||||
// .max(DataV::getFreq)
|
||||
// .max(DataV::getFreqDev)
|
||||
// .max(DataV::getRms)
|
||||
// .max(DataV::getRmsLvr)
|
||||
// .max(DataV::getVNeg)
|
||||
// .max(DataV::getVPos)
|
||||
// .max(DataV::getVThd)
|
||||
// .max(DataV::getVUnbalance)
|
||||
// .max(DataV::getVZero)
|
||||
// .max(DataV::getVlDev)
|
||||
// .max(DataV::getVuDev)
|
||||
// .groupBy(DataV::getLineId,DataV::getPhasicType,DataV::getQualityFlag,DataV::getValueType)
|
||||
// .between(DataV::getTime, startTime, endTime);
|
||||
// List<DataV> result2 = dataVMapper.getStatisticsByWraper(influxQueryWrapper2);
|
||||
// log.info("最大值数据:" + result2);
|
||||
// result.addAll(result2);
|
||||
// //平均值
|
||||
// InfluxQueryWrapper influxQueryWrapper3 = new InfluxQueryWrapper(DataV.class);
|
||||
// influxQueryWrapper3.meanSamePrefixAndSuffix(InfluxDbSqlConstant.V,"", HarmonicTimesUtil.harmonicTimesList(1,50,1));
|
||||
// influxQueryWrapper3.regular(DataV::getLineId, lineIndex)
|
||||
// .eq(DataV::getValueType, InfluxDbSqlConstant.AVG_WEB)
|
||||
// .mean(DataV::getFreq)
|
||||
// .mean(DataV::getFreqDev)
|
||||
// .mean(DataV::getRms)
|
||||
// .mean(DataV::getRmsLvr)
|
||||
// .mean(DataV::getVNeg)
|
||||
// .mean(DataV::getVPos)
|
||||
// .mean(DataV::getVThd)
|
||||
// .mean(DataV::getVUnbalance)
|
||||
// .mean(DataV::getVZero)
|
||||
// .mean(DataV::getVlDev)
|
||||
// .mean(DataV::getVuDev)
|
||||
// .groupBy(DataV::getLineId,DataV::getPhasicType,DataV::getQualityFlag,DataV::getValueType)
|
||||
// .between(DataV::getTime, startTime, endTime);
|
||||
// List<DataV> result3 = dataVMapper.getStatisticsByWraper(influxQueryWrapper3);
|
||||
// log.info("平均值数据:" + result3);
|
||||
// result.addAll(result3);
|
||||
// //CP95(取平均值的CP95值)
|
||||
// InfluxQueryWrapper influxQueryWrapper4 = new InfluxQueryWrapper(DataV.class);
|
||||
// influxQueryWrapper4.percentileSamePrefixAndSuffix(InfluxDbSqlConstant.V,"", HarmonicTimesUtil.harmonicTimesList(1,50,1),95);
|
||||
// influxQueryWrapper4.regular(DataV::getLineId, lineIndex)
|
||||
// .eq(DataV::getValueType, InfluxDbSqlConstant.AVG_WEB)
|
||||
// .percentile(DataV::getFreq,95)
|
||||
// .percentile(DataV::getFreqDev,95)
|
||||
// .percentile(DataV::getRms,95)
|
||||
// .percentile(DataV::getRmsLvr,95)
|
||||
// .percentile(DataV::getVNeg,95)
|
||||
// .percentile(DataV::getVPos,95)
|
||||
// .percentile(DataV::getVThd,95)
|
||||
// .percentile(DataV::getVUnbalance,95)
|
||||
// .percentile(DataV::getVZero,95)
|
||||
// .percentile(DataV::getVlDev,95)
|
||||
// .percentile(DataV::getVuDev,95)
|
||||
// .groupBy(DataV::getLineId,DataV::getPhasicType,DataV::getQualityFlag,DataV::getValueType)
|
||||
// .between(DataV::getTime, startTime, endTime);
|
||||
// List<DataV> result4 = dataVMapper.getStatisticsByWraper(influxQueryWrapper4);
|
||||
// log.info("CP95值数据:" + result4);
|
||||
// result4.forEach(item->{
|
||||
// item.setValueType(InfluxDbSqlConstant.CP95);
|
||||
// });
|
||||
// result.addAll(result4);
|
||||
// return result;
|
||||
// }
|
||||
|
||||
/**
|
||||
* 功能描述:获取dataI数据
|
||||
|
||||
Reference in New Issue
Block a user