解决稳态超标占比数据错误bug
This commit is contained in:
@@ -1,12 +1,10 @@
|
|||||||
package com.njcn.harmonic.service.impl;
|
package com.njcn.harmonic.service.impl;
|
||||||
|
|
||||||
import cn.hutool.core.bean.BeanUtil;
|
|
||||||
import cn.hutool.core.collection.CollUtil;
|
import cn.hutool.core.collection.CollUtil;
|
||||||
import cn.hutool.core.collection.CollectionUtil;
|
import cn.hutool.core.collection.CollectionUtil;
|
||||||
import cn.hutool.core.date.DatePattern;
|
import cn.hutool.core.date.DatePattern;
|
||||||
import cn.hutool.core.date.DateTime;
|
import cn.hutool.core.date.DateTime;
|
||||||
import cn.hutool.core.date.DateUtil;
|
import cn.hutool.core.date.DateUtil;
|
||||||
import cn.hutool.core.date.LocalDateTimeUtil;
|
|
||||||
import cn.hutool.core.util.NumberUtil;
|
import cn.hutool.core.util.NumberUtil;
|
||||||
import cn.hutool.core.util.StrUtil;
|
import cn.hutool.core.util.StrUtil;
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||||
@@ -17,12 +15,9 @@ import com.njcn.device.pq.pojo.param.DeviceInfoParam;
|
|||||||
import com.njcn.device.pq.utils.PublicDateUtil;
|
import com.njcn.device.pq.utils.PublicDateUtil;
|
||||||
import com.njcn.harmonic.mapper.RStatLimitRateDMapper;
|
import com.njcn.harmonic.mapper.RStatLimitRateDMapper;
|
||||||
import com.njcn.harmonic.mapper.SteadyExceedRateMapper;
|
import com.njcn.harmonic.mapper.SteadyExceedRateMapper;
|
||||||
import com.njcn.harmonic.pojo.dto.SteadyQualifyDTO;
|
|
||||||
import com.njcn.harmonic.pojo.po.LimitRatePO;
|
import com.njcn.harmonic.pojo.po.LimitRatePO;
|
||||||
import com.njcn.harmonic.pojo.po.RStatHarmonicD;
|
|
||||||
import com.njcn.harmonic.pojo.po.day.RStatLimitRateDPO;
|
import com.njcn.harmonic.pojo.po.day.RStatLimitRateDPO;
|
||||||
import com.njcn.harmonic.pojo.vo.MonitorOverLimitVO;
|
import com.njcn.harmonic.pojo.vo.MonitorOverLimitVO;
|
||||||
import com.njcn.harmonic.pojo.vo.RHarmonicPolylineVO;
|
|
||||||
import com.njcn.harmonic.pojo.vo.SteadyExceedRateCensusVO;
|
import com.njcn.harmonic.pojo.vo.SteadyExceedRateCensusVO;
|
||||||
import com.njcn.harmonic.pojo.vo.SteadyExceedRateVO;
|
import com.njcn.harmonic.pojo.vo.SteadyExceedRateVO;
|
||||||
import com.njcn.harmonic.service.IRStatLimitRateDService;
|
import com.njcn.harmonic.service.IRStatLimitRateDService;
|
||||||
@@ -32,16 +27,10 @@ import com.njcn.influxdb.param.InfluxDBPublicParam;
|
|||||||
import com.njcn.influxdb.utils.InfluxDbUtils;
|
import com.njcn.influxdb.utils.InfluxDbUtils;
|
||||||
import lombok.AllArgsConstructor;
|
import lombok.AllArgsConstructor;
|
||||||
import lombok.SneakyThrows;
|
import lombok.SneakyThrows;
|
||||||
import org.influxdb.dto.QueryResult;
|
|
||||||
import org.influxdb.impl.InfluxDBResultMapper;
|
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
import org.springframework.util.CollectionUtils;
|
import org.springframework.util.CollectionUtils;
|
||||||
|
|
||||||
import java.text.SimpleDateFormat;
|
import java.text.SimpleDateFormat;
|
||||||
import java.time.Instant;
|
|
||||||
import java.time.LocalDateTime;
|
|
||||||
import java.time.ZoneId;
|
|
||||||
import java.time.format.DateTimeFormatter;
|
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
@@ -103,8 +92,11 @@ public class SteadyExceedRateServiceImpl implements SteadyExceedRateService {
|
|||||||
type.add(generalDeviceDTO.getName());
|
type.add(generalDeviceDTO.getName());
|
||||||
|
|
||||||
List<String> lineIndexes = generalDeviceDTO.getLineIndexes();
|
List<String> lineIndexes = generalDeviceDTO.getLineIndexes();
|
||||||
|
Map<String, Double> collect=new HashMap<>();
|
||||||
|
if (CollUtil.isNotEmpty(lineIndexes)) {
|
||||||
List<MonitorOverLimitVO.DataVO> percentages = rateDMapper.getPercentages(lineIndexes, steadyExceedCensusParam.getSearchBeginTime(), steadyExceedCensusParam.getSearchEndTime());
|
List<MonitorOverLimitVO.DataVO> percentages = rateDMapper.getPercentages(lineIndexes, steadyExceedCensusParam.getSearchBeginTime(), steadyExceedCensusParam.getSearchEndTime());
|
||||||
Map<String, Double> collect = percentages.stream().collect(Collectors.toMap(MonitorOverLimitVO.DataVO::getTime, MonitorOverLimitVO.DataVO::getData));
|
collect = percentages.stream().collect(Collectors.toMap(MonitorOverLimitVO.DataVO::getTime, MonitorOverLimitVO.DataVO::getData));
|
||||||
|
}
|
||||||
maps.add(collect);
|
maps.add(collect);
|
||||||
//按部门分类的监测点索引集
|
//按部门分类的监测点索引集
|
||||||
tempIndex.add(lineIndexes);
|
tempIndex.add(lineIndexes);
|
||||||
@@ -128,7 +120,7 @@ public class SteadyExceedRateServiceImpl implements SteadyExceedRateService {
|
|||||||
SteadyExceedRateVO dataMoreMonitorMoreDay = getDataMoreMonitorMoreDay(qualifiesRate);
|
SteadyExceedRateVO dataMoreMonitorMoreDay = getDataMoreMonitorMoreDay(qualifiesRate);
|
||||||
steadyExceedRate.add(dataMoreMonitorMoreDay.getSteadyExceedRate());
|
steadyExceedRate.add(dataMoreMonitorMoreDay.getSteadyExceedRate());
|
||||||
} else {
|
} else {
|
||||||
steadyExceedRate.add(3.1415);
|
steadyExceedRate.add(3.14159);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
steadyExceedList.add(steadyExceedRate);
|
steadyExceedList.add(steadyExceedRate);
|
||||||
@@ -151,7 +143,7 @@ public class SteadyExceedRateServiceImpl implements SteadyExceedRateService {
|
|||||||
List<Double> steadyExceedRate = new ArrayList<>();
|
List<Double> steadyExceedRate = new ArrayList<>();
|
||||||
for (int i = 0; i < tempIndex.size(); i++) {
|
for (int i = 0; i < tempIndex.size(); i++) {
|
||||||
|
|
||||||
if (CollUtil.isNotEmpty(maps.get(i))) {
|
if (CollUtil.isNotEmpty(maps)&&CollUtil.isNotEmpty(maps.get(i))) {
|
||||||
if (maps.get(i).containsKey(s)) {
|
if (maps.get(i).containsKey(s)) {
|
||||||
Double data = maps.get(i).get(s);
|
Double data = maps.get(i).get(s);
|
||||||
steadyExceedRate.add(data);
|
steadyExceedRate.add(data);
|
||||||
@@ -159,7 +151,7 @@ public class SteadyExceedRateServiceImpl implements SteadyExceedRateService {
|
|||||||
steadyExceedRate.add(3.14159);
|
steadyExceedRate.add(3.14159);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
steadyExceedRate.add(3.1415);
|
steadyExceedRate.add(3.14159);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
steadyExceedList.add(steadyExceedRate);
|
steadyExceedList.add(steadyExceedRate);
|
||||||
@@ -176,7 +168,7 @@ public class SteadyExceedRateServiceImpl implements SteadyExceedRateService {
|
|||||||
SteadyExceedRateVO dataMoreMonitorSingleDay = getDataMoreMonitorSingleDay(qualifiesRate, lineIndexes, steadyExceedCensusParam.getSearchBeginTime());
|
SteadyExceedRateVO dataMoreMonitorSingleDay = getDataMoreMonitorSingleDay(qualifiesRate, lineIndexes, steadyExceedCensusParam.getSearchBeginTime());
|
||||||
steadyExceedRate.add(dataMoreMonitorSingleDay.getSteadyExceedRate());
|
steadyExceedRate.add(dataMoreMonitorSingleDay.getSteadyExceedRate());
|
||||||
} else {
|
} else {
|
||||||
steadyExceedRate.add(3.1415);
|
steadyExceedRate.add(3.14159);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
steadyExceedList.add(steadyExceedRate);
|
steadyExceedList.add(steadyExceedRate);
|
||||||
|
|||||||
Reference in New Issue
Block a user