谐波统计接口调整
This commit is contained in:
@@ -56,6 +56,7 @@ import java.io.File;
|
|||||||
import java.math.BigDecimal;
|
import java.math.BigDecimal;
|
||||||
import java.math.RoundingMode;
|
import java.math.RoundingMode;
|
||||||
import java.time.Instant;
|
import java.time.Instant;
|
||||||
|
import java.time.LocalDate;
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
import java.util.function.Function;
|
import java.util.function.Function;
|
||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
@@ -105,7 +106,7 @@ public class AnalyzeServiceImpl implements IAnalyzeService {
|
|||||||
temList.forEach(item -> {
|
temList.forEach(item -> {
|
||||||
OverAreaLimitVO overAreaLimitVO = new OverAreaLimitVO();
|
OverAreaLimitVO overAreaLimitVO = new OverAreaLimitVO();
|
||||||
if (!CollectionUtils.isEmpty(item.getLineIndexes())) {
|
if (!CollectionUtils.isEmpty(item.getLineIndexes())) {
|
||||||
List<LimitTarget> limitTargetList = harmonicService.getLimitTarget(item.getLineIndexes(), param.getSearchBeginTime(), param.getSearchEndTime());
|
List<RStatLimitTargetDPO> limitTargetList = harmonicService.getLimitTarget(item.getLineIndexes(), param.getSearchBeginTime(), param.getSearchEndTime());
|
||||||
overAreaLimitVO = handleAreaData(limitTargetList, item.getLineIndexes(), param);
|
overAreaLimitVO = handleAreaData(limitTargetList, item.getLineIndexes(), param);
|
||||||
}
|
}
|
||||||
overAreaLimitVO.setName(item.getName());
|
overAreaLimitVO.setName(item.getName());
|
||||||
@@ -503,7 +504,7 @@ public class AnalyzeServiceImpl implements IAnalyzeService {
|
|||||||
* @date 2022/2/25 15:05
|
* @date 2022/2/25 15:05
|
||||||
*/
|
*/
|
||||||
@SuppressWarnings("unchecked")
|
@SuppressWarnings("unchecked")
|
||||||
public OverAreaLimitVO handleAreaData(List<LimitTarget> list, List<String> line, OverAreaVO param) {
|
public OverAreaLimitVO handleAreaData(List<RStatLimitTargetDPO> list, List<String> line, OverAreaVO param) {
|
||||||
int onlineCount = 0, overLineCount = 0, freqCount = 0, voltageCount = 0, ubalanceCount = 0, flickerCount = 0, iNegCount = 0, uharmCount = 0, iharmCount = 0, inuharmCount = 0;
|
int onlineCount = 0, overLineCount = 0, freqCount = 0, voltageCount = 0, ubalanceCount = 0, flickerCount = 0, iNegCount = 0, uharmCount = 0, iharmCount = 0, inuharmCount = 0;
|
||||||
int freqOverDay = 0, voltageOverDay = 0, ubalanceOverDay = 0, flickerOverDay = 0, iNegOverDay = 0, uharmOverDay = 0, iharmOverDay = 0, inuharmOverDay = 0;
|
int freqOverDay = 0, voltageOverDay = 0, ubalanceOverDay = 0, flickerOverDay = 0, iNegOverDay = 0, uharmOverDay = 0, iharmOverDay = 0, inuharmOverDay = 0;
|
||||||
OverAreaLimitVO overAreaLimitVO = new OverAreaLimitVO();
|
OverAreaLimitVO overAreaLimitVO = new OverAreaLimitVO();
|
||||||
@@ -572,32 +573,32 @@ public class AnalyzeServiceImpl implements IAnalyzeService {
|
|||||||
overAreaLimitVO.setInterHarmonicBiLi(BigDecimal.valueOf(inuharmCount * 1.0 / data.size() * 100).setScale(2, RoundingMode.HALF_UP).doubleValue());
|
overAreaLimitVO.setInterHarmonicBiLi(BigDecimal.valueOf(inuharmCount * 1.0 / data.size() * 100).setScale(2, RoundingMode.HALF_UP).doubleValue());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Map<Instant, List<LimitTarget>> map = list.stream().collect(Collectors.groupingBy(LimitTarget::getTime));
|
Map<LocalDate, List<RStatLimitTargetDPO>> map = list.stream().collect(Collectors.groupingBy(RStatLimitTargetDPO::getTime));
|
||||||
for (Instant key : map.keySet()) {
|
for (LocalDate key : map.keySet()) {
|
||||||
List<LimitTarget> l = map.get(key);
|
List<RStatLimitTargetDPO> l = map.get(key);
|
||||||
for (LimitTarget pojo : l) {
|
for (RStatLimitTargetDPO pojo : l) {
|
||||||
if (pojo.getFreqDevOverTime() > 0) {
|
if (pojo.getFreqDevOvertime() > 0) {
|
||||||
freqOverDay++;
|
freqOverDay++;
|
||||||
}
|
}
|
||||||
if (pojo.getVoltageDevOverTime() > 0) {
|
if (pojo.getVoltageDevOvertime() > 0) {
|
||||||
voltageOverDay++;
|
voltageOverDay++;
|
||||||
}
|
}
|
||||||
if (pojo.getUBalanceOverTime() > 0) {
|
if (pojo.getUbalanceOvertime() > 0) {
|
||||||
ubalanceOverDay++;
|
ubalanceOverDay++;
|
||||||
}
|
}
|
||||||
if (pojo.getFlickerOverTime() > 0) {
|
if (pojo.getFlickerOvertime() > 0) {
|
||||||
flickerOverDay++;
|
flickerOverDay++;
|
||||||
}
|
}
|
||||||
if (pojo.getINegOverTime() > 0) {
|
if (pojo.getINegOvertime() > 0) {
|
||||||
iNegOverDay++;
|
iNegOverDay++;
|
||||||
}
|
}
|
||||||
if (pojo.getUHarm2OverTime() > 0) {
|
if (pojo.getUharm2Overtime() > 0) {
|
||||||
uharmOverDay++;
|
uharmOverDay++;
|
||||||
}
|
}
|
||||||
if (pojo.getIHarm2OverTime() > 0) {
|
if (pojo.getIharm2Overtime() > 0) {
|
||||||
iharmOverDay++;
|
iharmOverDay++;
|
||||||
}
|
}
|
||||||
if (pojo.getInuHarm1OverTime() > 0) {
|
if (pojo.getInuharm2Overtime() > 0) {
|
||||||
inuharmOverDay++;
|
inuharmOverDay++;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -328,107 +328,12 @@ public class HarmonicServiceImpl implements IHarmonicService {
|
|||||||
* @author xy
|
* @author xy
|
||||||
* @date 2022/2/25 15:05
|
* @date 2022/2/25 15:05
|
||||||
*/
|
*/
|
||||||
public List<LimitTarget> getLimitTarget(List<String> lineList, String startTime, String endTime) {
|
public List<RStatLimitTargetDPO> getLimitTarget(List<String> lineList, String startTime, String endTime) {
|
||||||
List<LimitTarget> listInfo = new ArrayList<>();
|
return targetDMapper.selectList(new LambdaQueryWrapper<RStatLimitTargetDPO>()
|
||||||
List<RStatLimitTargetDPO> limitRates = targetDMapper.selectList(new LambdaQueryWrapper<RStatLimitTargetDPO>()
|
|
||||||
.in(RStatLimitTargetDPO::getLineId, lineList)
|
.in(RStatLimitTargetDPO::getLineId, lineList)
|
||||||
.ge(StrUtil.isNotBlank(startTime), RStatLimitTargetDPO::getTime, DateUtil.beginOfDay(DateUtil.parse(startTime)))
|
.ge(StrUtil.isNotBlank(startTime), RStatLimitTargetDPO::getTime, DateUtil.beginOfDay(DateUtil.parse(startTime)))
|
||||||
.le(StrUtil.isNotBlank(endTime), RStatLimitTargetDPO::getTime, DateUtil.endOfDay(DateUtil.parse(endTime)))
|
.le(StrUtil.isNotBlank(endTime), RStatLimitTargetDPO::getTime, DateUtil.endOfDay(DateUtil.parse(endTime)))
|
||||||
);
|
);
|
||||||
if (CollUtil.isNotEmpty(limitRates)) {
|
|
||||||
limitRates.forEach(list -> {
|
|
||||||
LimitTarget limitRatePO = BeanUtil.copyProperties(list, LimitTarget.class);
|
|
||||||
LocalDateTime localDateTime = list.getTime().atStartOfDay();
|
|
||||||
|
|
||||||
// 将LocalDateTime转换为Instant
|
|
||||||
Instant instant = localDateTime.toInstant(ZoneOffset.ofHours(8));
|
|
||||||
limitRatePO.setTime(instant);
|
|
||||||
limitRatePO.setLineId(list.getLineId());
|
|
||||||
limitRatePO.setPhasicType(list.getPhasicType());
|
|
||||||
limitRatePO.setAllTime(list.getAllTime());
|
|
||||||
limitRatePO.setFlickerAllTime(list.getFlickerAllTime());
|
|
||||||
limitRatePO.setFlickerOverTime(list.getFlickerOvertime());
|
|
||||||
limitRatePO.setFreqDevOverTime(list.getFreqDevOvertime());
|
|
||||||
limitRatePO.setIHarm2OverTime(list.getIharm2Overtime());
|
|
||||||
limitRatePO.setIHarm3OverTime(list.getIharm3Overtime());
|
|
||||||
limitRatePO.setIHarm4OverTime(list.getIharm4Overtime());
|
|
||||||
limitRatePO.setIHarm5OverTime(list.getIharm5Overtime());
|
|
||||||
limitRatePO.setIHarm6OverTime(list.getIharm6Overtime());
|
|
||||||
limitRatePO.setIHarm7OverTime(list.getIharm7Overtime());
|
|
||||||
limitRatePO.setIHarm8OverTime(list.getIharm8Overtime());
|
|
||||||
limitRatePO.setIHarm9OverTime(list.getIharm9Overtime());
|
|
||||||
limitRatePO.setIHarm10OverTime(list.getIharm10Overtime());
|
|
||||||
limitRatePO.setIHarm11OverTime(list.getIharm11Overtime());
|
|
||||||
limitRatePO.setIHarm12OverTime(list.getIharm12Overtime());
|
|
||||||
limitRatePO.setIHarm13OverTime(list.getIharm13Overtime());
|
|
||||||
limitRatePO.setIHarm14OverTime(list.getIharm14Overtime());
|
|
||||||
limitRatePO.setIHarm15OverTime(list.getIharm15Overtime());
|
|
||||||
limitRatePO.setIHarm16OverTime(list.getIharm16Overtime());
|
|
||||||
limitRatePO.setIHarm17OverTime(list.getIharm17Overtime());
|
|
||||||
limitRatePO.setIHarm18OverTime(list.getIharm18Overtime());
|
|
||||||
limitRatePO.setIHarm19OverTime(list.getIharm19Overtime());
|
|
||||||
limitRatePO.setIHarm20OverTime(list.getIharm20Overtime());
|
|
||||||
limitRatePO.setIHarm21OverTime(list.getIharm21Overtime());
|
|
||||||
limitRatePO.setIHarm22OverTime(list.getIharm22Overtime());
|
|
||||||
limitRatePO.setIHarm23OverTime(list.getIharm23Overtime());
|
|
||||||
limitRatePO.setIHarm24OverTime(list.getIharm24Overtime());
|
|
||||||
limitRatePO.setIHarm25OverTime(list.getIharm25Overtime());
|
|
||||||
limitRatePO.setINegOverTime(list.getINegOvertime());
|
|
||||||
limitRatePO.setUAberranceOverTime(list.getUaberranceOvertime());
|
|
||||||
limitRatePO.setUBalanceOverTime(list.getUbalanceOvertime());
|
|
||||||
limitRatePO.setUHarm2OverTime(list.getUharm2Overtime());
|
|
||||||
limitRatePO.setUHarm3OverTime(list.getUharm3Overtime());
|
|
||||||
limitRatePO.setUHarm4OverTime(list.getUharm4Overtime());
|
|
||||||
limitRatePO.setUHarm5OverTime(list.getUharm5Overtime());
|
|
||||||
limitRatePO.setUHarm6OverTime(list.getUharm6Overtime());
|
|
||||||
limitRatePO.setUHarm7OverTime(list.getUharm7Overtime());
|
|
||||||
limitRatePO.setUHarm8OverTime(list.getUharm8Overtime());
|
|
||||||
limitRatePO.setUHarm9OverTime(list.getUharm9Overtime());
|
|
||||||
limitRatePO.setUHarm10OverTime(list.getUharm10Overtime());
|
|
||||||
limitRatePO.setUHarm11OverTime(list.getUharm11Overtime());
|
|
||||||
limitRatePO.setUHarm12OverTime(list.getUharm12Overtime());
|
|
||||||
limitRatePO.setUHarm13OverTime(list.getUharm13Overtime());
|
|
||||||
limitRatePO.setUHarm14OverTime(list.getUharm14Overtime());
|
|
||||||
limitRatePO.setUHarm15OverTime(list.getUharm15Overtime());
|
|
||||||
limitRatePO.setUHarm16OverTime(list.getUharm16Overtime());
|
|
||||||
limitRatePO.setUHarm17OverTime(list.getUharm17Overtime());
|
|
||||||
limitRatePO.setUHarm18OverTime(list.getUharm18Overtime());
|
|
||||||
limitRatePO.setUHarm19OverTime(list.getUharm19Overtime());
|
|
||||||
limitRatePO.setUHarm20OverTime(list.getUharm20Overtime());
|
|
||||||
limitRatePO.setUHarm21OverTime(list.getUharm21Overtime());
|
|
||||||
limitRatePO.setUHarm22OverTime(list.getUharm22Overtime());
|
|
||||||
limitRatePO.setUHarm23OverTime(list.getUharm23Overtime());
|
|
||||||
limitRatePO.setUHarm24OverTime(list.getUharm24Overtime());
|
|
||||||
limitRatePO.setUHarm25OverTime(list.getUharm25Overtime());
|
|
||||||
|
|
||||||
limitRatePO.setInuHarm1OverTime(list.getInuharm1Overtime());
|
|
||||||
limitRatePO.setInuHarm2OverTime(list.getInuharm2Overtime());
|
|
||||||
limitRatePO.setInuHarm3OverTime(list.getInuharm3Overtime());
|
|
||||||
limitRatePO.setInuHarm4OverTime(list.getInuharm4Overtime());
|
|
||||||
limitRatePO.setInuHarm5OverTime(list.getInuharm5Overtime());
|
|
||||||
limitRatePO.setInuHarm6OverTime(list.getInuharm6Overtime());
|
|
||||||
limitRatePO.setInuHarm7OverTime(list.getInuharm7Overtime());
|
|
||||||
limitRatePO.setInuHarm8OverTime(list.getInuharm8Overtime());
|
|
||||||
limitRatePO.setInuHarm9OverTime(list.getInuharm9Overtime());
|
|
||||||
limitRatePO.setInuHarm10OverTime(list.getInuharm10Overtime());
|
|
||||||
limitRatePO.setInuHarm11OverTime(list.getInuharm11Overtime());
|
|
||||||
limitRatePO.setInuHarm12OverTime(list.getInuharm12Overtime());
|
|
||||||
limitRatePO.setInuHarm13OverTime(list.getInuharm13Overtime());
|
|
||||||
limitRatePO.setInuHarm14OverTime(list.getInuharm14Overtime());
|
|
||||||
limitRatePO.setInuHarm15OverTime(list.getInuharm15Overtime());
|
|
||||||
limitRatePO.setInuHarm16OverTime(list.getInuharm16Overtime());
|
|
||||||
|
|
||||||
limitRatePO.setFlickerOverTime(list.getFlickerOvertime());
|
|
||||||
limitRatePO.setFlickerAllTime(list.getFlickerAllTime());
|
|
||||||
limitRatePO.setFreqDevOverTime(list.getFreqDevOvertime());
|
|
||||||
limitRatePO.setVoltageDevOverTime(list.getVoltageDevOvertime());
|
|
||||||
limitRatePO.setUAberranceOverTime(list.getUaberranceOvertime());
|
|
||||||
limitRatePO.setINegOverTime(list.getINegOvertime());
|
|
||||||
listInfo.add(limitRatePO);
|
|
||||||
});
|
|
||||||
}
|
|
||||||
return listInfo;
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public AreaDTO handleDataNew(List<RStatLimitTargetDPO> list, List<RStatLimitTargetDPO> sumList, String type) {
|
public AreaDTO handleDataNew(List<RStatLimitTargetDPO> list, List<RStatLimitTargetDPO> sumList, String type) {
|
||||||
@@ -497,7 +402,7 @@ public class HarmonicServiceImpl implements IHarmonicService {
|
|||||||
* @author xy
|
* @author xy
|
||||||
* @date 2022/2/25 15:05
|
* @date 2022/2/25 15:05
|
||||||
*/
|
*/
|
||||||
public AreaDTO handleData(List<LimitTarget> list, String type, List<String> lineList, String startTime, String endTime) {
|
public AreaDTO handleData(List<RStatLimitTargetDPO> list, String type, List<String> lineList, String startTime, String endTime) {
|
||||||
int onlineCount = 0, overLineCount = 0, overCountByDay = 0;
|
int onlineCount = 0, overLineCount = 0, overCountByDay = 0;
|
||||||
double avgOverDay = 0.0, ratio = 0.0;
|
double avgOverDay = 0.0, ratio = 0.0;
|
||||||
AreaDTO areaDTO = new AreaDTO();
|
AreaDTO areaDTO = new AreaDTO();
|
||||||
@@ -526,18 +431,18 @@ public class HarmonicServiceImpl implements IHarmonicService {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Map<Instant, List<LimitTarget>> map = list.stream().collect(Collectors.groupingBy(LimitTarget::getTime));
|
Map<LocalDate, List<RStatLimitTargetDPO>> map = list.stream().collect(Collectors.groupingBy(RStatLimitTargetDPO::getTime));
|
||||||
for (Instant key : map.keySet()) {
|
for (LocalDate key : map.keySet()) {
|
||||||
int overDay = 0;
|
int overDay = 0;
|
||||||
List<LimitTarget> l = map.get(key);
|
List<RStatLimitTargetDPO> l = map.get(key);
|
||||||
for (LimitTarget pojo : l) {
|
for (RStatLimitTargetDPO pojo : l) {
|
||||||
if (Objects.equals(type, DicDataEnum.XBDY_ENUM.getCode())) {
|
if (Objects.equals(type, DicDataEnum.XBDY_ENUM.getCode())) {
|
||||||
if (pojo.getUAberranceOverTime() > 0 || pojo.getUHarm2OverTime() > 0 || pojo.getUHarm3OverTime() > 0 || pojo.getUHarm4OverTime() > 0 || pojo.getUHarm5OverTime() > 0 || pojo.getUHarm6OverTime() > 0 || pojo.getUHarm7OverTime() > 0 || pojo.getUHarm8OverTime() > 0 || pojo.getUHarm9OverTime() > 0 || pojo.getUHarm10OverTime() > 0 || pojo.getUHarm11OverTime() > 0 || pojo.getUHarm12OverTime() > 0 || pojo.getUHarm13OverTime() > 0 || pojo.getUHarm14OverTime() > 0 || pojo.getUHarm15OverTime() > 0 || pojo.getUHarm16OverTime() > 0 || pojo.getUHarm17OverTime() > 0 || pojo.getUHarm18OverTime() > 0 || pojo.getUHarm19OverTime() > 0 || pojo.getUHarm20OverTime() > 0 || pojo.getUHarm21OverTime() > 0 || pojo.getUHarm22OverTime() > 0 || pojo.getUHarm23OverTime() > 0 || pojo.getUHarm24OverTime() > 0 || pojo.getUHarm25OverTime() > 0) {
|
if (pojo.getUaberranceOvertime() > 0 || pojo.getUharm20Overtime() > 0 || pojo.getUharm3Overtime() > 0 || pojo.getUharm4Overtime() > 0 || pojo.getUharm5Overtime() > 0 || pojo.getUharm6Overtime() > 0 || pojo.getUharm7Overtime() > 0 || pojo.getUharm8Overtime() > 0 || pojo.getUharm9Overtime() > 0 || pojo.getUharm10Overtime() > 0 || pojo.getUharm11Overtime() > 0 || pojo.getUharm12Overtime() > 0 || pojo.getUharm13Overtime() > 0 || pojo.getUharm14Overtime() > 0 || pojo.getUharm15Overtime() > 0 || pojo.getUharm16Overtime() > 0 || pojo.getUharm17Overtime() > 0 || pojo.getUharm18Overtime() > 0 || pojo.getUharm19Overtime() > 0 || pojo.getUharm20Overtime() > 0 || pojo.getUharm21Overtime() > 0 || pojo.getUharm22Overtime() > 0 || pojo.getUharm23Overtime() > 0 || pojo.getUharm24Overtime() > 0 || pojo.getUharm25Overtime() > 0) {
|
||||||
overCountByDay = overCountByDay + 1;
|
overCountByDay = overCountByDay + 1;
|
||||||
overDay = overDay + 1;
|
overDay = overDay + 1;
|
||||||
}
|
}
|
||||||
} else if (Objects.equals(type, DicDataEnum.XBDL_ENUM.getCode())) {
|
} else if (Objects.equals(type, DicDataEnum.XBDL_ENUM.getCode())) {
|
||||||
if (pojo.getIHarm2OverTime() > 0 || pojo.getIHarm3OverTime() > 0 || pojo.getIHarm4OverTime() > 0 || pojo.getIHarm5OverTime() > 0 || pojo.getIHarm6OverTime() > 0 || pojo.getIHarm7OverTime() > 0 || pojo.getIHarm8OverTime() > 0 || pojo.getIHarm9OverTime() > 0 || pojo.getIHarm10OverTime() > 0 || pojo.getIHarm11OverTime() > 0 || pojo.getIHarm12OverTime() > 0 || pojo.getIHarm13OverTime() > 0 || pojo.getIHarm14OverTime() > 0 || pojo.getIHarm15OverTime() > 0 || pojo.getIHarm16OverTime() > 0 || pojo.getIHarm17OverTime() > 0 || pojo.getIHarm18OverTime() > 0 || pojo.getIHarm19OverTime() > 0 || pojo.getIHarm20OverTime() > 0 || pojo.getIHarm21OverTime() > 0 || pojo.getIHarm22OverTime() > 0 || pojo.getIHarm23OverTime() > 0 || pojo.getIHarm24OverTime() > 0 || pojo.getIHarm25OverTime() > 0) {
|
if (pojo.getIharm2Overtime() > 0 || pojo.getIharm3Overtime() > 0 || pojo.getIharm4Overtime() > 0 || pojo.getIharm5Overtime() > 0 || pojo.getIharm6Overtime() > 0 || pojo.getIharm7Overtime() > 0 || pojo.getIharm8Overtime() > 0 || pojo.getIharm9Overtime() > 0 || pojo.getIharm10Overtime() > 0 || pojo.getIharm11Overtime() > 0 || pojo.getIharm12Overtime() > 0 || pojo.getIharm13Overtime() > 0 || pojo.getIharm14Overtime() > 0 || pojo.getIharm15Overtime() > 0 || pojo.getIharm16Overtime() > 0 || pojo.getIharm17Overtime() > 0 || pojo.getIharm18Overtime() > 0 || pojo.getIharm19Overtime() > 0 || pojo.getIharm20Overtime() > 0 || pojo.getIharm21Overtime() > 0 || pojo.getIharm22Overtime() > 0 || pojo.getIharm23Overtime() > 0 || pojo.getIharm24Overtime() > 0 || pojo.getIharm25Overtime() > 0) {
|
||||||
overCountByDay = overCountByDay + 1;
|
overCountByDay = overCountByDay + 1;
|
||||||
overDay = overDay + 1;
|
overDay = overDay + 1;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -684,32 +684,25 @@ public class PollutionSubstationServiceImpl extends ServiceImpl<RStatPollutionSu
|
|||||||
List<PollutionLineDTO> list = new ArrayList<>();
|
List<PollutionLineDTO> list = new ArrayList<>();
|
||||||
if (param.getType() == 0) {
|
if (param.getType() == 0) {
|
||||||
param.setServerName(generalInfo.getMicroServiceName());
|
param.setServerName(generalInfo.getMicroServiceName());
|
||||||
List<String> lineList = new ArrayList<>();
|
|
||||||
PollutionParamDTO paramDTO = new PollutionParamDTO();
|
PollutionParamDTO paramDTO = new PollutionParamDTO();
|
||||||
if (StringUtils.isBlank(RequestUtil.getDeptIndex())) {
|
List<GeneralDeviceDTO> generalDeviceDTOList = generalDeviceInfoClient.getPracticalRunDeviceInfo(param).getData();
|
||||||
return list;
|
List<String> ids = generalDeviceDTOList.stream().filter(it->CollUtil.isNotEmpty(it.getLineIndexes())).flatMap(it->it.getLineIndexes().stream()).collect(Collectors.toList());
|
||||||
}
|
if (!CollectionUtils.isEmpty(ids)) {
|
||||||
List<GeneralDeviceDTO> deviceList = generalDeviceInfoClient.getPracticalRunDeviceInfo(param).getData();
|
List<PublicDTO> result = rMpPollutionDPOMapper.getTop10Line(ids, DateUtil.beginOfDay(DateUtil.parse(param.getSearchBeginTime())), DateUtil.endOfDay(DateUtil.parse(param.getSearchEndTime())), param.getStatisticalType().getId());
|
||||||
deviceList.forEach(item -> {
|
|
||||||
if (!CollectionUtils.isEmpty(item.getLineIndexes())) {
|
|
||||||
lineList.addAll(item.getLineIndexes());
|
|
||||||
}
|
|
||||||
});
|
|
||||||
if (!CollectionUtils.isEmpty(lineList)) {
|
|
||||||
paramDTO.setLineList(lineList);
|
|
||||||
list = lineFeignClient.getLineInfo(paramDTO).getData();
|
|
||||||
List<PublicDTO> result = rMpPollutionDPOMapper.getTop10Line(lineList, DateUtil.beginOfDay(DateUtil.parse(param.getSearchBeginTime())), DateUtil.endOfDay(DateUtil.parse(param.getSearchEndTime())), param.getStatisticalType().getId());
|
|
||||||
if (!CollectionUtils.isEmpty(result)) {
|
if (!CollectionUtils.isEmpty(result)) {
|
||||||
list.stream().map(list1 -> result.stream().filter(list2 -> Objects.equals(list1.getId(), list2.getId())).findAny().map(m -> {
|
List<String> monitorIds = result.stream().map(PublicDTO::getId).distinct().collect(Collectors.toList());
|
||||||
list1.setData(m.getData());
|
paramDTO.setLineList(monitorIds);
|
||||||
return list1;
|
List<PollutionLineDTO> monitorList = lineFeignClient.getLineInfo(paramDTO).getData();
|
||||||
})).collect(Collectors.toList());
|
Map<String,PollutionLineDTO> monitorMap = monitorList.stream().collect(Collectors.toMap(PollutionLineDTO::getId,Function.identity()));
|
||||||
|
list = result.stream().map(it->{
|
||||||
|
PollutionLineDTO pollutionLineDTO = new PollutionLineDTO();
|
||||||
|
pollutionLineDTO.setData(NumberUtil.round(it.getData(),2).doubleValue());
|
||||||
|
PollutionLineDTO monitor = monitorMap.get(it.getId());
|
||||||
|
pollutionLineDTO.setName(monitor.getSubstation()+"_"+monitor.getName());
|
||||||
|
return pollutionLineDTO;
|
||||||
|
}).sorted(Comparator.comparing(PollutionLineDTO::getData,Comparator.reverseOrder())).collect(Collectors.toList());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
list.sort((item1, item2) -> item2.getData().compareTo(item1.getData()));
|
|
||||||
if (list.size() > Param.UP_LIMIT) {
|
|
||||||
return list.subList(Param.DOWN_LIMIT, Param.UP_LIMIT);
|
|
||||||
}
|
|
||||||
return list;
|
return list;
|
||||||
}
|
}
|
||||||
//pms查询信息
|
//pms查询信息
|
||||||
|
|||||||
Reference in New Issue
Block a user