1.代码调整
This commit is contained in:
@@ -60,7 +60,6 @@ public class PmsSummaryStatisticsServiceImpl implements PmsSummaryStatisticsServ
|
||||
|
||||
List<String> deptIds = data.stream().map(DeptDTO::getCode).collect(Collectors.toList());
|
||||
|
||||
|
||||
//获得部门下面的数据集合
|
||||
List<Monitor> monitors = monitorMapper.selectList(new LambdaQueryWrapper<Monitor>()
|
||||
.in(CollectionUtil.isNotEmpty(deptIds), Monitor::getOrgId, deptIds)
|
||||
@@ -69,22 +68,17 @@ public class PmsSummaryStatisticsServiceImpl implements PmsSummaryStatisticsServ
|
||||
);
|
||||
//根据干扰源类型进行分组统计当前部门下有多少监测点
|
||||
Map<String, List<Monitor>> monitorsMonitorCount = monitors.stream().collect(Collectors.groupingBy(Monitor::getMonitorTag));
|
||||
//根据部门统计终端数量
|
||||
ArrayList<Monitor> monitorsCount = monitors.stream().collect(Collectors.collectingAndThen
|
||||
(Collectors.toCollection(() ->
|
||||
new TreeSet<>(Comparator.comparing(o -> o.getOrgId() + ";" + o.getTerminalId()))), ArrayList::new));
|
||||
|
||||
Map<String, Long> monitorsNum = monitorsCount.stream().collect(Collectors.groupingBy(Monitor::getMonitorTag, Collectors.counting()));
|
||||
PmsSummaryStatisticsVO.SummaryVO vo;
|
||||
for (String monitorTag : param.getMonitorTags()) {
|
||||
vo = new PmsSummaryStatisticsVO.SummaryVO();
|
||||
if (monitorsNum.containsKey(monitorTag)) {
|
||||
if (monitorsMonitorCount.containsKey(monitorTag)) {
|
||||
List<Monitor> monitorsTag = monitorsMonitorCount.get(monitorTag);
|
||||
long count = monitorsTag.stream().map(Monitor::getTerminalId).distinct().count();
|
||||
vo.setName(monitorTag);
|
||||
//监测点数量
|
||||
vo.setMonitorCount(monitorsMonitorCount.get(monitorTag).size());
|
||||
vo.setMonitorCount(monitorsTag.size());
|
||||
//设备数量
|
||||
vo.setTerminalCount(Math.toIntExact(monitorsNum.get(monitorTag)));
|
||||
|
||||
vo.setTerminalCount(Math.toIntExact(count));
|
||||
} else {
|
||||
vo.setName(monitorTag);
|
||||
//监测点数量
|
||||
@@ -94,6 +88,11 @@ public class PmsSummaryStatisticsServiceImpl implements PmsSummaryStatisticsServ
|
||||
}
|
||||
vos.add(vo);
|
||||
}
|
||||
PmsSummaryStatisticsVO.SummaryVO count = new PmsSummaryStatisticsVO.SummaryVO();
|
||||
count.setName("总数");
|
||||
count.setMonitorCount(Math.toIntExact(monitors.stream().map(Monitor::getId).distinct().count()));
|
||||
count.setTerminalCount(Math.toIntExact(monitors.stream().map(Monitor::getTerminalId).distinct().count()));
|
||||
vos.add(count);
|
||||
}
|
||||
return vos;
|
||||
}
|
||||
|
||||
@@ -2,6 +2,7 @@ package com.njcn.harmonic.service.specialanalysis.impl;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import cn.hutool.core.collection.CollUtil;
|
||||
import cn.hutool.core.date.DateUtil;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
@@ -141,16 +142,18 @@ public class RMpWpPowerDetailMServiceImpl extends ServiceImpl<RMpWpPowerDetailMM
|
||||
PmsTractionStationParam stationParam = new PmsTractionStationParam();
|
||||
stationParam.setOrgIds(deptIds);
|
||||
List<PmsTractionStationDTO> tractionStationDTOS = tractionStationClient.getPmsTractionStationInfo(stationParam).getData();
|
||||
|
||||
if(CollUtil.isEmpty(tractionStationDTOS)){
|
||||
return new Page<>();
|
||||
}
|
||||
//获取牵引站id集合
|
||||
List<String> ids = tractionStationDTOS.stream().map(PmsTractionStationDTO::getId).collect(Collectors.toList());
|
||||
Map<String, PmsTractionStationDTO> dtoMap = tractionStationDTOS.stream()
|
||||
.collect(Collectors.toMap(PmsTractionStationDTO::getId, Function.identity()));
|
||||
|
||||
Page<RMpRailwayTractionDetail> oldPage = rMpRailwayTractionDetailMapper.selectPage(new Page<>(param.getPageNum(), param.getPageSize()), new LambdaQueryWrapper<RMpRailwayTractionDetail>()
|
||||
.in(RMpRailwayTractionDetail::getTractionStationId, ids)
|
||||
.ge(StrUtil.isNotBlank(param.getStartTime()), RMpRailwayTractionDetail::getDataDate, param.getStartTime())
|
||||
.le(StrUtil.isNotBlank(param.getEndTime()), RMpRailwayTractionDetail::getDataDate, param.getEndTime())
|
||||
.in(CollUtil.isNotEmpty(ids),RMpRailwayTractionDetail::getTractionStationId, ids)
|
||||
.ge(StrUtil.isNotBlank(param.getStartTime()), RMpRailwayTractionDetail::getDataDate, DateUtil.beginOfDay(DateUtil.parse(param.getStartTime())))
|
||||
.le(StrUtil.isNotBlank(param.getEndTime()), RMpRailwayTractionDetail::getDataDate,DateUtil.endOfDay(DateUtil.parse(param.getEndTime())))
|
||||
);
|
||||
|
||||
List<RMpRailwayTractionDetailVO> newList = BeanUtil.copyToList(oldPage.getRecords(), RMpRailwayTractionDetailVO.class);
|
||||
|
||||
Reference in New Issue
Block a user