|
|
|
|
@@ -7,6 +7,7 @@ import cn.hutool.core.date.DatePattern;
|
|
|
|
|
import cn.hutool.core.date.DateUtil;
|
|
|
|
|
import cn.hutool.core.util.StrUtil;
|
|
|
|
|
import com.alibaba.fastjson.JSON;
|
|
|
|
|
import com.baomidou.mybatisplus.core.conditions.Wrapper;
|
|
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
|
|
|
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
|
|
|
|
@@ -16,6 +17,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
|
|
import com.njcn.common.pojo.exception.BusinessException;
|
|
|
|
|
import com.njcn.harmonic.mapper.upload.*;
|
|
|
|
|
import com.njcn.harmonic.pojo.dto.upload.PqEvaluationCreateDTO;
|
|
|
|
|
import com.njcn.harmonic.pojo.dto.upload.RDimUpDTO;
|
|
|
|
|
import com.njcn.harmonic.pojo.param.UploadDataParam;
|
|
|
|
|
import com.njcn.harmonic.pojo.param.UploadParam;
|
|
|
|
|
import com.njcn.harmonic.pojo.param.upload.DimBusBarParam;
|
|
|
|
|
@@ -24,6 +26,7 @@ import com.njcn.harmonic.pojo.vo.upload.DimBusBarVO;
|
|
|
|
|
import com.njcn.harmonic.pojo.vo.upload.UploadEvaluationDataVo;
|
|
|
|
|
import com.njcn.harmonic.service.upload.IEvaluationDataService;
|
|
|
|
|
import com.njcn.system.api.DicDataFeignClient;
|
|
|
|
|
import com.njcn.system.enums.DicDataEnum;
|
|
|
|
|
import com.njcn.system.pojo.po.DictData;
|
|
|
|
|
import com.njcn.user.api.DeptFeignClient;
|
|
|
|
|
import com.njcn.user.pojo.po.Dept;
|
|
|
|
|
@@ -39,7 +42,9 @@ import org.springframework.stereotype.Service;
|
|
|
|
|
|
|
|
|
|
import java.math.BigDecimal;
|
|
|
|
|
import java.time.LocalDate;
|
|
|
|
|
import java.time.format.DateTimeFormatter;
|
|
|
|
|
import java.util.*;
|
|
|
|
|
import java.util.function.Function;
|
|
|
|
|
import java.util.stream.Collectors;
|
|
|
|
|
import java.util.stream.Stream;
|
|
|
|
|
|
|
|
|
|
@@ -173,88 +178,245 @@ public class REvaluationDataServiceImpl extends ServiceImpl<RUploadEvaluationDat
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public Page<DimBusBarVO> getBaseEvaOnlineBusDetail(DimBusBarParam param) {
|
|
|
|
|
Dept dept = deptFeignClient.getRootDept().getData();
|
|
|
|
|
List<String> temBusIds = new ArrayList<>();
|
|
|
|
|
|
|
|
|
|
//TODO 非空判断以总部的返回方式返回
|
|
|
|
|
//统计类型不为空,则查询指定统计天数的数据
|
|
|
|
|
if (StrUtil.isNotBlank(param.getStatType())) {
|
|
|
|
|
//判断日月年不为空时候对应参数不能为空
|
|
|
|
|
if (StrUtil.isBlank(param.getStartTime()) || StrUtil.isBlank(param.getEndTime())) {
|
|
|
|
|
//TODO 需要抛出异常,抛异常格式需要和总部要求格式一致
|
|
|
|
|
if (StrUtil.isBlank(param.getStatType())) {
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
//判断日月年不为空时候对应参数不能为空
|
|
|
|
|
if (StrUtil.isBlank(param.getStartTime()) || StrUtil.isBlank(param.getEndTime())) {
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (StrUtil.isBlank(param.getNodeId())) {
|
|
|
|
|
//没有组织id则认为查询日的省级数据
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
LocalDate begin = LocalDate.parse(param.getStartTime());
|
|
|
|
|
if (param.getStatType().equals(DicDataEnum.STATISTICAL_TYPE_D.getCode())) {
|
|
|
|
|
//具体日期投运,监测台账查询
|
|
|
|
|
LambdaQueryWrapper<PmsRunStatisticD> dayLam = new LambdaQueryWrapper<>();
|
|
|
|
|
dayLam.eq(PmsRunStatisticD::getStatisticDate, begin).eq(PmsRunStatisticD::getDeptId, param.getNodeId());
|
|
|
|
|
PmsRunStatisticD pmsRunStatisticD = pmsRunStatisticDMapper.selectOne(dayLam);
|
|
|
|
|
if (Objects.nonNull(pmsRunStatisticD)) {
|
|
|
|
|
if (StrUtil.isNotBlank(param.getDataSource())) {
|
|
|
|
|
temBusIds = new ArrayList<>(Arrays.asList(pmsRunStatisticD.getOnlineBusMidIds().split(StrUtil.COMMA)));
|
|
|
|
|
} else {
|
|
|
|
|
temBusIds = new ArrayList<>(Arrays.asList(pmsRunStatisticD.getRunBusIds().split(StrUtil.COMMA)));
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (StrUtil.isBlank(param.getNodeId())) {
|
|
|
|
|
//没有组织id则认为查询日的省级数据
|
|
|
|
|
param.setNodeId(dept.getCode());
|
|
|
|
|
//稳态指标条件筛选
|
|
|
|
|
if (StrUtil.isNotBlank(param.getIndexType())) {
|
|
|
|
|
QueryWrapper<RDimBusUpD> queryWrapper = new QueryWrapper<>();
|
|
|
|
|
this.harmTarget(param,temBusIds, queryWrapper);
|
|
|
|
|
List<RDimBusUpD> rDimBusUpDList = rDimBusUpDMapper.selectList(queryWrapper);
|
|
|
|
|
if (CollectionUtil.isEmpty(rDimBusUpDList)) {
|
|
|
|
|
return new Page<>();
|
|
|
|
|
}
|
|
|
|
|
temBusIds = rDimBusUpDList.stream().map(RDimBusUpD::getMidBusId).distinct().collect(Collectors.toList());
|
|
|
|
|
}
|
|
|
|
|
List<String> orgIds = deptFeignClient.getDepSonSelfCodetByCode(param.getNodeId()).getData();
|
|
|
|
|
param.setOrgIds(orgIds);
|
|
|
|
|
|
|
|
|
|
if (param.getStatType().equals("03")) {
|
|
|
|
|
LocalDate day = LocalDate.parse(param.getStartTime());
|
|
|
|
|
//具体日期投运,监测台账查询
|
|
|
|
|
LambdaQueryWrapper<PmsRunStatisticD> dayLam = new LambdaQueryWrapper<>();
|
|
|
|
|
dayLam.eq(PmsRunStatisticD::getStatisticDate, day).in(PmsRunStatisticD::getDeptId, param.getNodeId());
|
|
|
|
|
PmsRunStatisticD pmsRunStatisticD = pmsRunStatisticDMapper.selectOne(dayLam);
|
|
|
|
|
if (Objects.nonNull(pmsRunStatisticD)) {
|
|
|
|
|
if (StrUtil.isNotBlank(param.getDataSource())) {
|
|
|
|
|
temBusIds = new ArrayList<>(Arrays.asList(pmsRunStatisticD.getOnlineBusMidIds().split(StrUtil.COMMA)));
|
|
|
|
|
} else {
|
|
|
|
|
temBusIds = new ArrayList<>(Arrays.asList(pmsRunStatisticD.getRunBusIds().split(StrUtil.COMMA)));
|
|
|
|
|
}
|
|
|
|
|
} else if (param.getStatType().equals(DicDataEnum.STATISTICAL_TYPE_M.getCode())) {
|
|
|
|
|
//具体日期投运,监测台账查询
|
|
|
|
|
LambdaQueryWrapper<PmsRunStatisticM> dayLam = new LambdaQueryWrapper<>();
|
|
|
|
|
dayLam.eq(PmsRunStatisticM::getStatisticDate, begin).eq(PmsRunStatisticM::getDeptId, param.getNodeId());
|
|
|
|
|
PmsRunStatisticM pmsRunStatisticM = pmsRunStatisticMMapper.selectOne(dayLam);
|
|
|
|
|
if (Objects.nonNull(pmsRunStatisticM)) {
|
|
|
|
|
if (StrUtil.isNotBlank(param.getDataSource())) {
|
|
|
|
|
temBusIds = new ArrayList<>(Arrays.asList(pmsRunStatisticM.getOnlineBusMidIds().split(StrUtil.COMMA)));
|
|
|
|
|
} else {
|
|
|
|
|
temBusIds = new ArrayList<>(Arrays.asList(pmsRunStatisticM.getRunBusIds().split(StrUtil.COMMA)));
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//稳态指标条件筛选
|
|
|
|
|
if (StrUtil.isNotBlank(param.getIndexType())) {
|
|
|
|
|
QueryWrapper<RDimBusUpD> queryWrapper = new QueryWrapper<>();
|
|
|
|
|
this.harmTarget(param, queryWrapper);
|
|
|
|
|
queryWrapper.eq("statistic_date", day).eq("stat_date",param.getStatDate());
|
|
|
|
|
List<RDimBusUpD> rDimBusUpDList = rDimBusUpDMapper.selectList(queryWrapper);
|
|
|
|
|
if (CollectionUtil.isEmpty(rDimBusUpDList)) {
|
|
|
|
|
return new Page<>();
|
|
|
|
|
}
|
|
|
|
|
temBusIds = rDimBusUpDList.stream().map(RDimBusUpD::getMidBusId).distinct().collect(Collectors.toList());
|
|
|
|
|
//稳态指标条件筛选
|
|
|
|
|
if (StrUtil.isNotBlank(param.getIndexType())) {
|
|
|
|
|
QueryWrapper<RDimBusUpM> queryWrapper = new QueryWrapper<>();
|
|
|
|
|
this.harmTarget(param,temBusIds, queryWrapper);
|
|
|
|
|
List<RDimBusUpM> rDimBusUpMList = rDimBusUpMMapper.selectList(queryWrapper);
|
|
|
|
|
if (CollectionUtil.isEmpty(rDimBusUpMList)) {
|
|
|
|
|
return new Page<>();
|
|
|
|
|
}
|
|
|
|
|
} else if (param.getStatType().equals("02")) {
|
|
|
|
|
LocalDate monthBegin = LocalDate.parse(param.getStartTime());
|
|
|
|
|
//具体日期投运,监测台账查询
|
|
|
|
|
LambdaQueryWrapper<PmsRunStatisticM> dayLam = new LambdaQueryWrapper<>();
|
|
|
|
|
dayLam.eq(PmsRunStatisticM::getStatisticDate, monthBegin).in(PmsRunStatisticM::getDeptId, param.getNodeId()).eq(PmsRunStatisticM::getStatDate,param.getStatDate());
|
|
|
|
|
PmsRunStatisticM pmsRunStatisticM = pmsRunStatisticMMapper.selectOne(dayLam);
|
|
|
|
|
if (Objects.nonNull(pmsRunStatisticM)) {
|
|
|
|
|
if (StrUtil.isNotBlank(param.getDataSource())) {
|
|
|
|
|
temBusIds = new ArrayList<>(Arrays.asList(pmsRunStatisticM.getOnlineBusMidIds().split(StrUtil.COMMA)));
|
|
|
|
|
} else {
|
|
|
|
|
temBusIds = new ArrayList<>(Arrays.asList(pmsRunStatisticM.getRunBusIds().split(StrUtil.COMMA)));
|
|
|
|
|
}
|
|
|
|
|
temBusIds = rDimBusUpMList.stream().map(RDimBusUpM::getMidBusId).distinct().collect(Collectors.toList());
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
} else if (param.getStatType().equals(DicDataEnum.STATISTICAL_TYPE_Y.getCode())) {
|
|
|
|
|
|
|
|
|
|
//具体日期投运,监测台账查询
|
|
|
|
|
LambdaQueryWrapper<PmsRunStatisticY> dayLam = new LambdaQueryWrapper<>();
|
|
|
|
|
dayLam.eq(PmsRunStatisticY::getStatisticDate, begin).eq(PmsRunStatisticY::getDeptId, param.getNodeId());
|
|
|
|
|
PmsRunStatisticY pmsRunStatisticY = pmsRunStatisticYMapper.selectOne(dayLam);
|
|
|
|
|
if (Objects.nonNull(pmsRunStatisticY)) {
|
|
|
|
|
if (StrUtil.isNotBlank(param.getDataSource())) {
|
|
|
|
|
temBusIds = new ArrayList<>(Arrays.asList(pmsRunStatisticY.getOnlineBusMidIds().split(StrUtil.COMMA)));
|
|
|
|
|
} else {
|
|
|
|
|
temBusIds = new ArrayList<>(Arrays.asList(pmsRunStatisticY.getRunBusIds().split(StrUtil.COMMA)));
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//稳态指标条件筛选
|
|
|
|
|
if (StrUtil.isNotBlank(param.getIndexType())) {
|
|
|
|
|
QueryWrapper<RDimBusUpM> queryWrapper = new QueryWrapper<>();
|
|
|
|
|
this.harmTarget(param, queryWrapper);
|
|
|
|
|
queryWrapper.eq("statistic_date", monthBegin);
|
|
|
|
|
List<RDimBusUpM> rDimBusUpMList = rDimBusUpMMapper.selectList(queryWrapper);
|
|
|
|
|
if (CollectionUtil.isEmpty(rDimBusUpMList)) {
|
|
|
|
|
return new Page<>();
|
|
|
|
|
}
|
|
|
|
|
temBusIds = rDimBusUpMList.stream().map(RDimBusUpM::getMidBusId).distinct().collect(Collectors.toList());
|
|
|
|
|
//稳态指标条件筛选
|
|
|
|
|
if (StrUtil.isNotBlank(param.getIndexType())) {
|
|
|
|
|
QueryWrapper<RDimBusUpY> queryWrapper = new QueryWrapper<>();
|
|
|
|
|
this.harmTarget(param,temBusIds, queryWrapper);
|
|
|
|
|
List<RDimBusUpY> rDimBusUpYList = rDimBusUpYMapper.selectList(queryWrapper);
|
|
|
|
|
if (CollectionUtil.isEmpty(rDimBusUpYList)) {
|
|
|
|
|
return new Page<>();
|
|
|
|
|
}
|
|
|
|
|
temBusIds = rDimBusUpYList.stream().map(RDimBusUpY::getMidBusId).distinct().collect(Collectors.toList());
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
} else if (param.getStatType().equals("01")) {
|
|
|
|
|
param.setOnlineBusIds(temBusIds);
|
|
|
|
|
if (CollectionUtil.isEmpty(temBusIds)) {
|
|
|
|
|
return new Page<>();
|
|
|
|
|
}
|
|
|
|
|
return this.baseMapper.getBaseEvaOnlineBusDetail(new Page<>(param.getPageNum(), param.getPageSize()), param);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public Page<DimBusBarVO> getBaseEvaMonitorBusDetail(DimBusBarParam param) {
|
|
|
|
|
List<String> temBusIds = new ArrayList<>();
|
|
|
|
|
|
|
|
|
|
List<RDimUpDTO> rDimUpDTOList = new ArrayList<>();
|
|
|
|
|
|
|
|
|
|
LocalDate begin = LocalDate.parse(param.getStartTime());
|
|
|
|
|
|
|
|
|
|
String statisticType = param.getStatType();
|
|
|
|
|
if (DicDataEnum.STATISTICAL_TYPE_D.getCode().equals(statisticType)) {
|
|
|
|
|
temBusIds = getOnlineBusIds(param.getNodeId(), begin, PmsRunStatisticD.class);
|
|
|
|
|
} else if (DicDataEnum.STATISTICAL_TYPE_M.getCode().equals(statisticType)) {
|
|
|
|
|
temBusIds = getOnlineBusIds(param.getNodeId(), begin, PmsRunStatisticM.class);
|
|
|
|
|
} else if (DicDataEnum.STATISTICAL_TYPE_Y.getCode().equals(statisticType)) {
|
|
|
|
|
temBusIds = getOnlineBusIds(param.getNodeId(), begin, PmsRunStatisticY.class);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (StrUtil.isNotBlank(param.getIndexType())) {
|
|
|
|
|
if (DicDataEnum.STATISTICAL_TYPE_D.getCode().equals(statisticType)) {
|
|
|
|
|
QueryWrapper<RDimBusUpD> queryWrapper = new QueryWrapper<>();
|
|
|
|
|
this.harmTarget(param,temBusIds, queryWrapper);
|
|
|
|
|
List<RDimBusUpD> rDimBusUpDList = rDimBusUpDMapper.selectList(queryWrapper);
|
|
|
|
|
if (CollectionUtil.isEmpty(rDimBusUpDList)) {
|
|
|
|
|
return new Page<>();
|
|
|
|
|
}
|
|
|
|
|
rDimBusUpDList.stream().filter(it->it.getPhasicType().equals("A")).forEach(it->{
|
|
|
|
|
RDimUpDTO rDimUpDTO = new RDimUpDTO();
|
|
|
|
|
rDimUpDTO.setBusMidId(it.getMidBusId());
|
|
|
|
|
rDimUpDTO.setEffectId(it.getEffectId());
|
|
|
|
|
rDimUpDTO.setEffectIds(it.getEffectIds());
|
|
|
|
|
rDimUpDTOList.add(rDimUpDTO);
|
|
|
|
|
});
|
|
|
|
|
temBusIds = rDimBusUpDList.stream().map(RDimBusUpD::getMidBusId).distinct().collect(Collectors.toList());
|
|
|
|
|
this.harmTarget(param, temBusIds, queryWrapper);
|
|
|
|
|
} else if (DicDataEnum.STATISTICAL_TYPE_M.getCode().equals(statisticType)) {
|
|
|
|
|
QueryWrapper<RDimBusUpM> queryWrapper = new QueryWrapper<>();
|
|
|
|
|
this.harmTarget(param,temBusIds, queryWrapper);
|
|
|
|
|
List<RDimBusUpM> rDimBusUpMList = rDimBusUpMMapper.selectList(queryWrapper);
|
|
|
|
|
if (CollectionUtil.isEmpty(rDimBusUpMList)) {
|
|
|
|
|
return new Page<>();
|
|
|
|
|
}
|
|
|
|
|
rDimBusUpMList.stream().filter(it->it.getPhasicType().equals("A")).forEach(it->{
|
|
|
|
|
RDimUpDTO rDimUpDTO = new RDimUpDTO();
|
|
|
|
|
rDimUpDTO.setBusMidId(it.getMidBusId());
|
|
|
|
|
rDimUpDTO.setEffectId(it.getEffectId());
|
|
|
|
|
rDimUpDTO.setEffectIds(it.getEffectIds());
|
|
|
|
|
rDimUpDTOList.add(rDimUpDTO);
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
if (CollectionUtil.isEmpty(rDimBusUpMList)) {
|
|
|
|
|
return new Page<>();
|
|
|
|
|
}
|
|
|
|
|
temBusIds = rDimBusUpMList.stream().map(RDimBusUpM::getMidBusId).distinct().collect(Collectors.toList());
|
|
|
|
|
} else if (DicDataEnum.STATISTICAL_TYPE_Y.getCode().equals(statisticType)) {
|
|
|
|
|
QueryWrapper<RDimBusUpY> queryWrapper = new QueryWrapper<>();
|
|
|
|
|
this.harmTarget(param,temBusIds, queryWrapper);
|
|
|
|
|
List<RDimBusUpY> rDimBusUpYList = rDimBusUpYMapper.selectList(queryWrapper);
|
|
|
|
|
if (CollectionUtil.isEmpty(rDimBusUpYList)) {
|
|
|
|
|
return new Page<>();
|
|
|
|
|
}
|
|
|
|
|
rDimBusUpYList.stream().filter(it->it.getPhasicType().equals("A")).forEach(it->{
|
|
|
|
|
RDimUpDTO rDimUpDTO = new RDimUpDTO();
|
|
|
|
|
rDimUpDTO.setBusMidId(it.getMidBusId());
|
|
|
|
|
rDimUpDTO.setEffectId(it.getEffectId());
|
|
|
|
|
rDimUpDTO.setEffectIds(it.getEffectIds());
|
|
|
|
|
rDimUpDTOList.add(rDimUpDTO);
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
if (CollectionUtil.isEmpty(rDimBusUpYList)) {
|
|
|
|
|
return new Page<>();
|
|
|
|
|
}
|
|
|
|
|
temBusIds = rDimBusUpYList.stream().map(RDimBusUpY::getMidBusId).distinct().collect(Collectors.toList());
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
param.setOnlineBusIds(temBusIds);
|
|
|
|
|
if (CollectionUtil.isEmpty(temBusIds)) {
|
|
|
|
|
return new Page<>();
|
|
|
|
|
}
|
|
|
|
|
return this.baseMapper.getBaseEvaOnlineBusDetail(new Page<>(param.getPageNum(), param.getPageSize()), param);
|
|
|
|
|
|
|
|
|
|
Page<DimBusBarVO> page = this.baseMapper.getBaseEvaOnlineBusDetail(new Page<>(param.getPageNum(), param.getPageSize()), param);
|
|
|
|
|
if(CollectionUtil.isNotEmpty(page.getRecords())){
|
|
|
|
|
Map<String,RDimUpDTO> map = rDimUpDTOList.stream().collect(Collectors.toMap(RDimUpDTO::getBusMidId,Function.identity()));
|
|
|
|
|
page.getRecords().forEach(it->{
|
|
|
|
|
it.setBusEfectiveMnitorNum(map.containsKey(it.getAstId())?map.get(it.getAstId()).getEffectIds().split(StrUtil.COMMA).length:0);
|
|
|
|
|
it.setBusEffectiveMonitors(map.containsKey(it.getAstId())?map.get(it.getAstId()).getEffectIds():null);
|
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
return page;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
private void harmTarget(DimBusBarParam param, QueryWrapper queryWrapper) {
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public Page<DimBusBarVO> getBusListByVoltageLevel(DimBusBarParam param) {
|
|
|
|
|
List<String> temBusIds = new ArrayList<>();
|
|
|
|
|
|
|
|
|
|
List<RDimUpDTO> rDimUpDTOList = new ArrayList<>();
|
|
|
|
|
|
|
|
|
|
LocalDate begin = LocalDate.parse(param.getStartTime());
|
|
|
|
|
|
|
|
|
|
String statisticType = param.getStatType();
|
|
|
|
|
if (DicDataEnum.STATISTICAL_TYPE_D.getCode().equals(statisticType)) {
|
|
|
|
|
temBusIds = getOnlineBusIds(param.getNodeId(), begin, PmsRunStatisticD.class);
|
|
|
|
|
} else if (DicDataEnum.STATISTICAL_TYPE_M.getCode().equals(statisticType)) {
|
|
|
|
|
temBusIds = getOnlineBusIds(param.getNodeId(), begin, PmsRunStatisticM.class);
|
|
|
|
|
} else if (DicDataEnum.STATISTICAL_TYPE_Y.getCode().equals(statisticType)) {
|
|
|
|
|
temBusIds = getOnlineBusIds(param.getNodeId(), begin, PmsRunStatisticY.class);
|
|
|
|
|
}
|
|
|
|
|
return null;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
private List<String> getOnlineBusIds(String nodeId, LocalDate begin, Class<?> clazz) {
|
|
|
|
|
QueryWrapper<?> dayLam = new QueryWrapper<>();
|
|
|
|
|
dayLam.eq("statisticDate", begin).eq("deptId", nodeId);
|
|
|
|
|
Object pmsRunStatistic = null;
|
|
|
|
|
if (PmsRunStatisticD.class.equals(clazz)) {
|
|
|
|
|
pmsRunStatistic = pmsRunStatisticDMapper.selectOne((QueryWrapper<PmsRunStatisticD>) dayLam);
|
|
|
|
|
} else if (PmsRunStatisticM.class.equals(clazz)) {
|
|
|
|
|
pmsRunStatistic = pmsRunStatisticMMapper.selectOne((QueryWrapper<PmsRunStatisticM>)dayLam);
|
|
|
|
|
} else if (PmsRunStatisticY.class.equals(clazz)) {
|
|
|
|
|
pmsRunStatistic = pmsRunStatisticYMapper.selectOne((QueryWrapper<PmsRunStatisticY>)dayLam);
|
|
|
|
|
}
|
|
|
|
|
if (Objects.nonNull(pmsRunStatistic)) {
|
|
|
|
|
String onlineBusMidIds = null;
|
|
|
|
|
if (pmsRunStatistic instanceof PmsRunStatisticD) {
|
|
|
|
|
onlineBusMidIds = ((PmsRunStatisticD) pmsRunStatistic).getOnlineBusMidIds();
|
|
|
|
|
} else if (pmsRunStatistic instanceof PmsRunStatisticM) {
|
|
|
|
|
onlineBusMidIds = ((PmsRunStatisticM) pmsRunStatistic).getOnlineBusMidIds();
|
|
|
|
|
} else {
|
|
|
|
|
onlineBusMidIds = ((PmsRunStatisticY) pmsRunStatistic).getOnlineBusMidIds();
|
|
|
|
|
}
|
|
|
|
|
if (onlineBusMidIds != null) {
|
|
|
|
|
return Arrays.asList(onlineBusMidIds.split(StrUtil.COMMA));
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
return new ArrayList<>();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
private void harmTarget(DimBusBarParam param,List<String> temBusIds, QueryWrapper queryWrapper) {
|
|
|
|
|
//稳态指标条件筛选
|
|
|
|
|
String target = "", harmV = "";
|
|
|
|
|
switch (param.getIndexType()) {
|
|
|
|
|
@@ -274,24 +436,25 @@ public class REvaluationDataServiceImpl extends ServiceImpl<RUploadEvaluationDat
|
|
|
|
|
target = "harm_v";
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
queryWrapper.select("statistic_date", "phasic_type", "bus_id", "mid_bus_id");
|
|
|
|
|
|
|
|
|
|
queryWrapper.select("statistic_date", "phasic_type", "bus_id", "mid_bus_id","effect_id","effect_ids","voltage_level","v");
|
|
|
|
|
if (CollectionUtil.isNotEmpty(param.getSeqs())) {
|
|
|
|
|
queryWrapper.in("phasic_type", param.getSeqs());
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
queryWrapper.in("mid_bus_id",temBusIds);
|
|
|
|
|
queryWrapper.eq("statistic_date", LocalDate.parse(param.getStartTime()));
|
|
|
|
|
if (param.getIndexType().equals("05")) {
|
|
|
|
|
harmV = "uharm_" + param.getHarmonicNum() + "_overtime";
|
|
|
|
|
queryWrapper.gt(harmV, 0);
|
|
|
|
|
} else {
|
|
|
|
|
queryWrapper.gt(target, 0);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 获取当前单位的层级
|
|
|
|
|
*/
|
|
|
|
|
|