谐波模块替换成InfluxDBPublicParam

This commit is contained in:
陈超
2022-07-06 21:43:04 +08:00
parent 3efc36d5f1
commit 63d58de26c
5 changed files with 177 additions and 205 deletions

View File

@@ -312,7 +312,7 @@ public class SteadyExceedRateServiceImpl implements SteadyExceedRateService {
}
/**
* 监测点时间范围统计占比率
* 计算一个监测点时间范围统计占比率
*/
public SteadyExceedRateVO getDataSingleMonitorMoreDay(List<LimitRatePO> qualifiesRate, String lineId) {
SteadyExceedRateVO steadyExceedRateVO = new SteadyExceedRateVO();
@@ -321,7 +321,6 @@ public class SteadyExceedRateServiceImpl implements SteadyExceedRateService {
//从数据里筛选出指定监测点的数据
limitRatePOList = qualifiesRate.stream().filter(
temp -> temp.getLineId().equalsIgnoreCase(lineId)).collect(Collectors.toList());
System.out.println("该监测点当天的信息为>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>"+limitRatePOList);
if (CollectionUtil.isNotEmpty(limitRatePOList)) {
Map<String, List<SteadyExceedRateVO>> timeMap;
//获取出时间和id获取日统计占比率
@@ -332,7 +331,6 @@ public class SteadyExceedRateServiceImpl implements SteadyExceedRateService {
steadyExceedRateVO.setSteadyExceedRate(rate);
steadyExceedRateVOS.add(steadyExceedRateVO);
}
System.out.println("steadyExceedRateVOS>>>>>>>>>>>>>>>>>>>>>>>>>"+steadyExceedRateVOS);
//求时间范围的占比率平均值
steadyExceedRateVO.setSteadyExceedRate(NumberUtil.round(steadyExceedRateVOS.stream().mapToDouble(SteadyExceedRateVO::getSteadyExceedRate).average().orElse(0), 2).doubleValue());
@@ -357,9 +355,7 @@ public class SteadyExceedRateServiceImpl implements SteadyExceedRateService {
}
if (CollectionUtil.isNotEmpty(steadyResults)) {
//求区域监测点多天的平均值
steadyExceedRateVO.setSteadyExceedRate(
NumberUtil.round(steadyResults.stream().mapToDouble(SteadyExceedRateVO::getSteadyExceedRate).average().orElse(0), 2).doubleValue()
);
steadyExceedRateVO.setSteadyExceedRate(NumberUtil.round(steadyResults.stream().mapToDouble(SteadyExceedRateVO::getSteadyExceedRate).average().orElse(0), 2).doubleValue());
}
return steadyExceedRateVO;
}
@@ -406,7 +402,7 @@ public class SteadyExceedRateServiceImpl implements SteadyExceedRateService {
* @param endTime
*/
private List<LimitRatePO> getQualifiesRate(List<String> lineIndexes, String startTime, String endTime) {
List<LimitRatePO> limitRatePOS = new ArrayList<>();
List<LimitRatePO> limitRatePOS;
//组装sql语句
// StringBuilder string = new StringBuilder();
// string.append(Param.QualityFlag + "='1' and (" + Param.PHASIC_TYPE + "='" + Param.PHASIC_TYPEA + "' or " + Param.PHASIC_TYPE + "='" + Param.PHASIC_TYPEB + "' or " + Param.PHASIC_TYPE + "='" + Param.PHASIC_TYPEC + "') and "+ Param.VALUETYPE + "='AVG' and ");
@@ -419,11 +415,13 @@ public class SteadyExceedRateServiceImpl implements SteadyExceedRateService {
timeId.append(InfluxDBPublicParam.LINE_ID + "='").append(lineIndexes.get(i)).append("' tz('Asia/Shanghai')");
}
}
String a = "SELECT * FROM LIMIT_RATE WHERE time >= '2021-01-01 00:00:00' and time <= '2022-04-30 23:59:59' and MYINDEX='71b900811d9a95811913776d6e725255' or MYINDEX='479bf4e228b5579629454ee99de0b950' or MYINDEX='1e3b8531483b2a8cbee6747f1f641cf9'";
//sql语句
String sql = "SELECT * FROM "+ InfluxDBPublicParam.LIMIT_RATE +" WHERE " + timeId;
//结果集
QueryResult result = influxDbUtils.query(sql);
// if (Objects.isNull(result.getResults().get(0).getSeries())) {
// throw new BusinessException(HarmonicResponseEnum.LIMIT_RATE_ERROR);
// }
//结果集映射到对象中
InfluxDBResultMapper resultMapper = new InfluxDBResultMapper();
limitRatePOS = resultMapper.toPOJO(result, LimitRatePO.class);

View File

@@ -8,6 +8,7 @@ import com.njcn.device.pojo.dto.GeneralDeviceDTO;
import com.njcn.device.pojo.param.DeviceInfoParam;
import com.njcn.harmonic.mapper.SteadyQualifyMapper;
import com.njcn.harmonic.pojo.dto.SteadyQualifyDTO;
import com.njcn.harmonic.pojo.po.LimitRate;
import com.njcn.harmonic.pojo.vo.SteadyQualifyCensusVO;
import com.njcn.harmonic.pojo.vo.SteadyQualifyVO;
import com.njcn.harmonic.service.SteadyQualifyService;
@@ -15,9 +16,13 @@ import com.njcn.influxdb.param.InfluxDBPublicParam;
import com.njcn.influxdb.utils.InfluxDbUtils;
import lombok.AllArgsConstructor;
import org.influxdb.dto.QueryResult;
import org.influxdb.impl.InfluxDBResultMapper;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import java.time.LocalDateTime;
import java.time.ZoneId;
import java.time.format.DateTimeFormatter;
import java.util.*;
import java.util.stream.Collectors;
@@ -412,116 +417,101 @@ public class SteadyQualifyServiceImpl implements SteadyQualifyService {
timeId.append(InfluxDBPublicParam.LINE_ID + "='").append(lineIndexes.get(i)).append("' tz('Asia/Shanghai')");
}
}
String a = "SELECT * FROM LIMIT_RATE WHERE time >= '2021-01-01 00:00:00' and time <= '2022-04-30 23:59:59' and MYINDEX='bffe97ff541333448358b7b00ed97cdb' or MYINDEX='479bf4e228b5579629454ee99de0b950' or MYINDEX='1e3b8531483b2a8cbee6747f1f641cf9'";
//sql语句
String sql = "SELECT * FROM "+ InfluxDBPublicParam.LIMIT_RATE +" WHERE " + timeId;
//结果集
QueryResult result = influxDbUtils.query(sql);
// //结果集映射到对象中
// InfluxDBResultMapper influxDBResultMapper = new InfluxDBResultMapper();
// List<LimitRate> limitRates = influxDBResultMapper.toPOJO(result, LimitRate.class);
//结果集映射到对象中
InfluxDBResultMapper influxDBResultMapper = new InfluxDBResultMapper();
List<LimitRate> limitRates = influxDBResultMapper.toPOJO(result, LimitRate.class);
limitRates.forEach(list ->{
SteadyQualifyDTO steadyQualifyDTO = new SteadyQualifyDTO();
LocalDateTime localDateTime = LocalDateTime.ofInstant(list.getTime(), ZoneId.systemDefault());
DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss.SSS");
steadyQualifyDTO.setTime(dateTimeFormatter.format(localDateTime));
steadyQualifyDTO.setMYINDEX(list.getLineId());
steadyQualifyDTO.setPhasic_Type(list.getPhasicType());
steadyQualifyDTO.setAllTime(Double.parseDouble(list.getAllTime().toString()));
steadyQualifyDTO.setFlicker_AllTime(Double.parseDouble(list.getFlickerAllTime().toString()));
steadyQualifyDTO.setFlicker_OverTime(Double.parseDouble(list.getFlickerOverTime().toString()));
steadyQualifyDTO.setFreq_Dev_OverTime(Double.parseDouble(list.getFreqDevOverTime().toString()));
steadyQualifyDTO.setIHarm_2_OverTime(Double.parseDouble(list.getIHarm2OverTime().toString()));
steadyQualifyDTO.setIHarm_3_OverTime(Double.parseDouble(list.getIHarm3OverTime().toString()));
steadyQualifyDTO.setIHarm_4_OverTime(Double.parseDouble(list.getIHarm4OverTime().toString()));
steadyQualifyDTO.setIHarm_5_OverTime(Double.parseDouble(list.getIHarm5OverTime().toString()));
steadyQualifyDTO.setIHarm_6_OverTime(Double.parseDouble(list.getIHarm6OverTime().toString()));
steadyQualifyDTO.setIHarm_7_OverTime(Double.parseDouble(list.getIHarm7OverTime().toString()));
steadyQualifyDTO.setIHarm_8_OverTime(Double.parseDouble(list.getIHarm8OverTime().toString()));
steadyQualifyDTO.setIHarm_9_OverTime(Double.parseDouble(list.getIHarm9OverTime().toString()));
steadyQualifyDTO.setIHarm_10_OverTime(Double.parseDouble(list.getIHarm10OverTime().toString()));
steadyQualifyDTO.setIHarm_11_OverTime(Double.parseDouble(list.getIHarm11OverTime().toString()));
steadyQualifyDTO.setIHarm_12_OverTime(Double.parseDouble(list.getIHarm12OverTime().toString()));
steadyQualifyDTO.setIHarm_13_OverTime(Double.parseDouble(list.getIHarm13OverTime().toString()));
steadyQualifyDTO.setIHarm_14_OverTime(Double.parseDouble(list.getIHarm14OverTime().toString()));
steadyQualifyDTO.setIHarm_15_OverTime(Double.parseDouble(list.getIHarm15OverTime().toString()));
steadyQualifyDTO.setIHarm_16_OverTime(Double.parseDouble(list.getIHarm16OverTime().toString()));
steadyQualifyDTO.setIHarm_17_OverTime(Double.parseDouble(list.getIHarm17OverTime().toString()));
steadyQualifyDTO.setIHarm_18_OverTime(Double.parseDouble(list.getIHarm18OverTime().toString()));
steadyQualifyDTO.setIHarm_19_OverTime(Double.parseDouble(list.getIHarm19OverTime().toString()));
steadyQualifyDTO.setIHarm_20_OverTime(Double.parseDouble(list.getIHarm20OverTime().toString()));
steadyQualifyDTO.setIHarm_21_OverTime(Double.parseDouble(list.getIHarm21OverTime().toString()));
steadyQualifyDTO.setIHarm_22_OverTime(Double.parseDouble(list.getIHarm22OverTime().toString()));
steadyQualifyDTO.setIHarm_23_OverTime(Double.parseDouble(list.getIHarm23OverTime().toString()));
steadyQualifyDTO.setIHarm_24_OverTime(Double.parseDouble(list.getIHarm24OverTime().toString()));
steadyQualifyDTO.setIHarm_25_OverTime(Double.parseDouble(list.getIHarm25OverTime().toString()));
steadyQualifyDTO.setI_Neg_OverTime(Double.parseDouble(list.getINegOverTime().toString()));
steadyQualifyDTO.setInUHARM_1_OverTime(Double.parseDouble(list.getInuHarm1OverTime().toString()));
steadyQualifyDTO.setInUHARM_2_OverTime(Double.parseDouble(list.getInuHarm2OverTime().toString()));
steadyQualifyDTO.setInUHARM_3_OverTime(Double.parseDouble(list.getInuHarm3OverTime().toString()));
steadyQualifyDTO.setInUHARM_4_OverTime(Double.parseDouble(list.getInuHarm4OverTime().toString()));
steadyQualifyDTO.setInUHARM_5_OverTime(Double.parseDouble(list.getInuHarm5OverTime().toString()));
steadyQualifyDTO.setInUHARM_6_OverTime(Double.parseDouble(list.getInuHarm6OverTime().toString()));
steadyQualifyDTO.setInUHARM_7_OverTime(Double.parseDouble(list.getInuHarm7OverTime().toString()));
steadyQualifyDTO.setInUHARM_8_OverTime(Double.parseDouble(list.getInuHarm8OverTime().toString()));
steadyQualifyDTO.setInUHARM_9_OverTime(Double.parseDouble(list.getInuHarm9OverTime().toString()));
steadyQualifyDTO.setInUHARM_10_OverTime(Double.parseDouble(list.getInuHarm10OverTime().toString()));
steadyQualifyDTO.setInUHARM_11_OverTime(Double.parseDouble(list.getInuHarm11OverTime().toString()));
steadyQualifyDTO.setInUHARM_12_OverTime(Double.parseDouble(list.getInuHarm12OverTime().toString()));
steadyQualifyDTO.setInUHARM_13_OverTime(Double.parseDouble(list.getInuHarm13OverTime().toString()));
steadyQualifyDTO.setInUHARM_14_OverTime(Double.parseDouble(list.getInuHarm14OverTime().toString()));
steadyQualifyDTO.setInUHARM_15_OverTime(Double.parseDouble(list.getInuHarm15OverTime().toString()));
steadyQualifyDTO.setInUHARM_16_OverTime(Double.parseDouble(list.getInuHarm16OverTime().toString()));
steadyQualifyDTO.setUAberrance_OverTime(Double.parseDouble(list.getUAberranceOverTime().toString()));
steadyQualifyDTO.setUBalance_OverTime(Double.parseDouble(list.getUBalanceOverTime().toString()));
steadyQualifyDTO.setUHarm_2_OverTime(Double.parseDouble(list.getUHarm2OverTime().toString()));
steadyQualifyDTO.setUHarm_3_OverTime(Double.parseDouble(list.getUHarm3OverTime().toString()));
steadyQualifyDTO.setUHarm_4_OverTime(Double.parseDouble(list.getUHarm4OverTime().toString()));
steadyQualifyDTO.setUHarm_5_OverTime(Double.parseDouble(list.getUHarm5OverTime().toString()));
steadyQualifyDTO.setUHarm_6_OverTime(Double.parseDouble(list.getUHarm6OverTime().toString()));
steadyQualifyDTO.setUHarm_7_OverTime(Double.parseDouble(list.getUHarm7OverTime().toString()));
steadyQualifyDTO.setUHarm_8_OverTime(Double.parseDouble(list.getUHarm8OverTime().toString()));
steadyQualifyDTO.setUHarm_9_OverTime(Double.parseDouble(list.getUHarm9OverTime().toString()));
steadyQualifyDTO.setUHarm_10_OverTime(Double.parseDouble(list.getUHarm10OverTime().toString()));
steadyQualifyDTO.setUHarm_11_OverTime(Double.parseDouble(list.getUHarm11OverTime().toString()));
steadyQualifyDTO.setUHarm_12_OverTime(Double.parseDouble(list.getUHarm12OverTime().toString()));
steadyQualifyDTO.setUHarm_13_OverTime(Double.parseDouble(list.getUHarm13OverTime().toString()));
steadyQualifyDTO.setUHarm_14_OverTime(Double.parseDouble(list.getUHarm14OverTime().toString()));
steadyQualifyDTO.setUHarm_15_OverTime(Double.parseDouble(list.getUHarm15OverTime().toString()));
steadyQualifyDTO.setUHarm_16_OverTime(Double.parseDouble(list.getUHarm16OverTime().toString()));
steadyQualifyDTO.setUHarm_17_OverTime(Double.parseDouble(list.getUHarm17OverTime().toString()));
steadyQualifyDTO.setUHarm_18_OverTime(Double.parseDouble(list.getUHarm18OverTime().toString()));
steadyQualifyDTO.setUHarm_19_OverTime(Double.parseDouble(list.getUHarm19OverTime().toString()));
steadyQualifyDTO.setUHarm_20_OverTime(Double.parseDouble(list.getUHarm20OverTime().toString()));
steadyQualifyDTO.setUHarm_21_OverTime(Double.parseDouble(list.getUHarm21OverTime().toString()));
steadyQualifyDTO.setUHarm_22_OverTime(Double.parseDouble(list.getUHarm22OverTime().toString()));
steadyQualifyDTO.setUHarm_23_OverTime(Double.parseDouble(list.getUHarm23OverTime().toString()));
steadyQualifyDTO.setUHarm_24_OverTime(Double.parseDouble(list.getUHarm24OverTime().toString()));
steadyQualifyDTO.setUHarm_25_OverTime(Double.parseDouble(list.getUHarm25OverTime().toString()));
steadyQualifyDTO.setVoltage_Dev_OverTime(Double.parseDouble(list.getVoltageDevOverTime().toString()));
qualifyDTOList.add(steadyQualifyDTO);
});
//处理结果集
if (!CollectionUtils.isEmpty(result.getResults().get(0).getSeries())) {
List<List<Object>> values = result.getResults().get(0).getSeries().get(0).getValues();
values.forEach(list ->{
SteadyQualifyDTO steadyQualifyDTO = new SteadyQualifyDTO();
steadyQualifyDTO.setTime(list.get(0).toString());
steadyQualifyDTO.setMYINDEX(list.get(46).toString());
steadyQualifyDTO.setPhasic_Type(list.get(47).toString());
steadyQualifyDTO.setAllTime(Double.parseDouble(list.get(1).toString()));
steadyQualifyDTO.setFlicker_AllTime(Double.parseDouble(list.get(2).toString()));
steadyQualifyDTO.setFlicker_OverTime(Double.parseDouble(list.get(3).toString()));
steadyQualifyDTO.setFreq_Dev_OverTime(Double.parseDouble(list.get(4).toString()));
steadyQualifyDTO.setIHarm_10_OverTime(Double.parseDouble(list.get(5).toString()));
steadyQualifyDTO.setIHarm_11_OverTime(Double.parseDouble(list.get(6).toString()));
steadyQualifyDTO.setIHarm_12_OverTime(Double.parseDouble(list.get(7).toString()));
steadyQualifyDTO.setIHarm_13_OverTime(Double.parseDouble(list.get(8).toString()));
steadyQualifyDTO.setIHarm_14_OverTime(Double.parseDouble(list.get(9).toString()));
steadyQualifyDTO.setIHarm_15_OverTime(Double.parseDouble(list.get(10).toString()));
steadyQualifyDTO.setIHarm_16_OverTime(Double.parseDouble(list.get(11).toString()));
steadyQualifyDTO.setIHarm_17_OverTime(Double.parseDouble(list.get(12).toString()));
steadyQualifyDTO.setIHarm_18_OverTime(Double.parseDouble(list.get(13).toString()));
steadyQualifyDTO.setIHarm_19_OverTime(Double.parseDouble(list.get(14).toString()));
steadyQualifyDTO.setIHarm_20_OverTime(Double.parseDouble(list.get(15).toString()));
steadyQualifyDTO.setIHarm_21_OverTime(Double.parseDouble(list.get(16).toString()));
steadyQualifyDTO.setIHarm_22_OverTime(Double.parseDouble(list.get(17).toString()));
steadyQualifyDTO.setIHarm_23_OverTime(Double.parseDouble(list.get(18).toString()));
steadyQualifyDTO.setIHarm_24_OverTime(Double.parseDouble(list.get(19).toString()));
steadyQualifyDTO.setIHarm_25_OverTime(Double.parseDouble(list.get(20).toString()));
steadyQualifyDTO.setIHarm_2_OverTime(Double.parseDouble(list.get(21).toString()));
steadyQualifyDTO.setIHarm_3_OverTime(Double.parseDouble(list.get(22).toString()));
steadyQualifyDTO.setIHarm_4_OverTime(Double.parseDouble(list.get(23).toString()));
steadyQualifyDTO.setIHarm_5_OverTime(Double.parseDouble(list.get(24).toString()));
steadyQualifyDTO.setIHarm_6_OverTime(Double.parseDouble(list.get(25).toString()));
steadyQualifyDTO.setIHarm_7_OverTime(Double.parseDouble(list.get(26).toString()));
steadyQualifyDTO.setIHarm_8_OverTime(Double.parseDouble(list.get(27).toString()));
steadyQualifyDTO.setIHarm_9_OverTime(Double.parseDouble(list.get(28).toString()));
steadyQualifyDTO.setI_Neg_OverTime(Double.parseDouble(list.get(29).toString()));
steadyQualifyDTO.setInUHARM_10_OverTime(Double.parseDouble(list.get(30).toString()));
steadyQualifyDTO.setInUHARM_11_OverTime(Double.parseDouble(list.get(31).toString()));
steadyQualifyDTO.setInUHARM_12_OverTime(Double.parseDouble(list.get(32).toString()));
steadyQualifyDTO.setInUHARM_13_OverTime(Double.parseDouble(list.get(33).toString()));
steadyQualifyDTO.setInUHARM_14_OverTime(Double.parseDouble(list.get(34).toString()));
steadyQualifyDTO.setInUHARM_15_OverTime(Double.parseDouble(list.get(35).toString()));
steadyQualifyDTO.setInUHARM_16_OverTime(Double.parseDouble(list.get(36).toString()));
steadyQualifyDTO.setInUHARM_1_OverTime(Double.parseDouble(list.get(37).toString()));
steadyQualifyDTO.setInUHARM_2_OverTime(Double.parseDouble(list.get(38).toString()));
steadyQualifyDTO.setInUHARM_3_OverTime(Double.parseDouble(list.get(39).toString()));
steadyQualifyDTO.setInUHARM_4_OverTime(Double.parseDouble(list.get(40).toString()));
steadyQualifyDTO.setInUHARM_5_OverTime(Double.parseDouble(list.get(41).toString()));
steadyQualifyDTO.setInUHARM_6_OverTime(Double.parseDouble(list.get(42).toString()));
steadyQualifyDTO.setInUHARM_7_OverTime(Double.parseDouble(list.get(43).toString()));
steadyQualifyDTO.setInUHARM_8_OverTime(Double.parseDouble(list.get(44).toString()));
steadyQualifyDTO.setInUHARM_9_OverTime(Double.parseDouble(list.get(45).toString()));
steadyQualifyDTO.setUAberrance_OverTime(Double.parseDouble(list.get(48).toString()));
steadyQualifyDTO.setUBalance_OverTime(Double.parseDouble(list.get(49).toString()));
steadyQualifyDTO.setUHarm_10_OverTime(Double.parseDouble(list.get(50).toString()));
steadyQualifyDTO.setUHarm_11_OverTime(Double.parseDouble(list.get(51).toString()));
steadyQualifyDTO.setUHarm_12_OverTime(Double.parseDouble(list.get(52).toString()));
steadyQualifyDTO.setUHarm_13_OverTime(Double.parseDouble(list.get(53).toString()));
steadyQualifyDTO.setUHarm_14_OverTime(Double.parseDouble(list.get(54).toString()));
steadyQualifyDTO.setUHarm_15_OverTime(Double.parseDouble(list.get(55).toString()));
steadyQualifyDTO.setUHarm_16_OverTime(Double.parseDouble(list.get(56).toString()));
steadyQualifyDTO.setUHarm_17_OverTime(Double.parseDouble(list.get(57).toString()));
steadyQualifyDTO.setUHarm_18_OverTime(Double.parseDouble(list.get(58).toString()));
steadyQualifyDTO.setUHarm_19_OverTime(Double.parseDouble(list.get(59).toString()));
steadyQualifyDTO.setUHarm_20_OverTime(Double.parseDouble(list.get(60).toString()));
steadyQualifyDTO.setUHarm_21_OverTime(Double.parseDouble(list.get(61).toString()));
steadyQualifyDTO.setUHarm_22_OverTime(Double.parseDouble(list.get(62).toString()));
steadyQualifyDTO.setUHarm_23_OverTime(Double.parseDouble(list.get(63).toString()));
steadyQualifyDTO.setUHarm_24_OverTime(Double.parseDouble(list.get(64).toString()));
steadyQualifyDTO.setUHarm_25_OverTime(Double.parseDouble(list.get(65).toString()));
steadyQualifyDTO.setUHarm_2_OverTime(Double.parseDouble(list.get(66).toString()));
steadyQualifyDTO.setUHarm_3_OverTime(Double.parseDouble(list.get(67).toString()));
steadyQualifyDTO.setUHarm_4_OverTime(Double.parseDouble(list.get(68).toString()));
steadyQualifyDTO.setUHarm_5_OverTime(Double.parseDouble(list.get(69).toString()));
steadyQualifyDTO.setUHarm_6_OverTime(Double.parseDouble(list.get(70).toString()));
steadyQualifyDTO.setUHarm_7_OverTime(Double.parseDouble(list.get(71).toString()));
steadyQualifyDTO.setUHarm_8_OverTime(Double.parseDouble(list.get(72).toString()));
steadyQualifyDTO.setUHarm_9_OverTime(Double.parseDouble(list.get(73).toString()));
steadyQualifyDTO.setVoltage_Dev_OverTime(Double.parseDouble(list.get(74).toString()));
// steadyQualifyDTO.setTime(time);
// if (!CollectionUtils.isEmpty(valueList)){
// for (List<Object> value : valueList) {
// String time = value.get(0).toString();
// double v = Double.parseDouble(value.get(1).toString());
// value.get(2);
// value.get(3);
// //谐波畸变率 保留两位小数
// Double distortion = value.get(1) == null ? null : BigDecimal.valueOf(Double.parseDouble(value.get(1).toString())).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();
//
//
// }
// }
qualifyDTOList.add(steadyQualifyDTO);
});
}
return qualifyDTOList;
}
private static double calculate(Double allTime, Double overTime) {
if (allTime == 0) {
return 3.14159;

View File

@@ -151,7 +151,7 @@ public class TerminalServiceImpl implements TerminalService {
/**
* 获取父级每层数据
* 获取树的每层数据
*/
public List<TerminalVO> getTreeData(List<String> deviceIndexes, DeviceInfoParam.BusinessParam terminalParam) {
//终端集合
@@ -241,14 +241,14 @@ public class TerminalServiceImpl implements TerminalService {
}
/**
* 计算级终端在线率
* 计算该子层级终端在线率
*/
private void setFatherOnlineRate(List<TerminalVO> list) {
list.forEach(item -> {
List<TerminalVO> children = item.getChildren();
List<TerminalVO> tempList = children.stream().filter(s -> !Objects.equals(s.getOnlineRateData(), 3.14159)).collect(Collectors.toList());
if (!CollectionUtils.isEmpty(tempList)) {
item.setOnlineRateData(tempList.stream().mapToDouble(TerminalVO::getOnlineRateData).sum() / children.size());
item.setOnlineRateData(tempList.stream().mapToDouble(TerminalVO::getOnlineRateData).sum() / tempList.size());
} else {
item.setOnlineRateData(3.14159);
}
@@ -256,22 +256,5 @@ public class TerminalServiceImpl implements TerminalService {
}
//省级
private void setAreaOnlineRate(List<TerminalVO> list) {
list.forEach(item -> {
List<TerminalVO> result = new ArrayList<>();
List<TerminalVO> children = item.getChildren();
children.forEach(item2 -> {
List<TerminalVO> children2 = item2.getChildren();
children2.forEach(item3 -> {
List<TerminalVO> children3 = item3.getChildren();
result.addAll(children3);
});
});
double aver = result.stream().mapToDouble(TerminalVO::getOnlineRateData).average().orElseThrow(IllegalStateException::new);
item.setOnlineRateData(BigDecimal.valueOf(aver).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue());
});
}
}