1.冀北电网一张图
This commit is contained in:
@@ -7,6 +7,7 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.njcn.device.biz.commApi.CommTerminalGeneralClient;
|
||||
import com.njcn.device.biz.pojo.dto.DeptGetSubStationDTO;
|
||||
import com.njcn.device.biz.pojo.dto.LineDevGetDTO;
|
||||
import com.njcn.device.biz.pojo.dto.SubGetBase;
|
||||
import com.njcn.device.biz.pojo.param.DeptGetLineParam;
|
||||
import com.njcn.device.pq.pojo.vo.GridDiagramVO;
|
||||
@@ -118,10 +119,6 @@ public class RMpTargetWarnDServiceImpl extends ServiceImpl<RMpTargetWarnDMapper,
|
||||
List<String> voltageIds,
|
||||
List<RMpTargetWarnDPO> list
|
||||
) {
|
||||
long countOne= 0;
|
||||
long countTow= 0;
|
||||
long gwCountOne= 0;
|
||||
long gwCountTow= 0;
|
||||
GridDiagramVO.StatisticsData data;
|
||||
for (String voltageId : voltageIds) {
|
||||
for (int i = 0; i < 2; i++) {
|
||||
@@ -129,6 +126,7 @@ public class RMpTargetWarnDServiceImpl extends ServiceImpl<RMpTargetWarnDMapper,
|
||||
int finalI = i;
|
||||
long count = subBaseList.stream()
|
||||
.filter(x -> getIsUpToGrid(finalI,x,voltageId))
|
||||
.map(SubGetBase::getId)
|
||||
.distinct()
|
||||
.count();
|
||||
data.setNumOne(count);
|
||||
@@ -136,6 +134,7 @@ public class RMpTargetWarnDServiceImpl extends ServiceImpl<RMpTargetWarnDMapper,
|
||||
AtomicLong num= new AtomicLong();
|
||||
subBaseList.stream().filter(x -> getIsUpToGrid(finalI, x, voltageId)).forEach(x -> {
|
||||
List<String> line=new ArrayList<>();
|
||||
//0:全部 1:国网
|
||||
if(finalI==0){
|
||||
line.addAll(x.getUnitChildrenList());
|
||||
}else{
|
||||
@@ -148,25 +147,43 @@ public class RMpTargetWarnDServiceImpl extends ServiceImpl<RMpTargetWarnDMapper,
|
||||
});
|
||||
data.setNumTwo(num.get());
|
||||
if(i==0){
|
||||
countOne+=count;
|
||||
countTow+=num.get();
|
||||
statisticsData.add(data);
|
||||
}else{
|
||||
gwCountOne+=count;
|
||||
gwCountTow+=num.get();
|
||||
gwStatisticsData.add(data);
|
||||
}
|
||||
}
|
||||
}
|
||||
data=new GridDiagramVO.StatisticsData();
|
||||
data.setNumOne(countOne);
|
||||
data.setNumTwo(countTow);
|
||||
data = new GridDiagramVO.StatisticsData();
|
||||
data.setNumOne( subBaseList.stream()
|
||||
.map(SubGetBase::getId)
|
||||
.distinct()
|
||||
.count());
|
||||
AtomicLong num= new AtomicLong();
|
||||
subBaseList.stream().forEach(x -> {
|
||||
List<String> line=x.getUnitChildrenList();
|
||||
int sum = list.stream().filter(d -> line.contains(d.getMeasurementPointId())).mapToInt(RMpTargetWarnDPO::getIsWarn).sum();
|
||||
if (sum > 0) {
|
||||
num.getAndIncrement();
|
||||
}
|
||||
});
|
||||
data.setNumTwo(num.get());
|
||||
statisticsData.add(data);
|
||||
data=new GridDiagramVO.StatisticsData();
|
||||
data.setNumOne(gwCountOne);
|
||||
data.setNumTwo(gwCountTow);
|
||||
data = new GridDiagramVO.StatisticsData();
|
||||
data.setNumOne(subBaseList.stream()
|
||||
.filter(x -> 1 == x.getIsUpToGrid())
|
||||
.map(SubGetBase::getId)
|
||||
.distinct()
|
||||
.count());
|
||||
AtomicLong gwNum= new AtomicLong();
|
||||
subBaseList.stream().filter(x -> 1 == x.getIsUpToGrid()).forEach(x -> {
|
||||
List<String> line=x.getUnitChildrenList();
|
||||
int sum = list.stream().filter(d -> line.contains(d.getMeasurementPointId())).mapToInt(RMpTargetWarnDPO::getIsWarn).sum();
|
||||
if (sum > 0) {
|
||||
gwNum.getAndIncrement();
|
||||
}
|
||||
});
|
||||
data.setNumTwo(gwNum.get());
|
||||
gwStatisticsData.add(data);
|
||||
|
||||
}
|
||||
private Boolean getIsUpToGrid(Integer type, SubGetBase subGetBase, String voltageId) {
|
||||
//0:全部 1:国网上送监测点
|
||||
|
||||
@@ -68,19 +68,25 @@ public class RStatLimitServiceImpl implements RStatLimitService {
|
||||
//监测点总数量
|
||||
List<String> lineIds = list.stream().flatMap(x -> x.getLineIndexes().stream()).distinct().collect(Collectors.toList());
|
||||
//超标监测点信息
|
||||
List<RStatLimitTargetDPO> limitTargetList = rStatLimitTargetDMapper.selectList(new LambdaQueryWrapper<RStatLimitTargetDPO>()
|
||||
.select(RStatLimitTargetDPO::getLineId, RStatLimitTargetDPO::getAllTime, RStatLimitTargetDPO::getFlickerAllTime)
|
||||
.in(RStatLimitTargetDPO::getLineId, lineIds)
|
||||
.ge(StrUtil.isNotBlank(deviceInfoParam.getSearchBeginTime()), RStatLimitTargetDPO::getTime, DateUtil.beginOfDay(DateUtil.parse(deviceInfoParam.getSearchBeginTime())))
|
||||
.le(StrUtil.isNotBlank(deviceInfoParam.getSearchEndTime()), RStatLimitTargetDPO::getTime, DateUtil.endOfDay(DateUtil.parse(deviceInfoParam.getSearchEndTime()))));
|
||||
|
||||
List<RStatLimitTargetDPO> limitTargetList =new ArrayList<>();
|
||||
List<RStatIntegrityD> integrityList =new ArrayList<>();
|
||||
if(CollUtil.isNotEmpty(lineIds)){
|
||||
limitTargetList = rStatLimitTargetDMapper.selectList(new LambdaQueryWrapper<RStatLimitTargetDPO>()
|
||||
.select(RStatLimitTargetDPO::getLineId, RStatLimitTargetDPO::getAllTime, RStatLimitTargetDPO::getFlickerAllTime)
|
||||
.in(RStatLimitTargetDPO::getLineId, lineIds)
|
||||
.ge(StrUtil.isNotBlank(deviceInfoParam.getSearchBeginTime()), RStatLimitTargetDPO::getTime, DateUtil.beginOfDay(DateUtil.parse(deviceInfoParam.getSearchBeginTime())))
|
||||
.le(StrUtil.isNotBlank(deviceInfoParam.getSearchEndTime()), RStatLimitTargetDPO::getTime, DateUtil.endOfDay(DateUtil.parse(deviceInfoParam.getSearchEndTime()))));
|
||||
integrityList = lineIntegrityClient.getIntegrityByLineIds(lineIds, deviceInfoParam.getSearchBeginTime(), deviceInfoParam.getSearchEndTime()).getData();
|
||||
}
|
||||
//终端在线率
|
||||
OnlineRateParam param=new OnlineRateParam();
|
||||
param.setIds(devIds);
|
||||
param.setStartTime(deviceInfoParam.getSearchBeginTime());
|
||||
param.setEndTime(deviceInfoParam.getSearchEndTime());
|
||||
List<RStatOnlinerateVO> onlineRateList = generalDeviceInfoClient.getOnlineRateByDevIds(param).getData();
|
||||
List<RStatIntegrityD> integrityList = lineIntegrityClient.getIntegrityByLineIds(lineIds, deviceInfoParam.getSearchBeginTime(), deviceInfoParam.getSearchEndTime()).getData();
|
||||
List<RStatOnlinerateVO> onlineRateList =new ArrayList<>();
|
||||
if(CollUtil.isNotEmpty(devIds)){
|
||||
OnlineRateParam param=new OnlineRateParam();
|
||||
param.setIds(devIds);
|
||||
param.setStartTime(deviceInfoParam.getSearchBeginTime());
|
||||
param.setEndTime(deviceInfoParam.getSearchEndTime());
|
||||
onlineRateList = generalDeviceInfoClient.getOnlineRateByDevIds(param).getData();
|
||||
}
|
||||
List<GeneralDeviceDTO> topList=new ArrayList<>();
|
||||
List<GeneralDeviceDTO> otherList=new ArrayList<>();
|
||||
if(list.size()>4){
|
||||
@@ -116,7 +122,6 @@ public class RStatLimitServiceImpl implements RStatLimitService {
|
||||
onLineAndIntegrity(otherLineIds, integrityList, otherDevIds, onlineRateList,limitTargetList, lineData);
|
||||
info.add(lineData);
|
||||
|
||||
|
||||
return info;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user