合并代码

This commit is contained in:
2022-11-21 17:57:23 +08:00
parent 10722d3991
commit a4c225d067
198 changed files with 1215 additions and 2387 deletions

View File

@@ -1,35 +0,0 @@
package com.njcn.harmonic.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.njcn.harmonic.pojo.param.RMpBenchmarkLevelParam;
import com.njcn.harmonic.pojo.po.RMpBenchmarkLevelM;
import com.njcn.harmonic.pojo.vo.PwRMpBenchmarkLevelVO;
import com.njcn.harmonic.pojo.vo.RMpBenchmarkLevelVO;
import java.util.List;
/**
* @author jianghf
* @description 针对表【r_mp_benchmark_level_m】的数据库操作Service
* @createDate 2022-10-11 10:32:18
*/
public interface RMpBenchmarkLevelMService extends IService<RMpBenchmarkLevelM> {
/***
* 查询区域稳态电能质量水平(月)
* @author jianghaifei
* @date 2022-10-11 11:26
* @param rMpBenchmarkLevelParam
* @return java.util.List<com.njcn.device.pms.pojo.po.RMpBenchmarkLevelM>
*/
List<RMpBenchmarkLevelVO> getRMpBenchmarkLevelList(RMpBenchmarkLevelParam rMpBenchmarkLevelParam);
/***
* 配网-全网基准水平
* @author jianghaifei
* @date 2022-11-04 10:30
* @param rMpBenchmarkLevelParam
* @return java.util.List<com.njcn.harmonic.pojo.vo.RMpBenchmarkLevelVO>
*/
List<PwRMpBenchmarkLevelVO> getPwRMpBenchmarkLevelList(RMpBenchmarkLevelParam rMpBenchmarkLevelParam);
}

View File

@@ -1,35 +0,0 @@
package com.njcn.harmonic.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.njcn.harmonic.pojo.param.RMpBenchmarkLevelParam;
import com.njcn.harmonic.pojo.po.RMpBenchmarkLevelQ;
import com.njcn.harmonic.pojo.vo.PwRMpBenchmarkLevelVO;
import com.njcn.harmonic.pojo.vo.RMpBenchmarkLevelVO;
import java.util.List;
/**
* @author jianghf
* @description 针对表【r_mp_benchmark_level_q】的数据库操作Service
* @createDate 2022-10-11 10:32:18
*/
public interface RMpBenchmarkLevelQService extends IService<RMpBenchmarkLevelQ> {
/***
* 主网-区域稳态电能质量水平评估
* @author jianghaifei
* @date 2022-11-04 10:30
* @param rMpBenchmarkLevelParam
* @return java.util.List<com.njcn.harmonic.pojo.vo.RMpBenchmarkLevelVO>
*/
List<RMpBenchmarkLevelVO> getRMpBenchmarkLevelList(RMpBenchmarkLevelParam rMpBenchmarkLevelParam);
/***
* 配网-全网基准水平
* @author jianghaifei
* @date 2022-11-04 10:31
* @param rMpBenchmarkLevelParam
* @return java.util.List<com.njcn.harmonic.pojo.vo.RMpBenchmarkLevelVO>
*/
List<PwRMpBenchmarkLevelVO> getPwRMpBenchmarkLevelList(RMpBenchmarkLevelParam rMpBenchmarkLevelParam);
}

View File

@@ -1,35 +0,0 @@
package com.njcn.harmonic.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.njcn.harmonic.pojo.param.RMpBenchmarkLevelParam;
import com.njcn.harmonic.pojo.po.RMpBenchmarkLevelY;
import com.njcn.harmonic.pojo.vo.PwRMpBenchmarkLevelVO;
import com.njcn.harmonic.pojo.vo.RMpBenchmarkLevelVO;
import java.util.List;
/**
* @author jianghf
* @description 针对表【r_mp_benchmark_level_y】的数据库操作Service
* @createDate 2022-10-11 10:32:18
*/
public interface RMpBenchmarkLevelYService extends IService<RMpBenchmarkLevelY> {
/***
* 主网-区域稳态电能质量水平评估
* @author jianghaifei
* @date 2022-11-04 10:30
* @param rMpBenchmarkLevelParam
* @return java.util.List<com.njcn.harmonic.pojo.vo.RMpBenchmarkLevelVO>
*/
List<RMpBenchmarkLevelVO> getRMpBenchmarkLevelList(RMpBenchmarkLevelParam rMpBenchmarkLevelParam);
/***
* 配网-全网基准水平
* @author jianghaifei
* @date 2022-11-04 10:30
* @param rMpBenchmarkLevelParam
* @return java.util.List<com.njcn.harmonic.pojo.vo.RMpBenchmarkLevelVO>
*/
List<PwRMpBenchmarkLevelVO> getPwRMpBenchmarkLevelList(RMpBenchmarkLevelParam rMpBenchmarkLevelParam);
}

View File

@@ -1,26 +0,0 @@
package com.njcn.harmonic.service;
import com.njcn.harmonic.pojo.param.RStatPwPermeabilityMParam;
import com.njcn.harmonic.pojo.po.RStatPwPermeabilityM;
import com.baomidou.mybatisplus.extension.service.IService;
import com.njcn.harmonic.pojo.vo.RStatPwPermeabilityMVO;
import java.util.List;
/**
* 各渗透率光伏台区基准水平
* @author jianghf
* @description 针对表【r_stat_pw_permeability_m】的数据库操作Service
* @createDate 2022-11-07 10:35:21
*/
public interface RStatPwPermeabilityMService extends IService<RStatPwPermeabilityM> {
/***
* 获取各渗透率光伏台区基准水平
* @author jianghaifei
* @date 2022-11-07 14:38
* @param rStatPwPermeabilityMParam
* @return java.util.List<com.njcn.harmonic.pojo.vo.RStatPwPermeabilityMVO>
*/
List<RStatPwPermeabilityMVO> getPwPermeabilityList(RStatPwPermeabilityMParam rStatPwPermeabilityMParam);
}

View File

@@ -233,7 +233,7 @@ public class HistoryResultServiceImpl implements HistoryResultService {
default:
break;
}
if (!Integer.valueOf(contion).equals(60) && !Integer.valueOf(contion).equals(61) && !Integer.valueOf(contion).equals(62)) {
if (Integer.parseInt(contion) != 60 || Integer.parseInt(contion) != 61 || Integer.parseInt(contion) != 62) {
stringBuilder.append(" and ").append(InfluxDBPublicParam.VALUETYPE + "='").append(valueTypeName).append("'");
}
String sql = "";

View File

@@ -1,184 +0,0 @@
package com.njcn.harmonic.service.impl;
import cn.hutool.core.collection.CollUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.njcn.common.pojo.dto.SimpleDTO;
import com.njcn.common.pojo.enums.response.CommonResponseEnum;
import com.njcn.common.pojo.exception.BusinessException;
import com.njcn.device.pms.api.MonitorClient;
import com.njcn.device.pms.api.PmsGeneralDeviceInfoClient;
import com.njcn.device.pms.api.PwMonitorClient;
import com.njcn.device.pms.pojo.dto.PmsGeneralDeviceDTO;
import com.njcn.device.pms.pojo.dto.PmsMonitorInfoDTO;
import com.njcn.device.pms.pojo.dto.PwPmsMonitorDTO;
import com.njcn.device.pms.pojo.param.PmsDeviceInfoParam;
import com.njcn.device.pms.pojo.param.PmsMonitorInfoParam;
import com.njcn.device.pms.pojo.param.PwPmsMonitorParam;
import com.njcn.harmonic.mapper.RMpBenchmarkLevelMMapper;
import com.njcn.harmonic.pojo.param.RMpBenchmarkLevelParam;
import com.njcn.harmonic.pojo.po.RMpBenchmarkLevelM;
import com.njcn.harmonic.pojo.vo.PwRMpBenchmarkLevelVO;
import com.njcn.harmonic.pojo.vo.RMpBenchmarkLevelVO;
import com.njcn.harmonic.service.RMpBenchmarkLevelMService;
import com.njcn.system.api.DicDataFeignClient;
import com.njcn.system.enums.DicDataTypeEnum;
import com.njcn.system.pojo.po.DictData;
import lombok.RequiredArgsConstructor;
import org.apache.commons.lang.StringUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/**
* @author jianghf
* @description 针对表【r_mp_benchmark_level_m】的数据库操作Service实现
* @createDate 2022-10-11 10:32:18
*/
@Service
@RequiredArgsConstructor
public class RMpBenchmarkLevelMServiceImpl extends ServiceImpl<RMpBenchmarkLevelMMapper, RMpBenchmarkLevelM>
implements RMpBenchmarkLevelMService {
private final DicDataFeignClient dicDataFeignClient;
private final PmsGeneralDeviceInfoClient pmsGeneralDeviceInfoClient;
private final MonitorClient monitorClient;
private final PwMonitorClient pwMonitorClient;
@Override
public List<RMpBenchmarkLevelVO> getRMpBenchmarkLevelList(RMpBenchmarkLevelParam rMpBenchmarkLevelParam) {
//提取查询条件
String id = rMpBenchmarkLevelParam.getId(); //单位id
if (StringUtils.isBlank(id)) {
throw new BusinessException(CommonResponseEnum.NO_DATA, "单位id不可为空");
}
String startTime = rMpBenchmarkLevelParam.getStartTime(); //开始时间
String endTime = rMpBenchmarkLevelParam.getEndTime(); //截止时间
String benchmarkIndicator = rMpBenchmarkLevelParam.getBenchmarkIndicator(); //评价指标
List <String> voltageLevelParamList = StringUtils.isNotBlank(rMpBenchmarkLevelParam.getVoltageLevel()) ? Arrays.asList(rMpBenchmarkLevelParam.getVoltageLevel().split(",")) : null; //电压等级
//获取电压等级的字典
List<DictData> voltageLevelList = dicDataFeignClient.getDicDataByTypeCode(DicDataTypeEnum.DEV_VOLTAGE.getCode()).getData();
//将电压信息转成mapkeyid valuename
Map<String, String> voltageLevelMap = voltageLevelList.stream().collect(Collectors.toMap(DictData::getId, DictData::getName));
//获取基准水平评价指标字典
List<DictData> benchmarkIndicatorList = dicDataFeignClient.getDicDataByTypeCode(DicDataTypeEnum.BENCHMARK_INDICATORS.getCode()).getData();
//将基准水平评价指标信息转成mapkeyid valuename
Map<String, String> benchmarkIndicatorMap = benchmarkIndicatorList.stream().collect(Collectors.toMap(DictData::getId, DictData::getName));
//查询所有子单位下的所有监测点
PmsDeviceInfoParam pmsDeviceInfoParam = new PmsDeviceInfoParam(id);
pmsDeviceInfoParam.setStatisticalType(new SimpleDTO());
if (CollUtil.isNotEmpty(voltageLevelParamList)) {
//查询条件电压等级筛选电压等级为voltageLevel的监测点
List<SimpleDTO> simpleDTOList = voltageLevelParamList.stream().map(item -> {
SimpleDTO simpleDTO = new SimpleDTO();
simpleDTO.setId(item);
return simpleDTO;
}).collect(Collectors.toList());
pmsDeviceInfoParam.setVoltageLevel(simpleDTOList);
}
//获取到该部门的所有子部门的监测点idList
List<PmsGeneralDeviceDTO> pmsDeviceInfoWithInOrg = pmsGeneralDeviceInfoClient.getPmsDeviceInfoWithInOrg(pmsDeviceInfoParam).getData();
//过滤出业务需要的监测点id集合
List<String> firstMonitorIdList = new ArrayList<>(); //只用于合并多个部门的监测点id
pmsDeviceInfoWithInOrg.forEach(item -> firstMonitorIdList.addAll(item.getMonitorIdList()));
List<String> lastMonitorIdList = firstMonitorIdList.stream().distinct().collect(Collectors.toList()); //最终的监测点id集合
//如果没有监测点id信息直接返回空集合
if (CollUtil.isEmpty(lastMonitorIdList)) {
return new ArrayList<>();
}
//查询对应的监测点完整信息 并转为key监测点id value监测点实体的map集合
// LambdaQueryWrapper<Monitor> monitorWrapper = new LambdaQueryWrapper<>();
// monitorWrapper.in(Monitor::getId, lastMonitorIdList);
PmsMonitorInfoParam pmsMonitorInfoParam = new PmsMonitorInfoParam();
pmsMonitorInfoParam.setMonitorIds(lastMonitorIdList);
Map<String, PmsMonitorInfoDTO> monitorMap = monitorClient.getMonitorInfo(pmsMonitorInfoParam).getData().stream().collect(Collectors.toMap(PmsMonitorInfoDTO::getMonitorId, monitor -> monitor));
//查询【基准水平-月】数据
/*组装条件where measurement_point_id in (monitorIdList) and data_date >= startTime
and data_date <= endTime and voltage_level
*/
LambdaQueryWrapper<RMpBenchmarkLevelM> lambdaQueryWrapper = new LambdaQueryWrapper<>();
lambdaQueryWrapper.in(CollUtil.isNotEmpty(lastMonitorIdList), RMpBenchmarkLevelM::getMeasurementPointId, lastMonitorIdList)
.ge(StringUtils.isNotBlank(startTime), RMpBenchmarkLevelM::getDataDate, startTime)
.le(StringUtils.isNotBlank(endTime), RMpBenchmarkLevelM::getDataDate, endTime);
List<RMpBenchmarkLevelM> list = this.list(lambdaQueryWrapper);
List<RMpBenchmarkLevelVO> resultList = list.stream().map(item -> {
//封装前端需要的对象
RMpBenchmarkLevelVO rMpBenchmarkLevelVO = new RMpBenchmarkLevelVO();
BeanUtils.copyProperties(item, rMpBenchmarkLevelVO);
PmsGeneralDeviceDTO pmsGeneralDeviceDTO = pmsDeviceInfoWithInOrg.stream().filter(dto -> dto.getMonitorIdList().contains(item.getMeasurementPointId()))
.collect(Collectors.toList()).get(0);
//单位信息
rMpBenchmarkLevelVO.setOrgNo(pmsGeneralDeviceDTO.getIndex()); //单位id
rMpBenchmarkLevelVO.setOrgName(pmsGeneralDeviceDTO.getName()); //单位名称
//基准水平评价指标
rMpBenchmarkLevelVO.setBenchmarkIndicator(benchmarkIndicator); //基准水平评价指标id
rMpBenchmarkLevelVO.setBenchmarkIndicatorName(benchmarkIndicatorMap.get(benchmarkIndicator)); //基准水平评价指标
//监测点信息
rMpBenchmarkLevelVO.setMeasurementPointName(monitorMap.get(item.getMeasurementPointId()).getMonitorName()); //监测点名称
//电压等级
rMpBenchmarkLevelVO.setVoltageLevel(monitorMap.get(item.getMeasurementPointId()).getMonitorVoltageLevel());
rMpBenchmarkLevelVO.setVoltageLevelName(voltageLevelMap.get(monitorMap.get(item.getMeasurementPointId()).getMonitorVoltageLevel()));
return rMpBenchmarkLevelVO;
}).collect(Collectors.toList());
return resultList;
}
@Override
public List<PwRMpBenchmarkLevelVO> getPwRMpBenchmarkLevelList(RMpBenchmarkLevelParam rMpBenchmarkLevelParam) {
//提取查询条件
String id = rMpBenchmarkLevelParam.getId(); //单位id
if (StringUtils.isBlank(id)) {
throw new BusinessException(CommonResponseEnum.NO_DATA, "单位id不可为空");
}
String startTime = rMpBenchmarkLevelParam.getStartTime(); //开始时间
String endTime = rMpBenchmarkLevelParam.getEndTime(); //截止时间
List <String> voltageLevelParamList = StringUtils.isNotBlank(rMpBenchmarkLevelParam.getVoltageLevel()) ? Arrays.asList(rMpBenchmarkLevelParam.getVoltageLevel().split(",")) : null; //电压等级
//根据条件查询单位下面的所有配网监测点
PwPmsMonitorParam pwPmsMonitorParam = new PwPmsMonitorParam();
pwPmsMonitorParam.setOrgId(id); //单位id
pwPmsMonitorParam.setVoltageLevels(voltageLevelParamList); //电压等级
List<PwPmsMonitorDTO> pwMonitorList = pwMonitorClient.getPwMonitorList(pwPmsMonitorParam).getData();
if (CollUtil.isEmpty(pwMonitorList)) {
return new ArrayList<>();
}
//监测点id集合
List<String> monitorIdList = pwMonitorList.stream().map(PwPmsMonitorDTO::getMonitorId).collect(Collectors.toList());
//监测点map key:监测点id value:监测点实体
Map<String, PwPmsMonitorDTO> monitorMap = pwMonitorList.stream().collect(Collectors.toMap(PwPmsMonitorDTO::getMonitorId, monitor -> monitor));
//查询【基准水平-月】数据
/*组装条件where measurement_point_id in (monitorIdList) and data_date >= startTime
and data_date <= endTime and voltage_level
*/
LambdaQueryWrapper<RMpBenchmarkLevelM> lambdaQueryWrapper = new LambdaQueryWrapper<>();
lambdaQueryWrapper.in(CollUtil.isNotEmpty(monitorIdList), RMpBenchmarkLevelM::getMeasurementPointId, monitorIdList)
.ge(StringUtils.isNotBlank(startTime), RMpBenchmarkLevelM::getDataDate, startTime)
.le(StringUtils.isNotBlank(endTime), RMpBenchmarkLevelM::getDataDate, endTime);
List<RMpBenchmarkLevelM> list = this.list(lambdaQueryWrapper);
List<PwRMpBenchmarkLevelVO> resultList = list.stream().map(item -> {
//封装前端需要的对象
PwRMpBenchmarkLevelVO rMpBenchmarkLevelVO = new PwRMpBenchmarkLevelVO();
BeanUtils.copyProperties(item, rMpBenchmarkLevelVO);
//单位信息
rMpBenchmarkLevelVO.setOrgNo(monitorMap.get(item.getMeasurementPointId()).getOrgId()); //单位id
rMpBenchmarkLevelVO.setOrgName(monitorMap.get(item.getMeasurementPointId()).getOrgName()); //单位名称
//监测点信息
rMpBenchmarkLevelVO.setMeasurementPointName(monitorMap.get(item.getMeasurementPointId()).getMonitorName()); //监测点名称
//电压等级
rMpBenchmarkLevelVO.setVoltageLevel(monitorMap.get(item.getMeasurementPointId()).getVoltageLevel());
return rMpBenchmarkLevelVO;
}).collect(Collectors.toList());
return resultList;
}
}

View File

@@ -1,184 +0,0 @@
package com.njcn.harmonic.service.impl;
import cn.hutool.core.collection.CollUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.njcn.common.pojo.dto.SimpleDTO;
import com.njcn.common.pojo.enums.response.CommonResponseEnum;
import com.njcn.common.pojo.exception.BusinessException;
import com.njcn.device.pms.api.MonitorClient;
import com.njcn.device.pms.api.PmsGeneralDeviceInfoClient;
import com.njcn.device.pms.api.PwMonitorClient;
import com.njcn.device.pms.pojo.dto.PmsGeneralDeviceDTO;
import com.njcn.device.pms.pojo.dto.PmsMonitorInfoDTO;
import com.njcn.device.pms.pojo.dto.PwPmsMonitorDTO;
import com.njcn.device.pms.pojo.param.PmsDeviceInfoParam;
import com.njcn.device.pms.pojo.param.PmsMonitorInfoParam;
import com.njcn.device.pms.pojo.param.PwPmsMonitorParam;
import com.njcn.harmonic.mapper.RMpBenchmarkLevelQMapper;
import com.njcn.harmonic.pojo.param.RMpBenchmarkLevelParam;
import com.njcn.harmonic.pojo.po.RMpBenchmarkLevelQ;
import com.njcn.harmonic.pojo.vo.PwRMpBenchmarkLevelVO;
import com.njcn.harmonic.pojo.vo.RMpBenchmarkLevelVO;
import com.njcn.harmonic.service.RMpBenchmarkLevelQService;
import com.njcn.system.api.DicDataFeignClient;
import com.njcn.system.enums.DicDataTypeEnum;
import com.njcn.system.pojo.po.DictData;
import lombok.RequiredArgsConstructor;
import org.apache.commons.lang.StringUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/**
* @author jianghf
* @description 针对表【r_mp_benchmark_level_q】的数据库操作Service实现
* @createDate 2022-10-11 10:32:18
*/
@Service
@RequiredArgsConstructor
public class RMpBenchmarkLevelQServiceImpl extends ServiceImpl<RMpBenchmarkLevelQMapper, RMpBenchmarkLevelQ>
implements RMpBenchmarkLevelQService {
private final DicDataFeignClient dicDataFeignClient;
private final PmsGeneralDeviceInfoClient pmsGeneralDeviceInfoClient;
private final MonitorClient monitorClient;
private final PwMonitorClient pwMonitorClient;
@Override
public List<RMpBenchmarkLevelVO> getRMpBenchmarkLevelList(RMpBenchmarkLevelParam rMpBenchmarkLevelParam) {
//提取查询条件
String id = rMpBenchmarkLevelParam.getId(); //单位id
if (StringUtils.isBlank(id)) {
throw new BusinessException(CommonResponseEnum.NO_DATA, "单位id不可为空");
}
String startTime = rMpBenchmarkLevelParam.getStartTime(); //开始时间
String endTime = rMpBenchmarkLevelParam.getEndTime(); //截止时间
String benchmarkIndicator = rMpBenchmarkLevelParam.getBenchmarkIndicator(); //评价指标
List <String> voltageLevelParamList = StringUtils.isNotBlank(rMpBenchmarkLevelParam.getVoltageLevel()) ? Arrays.asList(rMpBenchmarkLevelParam.getVoltageLevel().split(",")) : null; //电压等级
//获取电压等级的字典
List<DictData> voltageLevelList = dicDataFeignClient.getDicDataByTypeCode(DicDataTypeEnum.DEV_VOLTAGE.getCode()).getData();
//将电压信息转成mapkeyid valuename
Map<String, String> voltageLevelMap = voltageLevelList.stream().collect(Collectors.toMap(DictData::getId, DictData::getName));
//获取基准水平评价指标字典
List<DictData> benchmarkIndicatorList = dicDataFeignClient.getDicDataByTypeCode(DicDataTypeEnum.BENCHMARK_INDICATORS.getCode()).getData();
//将基准水平评价指标信息转成mapkeyid valuename
Map<String, String> benchmarkIndicatorMap = benchmarkIndicatorList.stream().collect(Collectors.toMap(DictData::getId, DictData::getName));
//查询所有子单位下的所有监测点
PmsDeviceInfoParam pmsDeviceInfoParam = new PmsDeviceInfoParam(id);
pmsDeviceInfoParam.setStatisticalType(new SimpleDTO());
if (CollUtil.isNotEmpty(voltageLevelParamList)) {
//查询条件电压等级筛选电压等级为voltageLevel的监测点
List<SimpleDTO> simpleDTOList = voltageLevelParamList.stream().map(item -> {
SimpleDTO simpleDTO = new SimpleDTO();
simpleDTO.setId(item);
return simpleDTO;
}).collect(Collectors.toList());
pmsDeviceInfoParam.setVoltageLevel(simpleDTOList);
}
//获取到该部门的所有子部门的监测点idList
List<PmsGeneralDeviceDTO> pmsDeviceInfoWithInOrg = pmsGeneralDeviceInfoClient.getPmsDeviceInfoWithInOrg(pmsDeviceInfoParam).getData();
//过滤出业务需要的监测点id集合
List<String> firstMonitorIdList = new ArrayList<>(); //只用于合并多个部门的监测点id
pmsDeviceInfoWithInOrg.forEach(item -> firstMonitorIdList.addAll(item.getMonitorIdList()));
List<String> lastMonitorIdList = firstMonitorIdList.stream().distinct().collect(Collectors.toList()); //最终的监测点id集合
//如果没有监测点id信息直接返回空集合
if (CollUtil.isEmpty(lastMonitorIdList)) {
return new ArrayList<>();
}
//查询对应的监测点完整信息 并转为key监测点id value监测点实体的map集合
// LambdaQueryWrapper<Monitor> monitorWrapper = new LambdaQueryWrapper<>();
// monitorWrapper.in(Monitor::getId, lastMonitorIdList);
PmsMonitorInfoParam pmsMonitorInfoParam = new PmsMonitorInfoParam();
pmsMonitorInfoParam.setMonitorIds(lastMonitorIdList);
Map<String, PmsMonitorInfoDTO> monitorMap = monitorClient.getMonitorInfo(pmsMonitorInfoParam).getData().stream().collect(Collectors.toMap(PmsMonitorInfoDTO::getMonitorId, monitor -> monitor));
//查询【基准水平-月】数据
/*组装条件where measurement_point_id in (monitorIdList) and data_date >= startTime
and data_date <= endTime and voltage_level
*/
LambdaQueryWrapper<RMpBenchmarkLevelQ> lambdaQueryWrapper = new LambdaQueryWrapper<>();
lambdaQueryWrapper.in(CollUtil.isNotEmpty(lastMonitorIdList), RMpBenchmarkLevelQ::getMeasurementPointId, lastMonitorIdList)
.ge(StringUtils.isNotBlank(startTime), RMpBenchmarkLevelQ::getDataDate, startTime)
.le(StringUtils.isNotBlank(endTime), RMpBenchmarkLevelQ::getDataDate, endTime);
List<RMpBenchmarkLevelQ> list = this.list(lambdaQueryWrapper);
List<RMpBenchmarkLevelVO> resultList = list.stream().map(item -> {
//封装前端需要的对象
RMpBenchmarkLevelVO rMpBenchmarkLevelVO = new RMpBenchmarkLevelVO();
BeanUtils.copyProperties(item, rMpBenchmarkLevelVO);
PmsGeneralDeviceDTO pmsGeneralDeviceDTO = pmsDeviceInfoWithInOrg.stream().filter(dto -> dto.getMonitorIdList().contains(item.getMeasurementPointId()))
.collect(Collectors.toList()).get(0);
//单位信息
rMpBenchmarkLevelVO.setOrgNo(pmsGeneralDeviceDTO.getIndex()); //单位id
rMpBenchmarkLevelVO.setOrgName(pmsGeneralDeviceDTO.getName()); //单位名称
//基准水平评价指标
rMpBenchmarkLevelVO.setBenchmarkIndicator(benchmarkIndicator); //基准水平评价指标id
rMpBenchmarkLevelVO.setBenchmarkIndicatorName(benchmarkIndicatorMap.get(benchmarkIndicator)); //基准水平评价指标
//监测点信息
rMpBenchmarkLevelVO.setMeasurementPointName(monitorMap.get(item.getMeasurementPointId()).getMonitorName()); //监测点名称
//电压等级
rMpBenchmarkLevelVO.setVoltageLevel(monitorMap.get(item.getMeasurementPointId()).getMonitorVoltageLevel());
rMpBenchmarkLevelVO.setVoltageLevelName(voltageLevelMap.get(monitorMap.get(item.getMeasurementPointId()).getMonitorVoltageLevel()));
return rMpBenchmarkLevelVO;
}).collect(Collectors.toList());
return resultList;
}
@Override
public List<PwRMpBenchmarkLevelVO> getPwRMpBenchmarkLevelList(RMpBenchmarkLevelParam rMpBenchmarkLevelParam) {
//提取查询条件
String id = rMpBenchmarkLevelParam.getId(); //单位id
if (StringUtils.isBlank(id)) {
throw new BusinessException(CommonResponseEnum.NO_DATA, "单位id不可为空");
}
String startTime = rMpBenchmarkLevelParam.getStartTime(); //开始时间
String endTime = rMpBenchmarkLevelParam.getEndTime(); //截止时间
List <String> voltageLevelParamList = StringUtils.isNotBlank(rMpBenchmarkLevelParam.getVoltageLevel()) ? Arrays.asList(rMpBenchmarkLevelParam.getVoltageLevel().split(",")) : null; //电压等级
//根据条件查询单位下面的所有配网监测点
PwPmsMonitorParam pwPmsMonitorParam = new PwPmsMonitorParam();
pwPmsMonitorParam.setOrgId(id); //单位id
pwPmsMonitorParam.setVoltageLevels(voltageLevelParamList); //电压等级
List<PwPmsMonitorDTO> pwMonitorList = pwMonitorClient.getPwMonitorList(pwPmsMonitorParam).getData();
if (CollUtil.isEmpty(pwMonitorList)) {
return new ArrayList<>();
}
//监测点id集合
List<String> monitorIdList = pwMonitorList.stream().map(PwPmsMonitorDTO::getMonitorId).collect(Collectors.toList());
//监测点map key:监测点id value:监测点实体
Map<String, PwPmsMonitorDTO> monitorMap = pwMonitorList.stream().collect(Collectors.toMap(PwPmsMonitorDTO::getMonitorId, monitor -> monitor));
//查询【基准水平-月】数据
/*组装条件where measurement_point_id in (monitorIdList) and data_date >= startTime
and data_date <= endTime and voltage_level
*/
LambdaQueryWrapper<RMpBenchmarkLevelQ> lambdaQueryWrapper = new LambdaQueryWrapper<>();
lambdaQueryWrapper.in(CollUtil.isNotEmpty(monitorIdList), RMpBenchmarkLevelQ::getMeasurementPointId, monitorIdList)
.ge(StringUtils.isNotBlank(startTime), RMpBenchmarkLevelQ::getDataDate, startTime)
.le(StringUtils.isNotBlank(endTime), RMpBenchmarkLevelQ::getDataDate, endTime);
List<RMpBenchmarkLevelQ> list = this.list(lambdaQueryWrapper);
List<PwRMpBenchmarkLevelVO> resultList = list.stream().map(item -> {
//封装前端需要的对象
PwRMpBenchmarkLevelVO rMpBenchmarkLevelVO = new PwRMpBenchmarkLevelVO();
BeanUtils.copyProperties(item, rMpBenchmarkLevelVO);
//单位信息
rMpBenchmarkLevelVO.setOrgNo(monitorMap.get(item.getMeasurementPointId()).getOrgId()); //单位id
rMpBenchmarkLevelVO.setOrgName(monitorMap.get(item.getMeasurementPointId()).getOrgName()); //单位名称
//监测点信息
rMpBenchmarkLevelVO.setMeasurementPointName(monitorMap.get(item.getMeasurementPointId()).getMonitorName()); //监测点名称
//电压等级
rMpBenchmarkLevelVO.setVoltageLevel(monitorMap.get(item.getMeasurementPointId()).getVoltageLevel());
return rMpBenchmarkLevelVO;
}).collect(Collectors.toList());
return resultList;
}
}

View File

@@ -1,191 +0,0 @@
package com.njcn.harmonic.service.impl;
import cn.hutool.core.collection.CollUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.njcn.common.pojo.dto.SimpleDTO;
import com.njcn.common.pojo.enums.response.CommonResponseEnum;
import com.njcn.common.pojo.exception.BusinessException;
import com.njcn.device.pms.api.MonitorClient;
import com.njcn.device.pms.api.PmsGeneralDeviceInfoClient;
import com.njcn.device.pms.api.PwMonitorClient;
import com.njcn.device.pms.pojo.dto.PmsGeneralDeviceDTO;
import com.njcn.device.pms.pojo.dto.PmsMonitorInfoDTO;
import com.njcn.device.pms.pojo.dto.PwPmsMonitorDTO;
import com.njcn.device.pms.pojo.param.PmsDeviceInfoParam;
import com.njcn.device.pms.pojo.param.PmsMonitorInfoParam;
import com.njcn.device.pms.pojo.param.PwPmsMonitorParam;
import com.njcn.harmonic.mapper.RMpBenchmarkLevelYMapper;
import com.njcn.harmonic.pojo.param.RMpBenchmarkLevelParam;
import com.njcn.harmonic.pojo.po.RMpBenchmarkLevelY;
import com.njcn.harmonic.pojo.vo.PwRMpBenchmarkLevelVO;
import com.njcn.harmonic.pojo.vo.RMpBenchmarkLevelVO;
import com.njcn.harmonic.service.RMpBenchmarkLevelYService;
import com.njcn.system.api.DicDataFeignClient;
import com.njcn.system.enums.DicDataTypeEnum;
import com.njcn.system.pojo.po.DictData;
import lombok.RequiredArgsConstructor;
import org.apache.commons.lang.StringUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/**
* @author jianghf
* @description 针对表【r_mp_benchmark_level_y】的数据库操作Service实现
* @createDate 2022-10-11 10:32:18
*/
@Service
@RequiredArgsConstructor
public class RMpBenchmarkLevelYServiceImpl extends ServiceImpl<RMpBenchmarkLevelYMapper, RMpBenchmarkLevelY>
implements RMpBenchmarkLevelYService {
private final DicDataFeignClient dicDataFeignClient;
private final PmsGeneralDeviceInfoClient pmsGeneralDeviceInfoClient;
private final MonitorClient monitorClient;
private final PwMonitorClient pwMonitorClient;
@Override
public List<RMpBenchmarkLevelVO> getRMpBenchmarkLevelList(RMpBenchmarkLevelParam rMpBenchmarkLevelParam) {
//提取查询条件
String id = rMpBenchmarkLevelParam.getId(); //单位id
if (StringUtils.isBlank(id)) {
throw new BusinessException(CommonResponseEnum.NO_DATA, "单位id不可为空");
}
String startTime = rMpBenchmarkLevelParam.getStartTime(); //开始时间
String endTime = rMpBenchmarkLevelParam.getEndTime(); //截止时间
String benchmarkIndicator = rMpBenchmarkLevelParam.getBenchmarkIndicator(); //评价指标
List <String> voltageLevelParamList = StringUtils.isNotBlank(rMpBenchmarkLevelParam.getVoltageLevel()) ? Arrays.asList(rMpBenchmarkLevelParam.getVoltageLevel().split(",")) : null; //电压等级
//获取电压等级的字典
List<DictData> voltageLevelList = dicDataFeignClient.getDicDataByTypeCode(DicDataTypeEnum.DEV_VOLTAGE.getCode()).getData();
//将电压信息转成mapkeyid valuename
Map<String, String> voltageLevelMap = voltageLevelList.stream().collect(Collectors.toMap(DictData::getId, DictData::getName));
//获取基准水平评价指标字典
List<DictData> benchmarkIndicatorList = dicDataFeignClient.getDicDataByTypeCode(DicDataTypeEnum.BENCHMARK_INDICATORS.getCode()).getData();
//将基准水平评价指标信息转成mapkeyid valuename
Map<String, String> benchmarkIndicatorMap = benchmarkIndicatorList.stream().collect(Collectors.toMap(DictData::getId, DictData::getName));
//查询所有子单位下的所有监测点
PmsDeviceInfoParam pmsDeviceInfoParam = new PmsDeviceInfoParam(id);
pmsDeviceInfoParam.setStatisticalType(new SimpleDTO());
if (CollUtil.isNotEmpty(voltageLevelParamList)) {
//查询条件电压等级筛选电压等级为voltageLevel的监测点
List<SimpleDTO> simpleDTOList = voltageLevelParamList.stream().map(item -> {
SimpleDTO simpleDTO = new SimpleDTO();
simpleDTO.setId(item);
return simpleDTO;
}).collect(Collectors.toList());
pmsDeviceInfoParam.setVoltageLevel(simpleDTOList);
}
//获取到该部门的所有子部门的监测点idList
List<PmsGeneralDeviceDTO> pmsDeviceInfoWithInOrg = pmsGeneralDeviceInfoClient.getPmsDeviceInfoWithInOrg(pmsDeviceInfoParam).getData();
//过滤出业务需要的监测点id集合
List<String> firstMonitorIdList = new ArrayList<>(); //只用于合并多个部门的监测点id
pmsDeviceInfoWithInOrg.forEach(item -> firstMonitorIdList.addAll(item.getMonitorIdList()));
List<String> lastMonitorIdList = firstMonitorIdList.stream().distinct().collect(Collectors.toList()); //最终的监测点id集合
//如果没有监测点id信息直接返回空集合
if (CollUtil.isEmpty(lastMonitorIdList)) {
return new ArrayList<>();
}
//查询对应的监测点完整信息 并转为key监测点id value监测点实体的map集合
// LambdaQueryWrapper<Monitor> monitorWrapper = new LambdaQueryWrapper<>();
// monitorWrapper.in(Monitor::getId, lastMonitorIdList);
PmsMonitorInfoParam pmsMonitorInfoParam = new PmsMonitorInfoParam();
pmsMonitorInfoParam.setMonitorIds(lastMonitorIdList);
Map<String, PmsMonitorInfoDTO> monitorMap = monitorClient.getMonitorInfo(pmsMonitorInfoParam).getData().stream().collect(Collectors.toMap(PmsMonitorInfoDTO::getMonitorId, monitor -> monitor));
//查询【基准水平-月】数据
/*组装条件where measurement_point_id in (monitorIdList) and data_date >= startTime
and data_date <= endTime and voltage_level
*/
LambdaQueryWrapper<RMpBenchmarkLevelY> lambdaQueryWrapper = new LambdaQueryWrapper<>();
lambdaQueryWrapper.in(CollUtil.isNotEmpty(lastMonitorIdList), RMpBenchmarkLevelY::getMeasurementPointId, lastMonitorIdList)
.ge(StringUtils.isNotBlank(startTime), RMpBenchmarkLevelY::getDataDate, startTime)
.le(StringUtils.isNotBlank(endTime), RMpBenchmarkLevelY::getDataDate, endTime);
List<RMpBenchmarkLevelY> list = this.list(lambdaQueryWrapper);
List<RMpBenchmarkLevelVO> resultList = list.stream().map(item -> {
//封装前端需要的对象
RMpBenchmarkLevelVO rMpBenchmarkLevelVO = new RMpBenchmarkLevelVO();
BeanUtils.copyProperties(item, rMpBenchmarkLevelVO);
PmsGeneralDeviceDTO pmsGeneralDeviceDTO = pmsDeviceInfoWithInOrg.stream().filter(dto -> dto.getMonitorIdList().contains(item.getMeasurementPointId()))
.collect(Collectors.toList()).get(0);
//单位信息
rMpBenchmarkLevelVO.setOrgNo(pmsGeneralDeviceDTO.getIndex()); //单位id
rMpBenchmarkLevelVO.setOrgName(pmsGeneralDeviceDTO.getName()); //单位名称
//基准水平评价指标
rMpBenchmarkLevelVO.setBenchmarkIndicator(benchmarkIndicator); //基准水平评价指标id
rMpBenchmarkLevelVO.setBenchmarkIndicatorName(benchmarkIndicatorMap.get(benchmarkIndicator)); //基准水平评价指标
//监测点信息
rMpBenchmarkLevelVO.setMeasurementPointName(monitorMap.get(item.getMeasurementPointId()).getMonitorName()); //监测点名称
//电压等级
rMpBenchmarkLevelVO.setVoltageLevel(monitorMap.get(item.getMeasurementPointId()).getMonitorVoltageLevel());
rMpBenchmarkLevelVO.setVoltageLevelName(voltageLevelMap.get(monitorMap.get(item.getMeasurementPointId()).getMonitorVoltageLevel()));
return rMpBenchmarkLevelVO;
}).collect(Collectors.toList());
return resultList;
}
/***
* 配网-全网基准水平
* @author jianghaifei
* @date 2022-11-04 10:32
* @param rMpBenchmarkLevelParam
* @return java.util.List<com.njcn.harmonic.pojo.vo.RMpBenchmarkLevelVO>
*/
@Override
public List<PwRMpBenchmarkLevelVO> getPwRMpBenchmarkLevelList(RMpBenchmarkLevelParam rMpBenchmarkLevelParam) {
//提取查询条件
String id = rMpBenchmarkLevelParam.getId(); //单位id
if (StringUtils.isBlank(id)) {
throw new BusinessException(CommonResponseEnum.NO_DATA, "单位id不可为空");
}
String startTime = rMpBenchmarkLevelParam.getStartTime(); //开始时间
String endTime = rMpBenchmarkLevelParam.getEndTime(); //截止时间
List <String> voltageLevelParamList = StringUtils.isNotBlank(rMpBenchmarkLevelParam.getVoltageLevel()) ? Arrays.asList(rMpBenchmarkLevelParam.getVoltageLevel().split(",")) : null; //电压等级
//根据条件查询单位下面的所有配网监测点
PwPmsMonitorParam pwPmsMonitorParam = new PwPmsMonitorParam();
pwPmsMonitorParam.setOrgId(id); //单位id
pwPmsMonitorParam.setVoltageLevels(voltageLevelParamList); //电压等级
List<PwPmsMonitorDTO> pwMonitorList = pwMonitorClient.getPwMonitorList(pwPmsMonitorParam).getData();
if (CollUtil.isEmpty(pwMonitorList)) {
return new ArrayList<>();
}
//监测点id集合
List<String> monitorIdList = pwMonitorList.stream().map(PwPmsMonitorDTO::getMonitorId).collect(Collectors.toList());
//监测点map key:监测点id value:监测点实体
Map<String, PwPmsMonitorDTO> monitorMap = pwMonitorList.stream().collect(Collectors.toMap(PwPmsMonitorDTO::getMonitorId, monitor -> monitor));
//查询【基准水平-月】数据
/*组装条件where measurement_point_id in (monitorIdList) and data_date >= startTime
and data_date <= endTime and voltage_level
*/
LambdaQueryWrapper<RMpBenchmarkLevelY> lambdaQueryWrapper = new LambdaQueryWrapper<>();
lambdaQueryWrapper.in(CollUtil.isNotEmpty(monitorIdList), RMpBenchmarkLevelY::getMeasurementPointId, monitorIdList)
.ge(StringUtils.isNotBlank(startTime), RMpBenchmarkLevelY::getDataDate, startTime)
.le(StringUtils.isNotBlank(endTime), RMpBenchmarkLevelY::getDataDate, endTime);
List<RMpBenchmarkLevelY> list = this.list(lambdaQueryWrapper);
List<PwRMpBenchmarkLevelVO> resultList = list.stream().map(item -> {
//封装前端需要的对象
PwRMpBenchmarkLevelVO rMpBenchmarkLevelVO = new PwRMpBenchmarkLevelVO();
BeanUtils.copyProperties(item, rMpBenchmarkLevelVO);
//单位信息
rMpBenchmarkLevelVO.setOrgNo(monitorMap.get(item.getMeasurementPointId()).getOrgId()); //单位id
rMpBenchmarkLevelVO.setOrgName(monitorMap.get(item.getMeasurementPointId()).getOrgName()); //单位名称
//监测点信息
rMpBenchmarkLevelVO.setMeasurementPointName(monitorMap.get(item.getMeasurementPointId()).getMonitorName()); //监测点名称
//电压等级
rMpBenchmarkLevelVO.setVoltageLevel(monitorMap.get(item.getMeasurementPointId()).getVoltageLevel());
return rMpBenchmarkLevelVO;
}).collect(Collectors.toList());
return resultList;
}
}

View File

@@ -1,85 +0,0 @@
package com.njcn.harmonic.service.impl;
import cn.hutool.core.collection.CollUtil;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.njcn.device.pms.api.PwMonitorClient;
import com.njcn.device.pms.pojo.dto.PwPmsMonitorDTO;
import com.njcn.device.pms.pojo.param.PwPmsMonitorParam;
import com.njcn.harmonic.mapper.RStatPwPermeabilityMMapper;
import com.njcn.harmonic.pojo.param.RStatPwPermeabilityMParam;
import com.njcn.harmonic.pojo.po.RStatPwPermeabilityM;
import com.njcn.harmonic.pojo.vo.RStatPwPermeabilityMVO;
import com.njcn.harmonic.service.RStatPwPermeabilityMService;
import com.njcn.system.api.DicDataFeignClient;
import com.njcn.system.enums.DicDataTypeEnum;
import com.njcn.system.pojo.po.DictData;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/**
* 各渗透率光伏台区基准水平
* @author jianghf
* @description 针对表【r_stat_pw_permeability_m】的数据库操作Service实现
* @createDate 2022-11-07 10:35:21
*/
@Service
@RequiredArgsConstructor
public class RStatPwPermeabilityMServiceImpl extends ServiceImpl<RStatPwPermeabilityMMapper, RStatPwPermeabilityM>
implements RStatPwPermeabilityMService{
private final PwMonitorClient pwMonitorClient;
private final DicDataFeignClient dicDataFeignClient;
/***
* 获取各渗透率光伏台区基准水平
* @author jianghaifei
* @date 2022-11-07 14:38
* @param rStatPwPermeabilityMParam
* @return java.util.List<com.njcn.harmonic.pojo.vo.RStatPwPermeabilityMVO>
*/
@Override
public List<RStatPwPermeabilityMVO> getPwPermeabilityList(RStatPwPermeabilityMParam rStatPwPermeabilityMParam) {
//提起参数
String id = rStatPwPermeabilityMParam.getId(); //单位id
String psrName = rStatPwPermeabilityMParam.getPsrName(); //台区名称
String startTime = rStatPwPermeabilityMParam.getStartTime(); //开始时间
String endTime = rStatPwPermeabilityMParam.getEndTime(); //结束时间
//根据条件查询单位下面的所有配网监测点
PwPmsMonitorParam pwPmsMonitorParam = new PwPmsMonitorParam();
pwPmsMonitorParam.setOrgId(id); //单位id
pwPmsMonitorParam.setMonitorName(psrName); //台区名称(监测点名称)
List<PwPmsMonitorDTO> pwMonitorList = pwMonitorClient.getPwMonitorList(pwPmsMonitorParam).getData();
if (CollUtil.isEmpty(pwMonitorList)) {
return new ArrayList<>();
}
//监测点id集合
List<String> monitorIdList = pwMonitorList.stream().map(PwPmsMonitorDTO::getMonitorId).collect(Collectors.toList());
//监测点map key:监测点id value:监测点实体
Map<String, PwPmsMonitorDTO> monitorMap = pwMonitorList.stream().collect(Collectors.toMap(PwPmsMonitorDTO::getMonitorId, monitor -> monitor));
//获取各渗透率字典
List<DictData> rateList = dicDataFeignClient.getDicDataByTypeCode(DicDataTypeEnum.PERMEABILITY_TYPE.getCode()).getData();
Map<String, Object> condMap = rateList.stream().collect(Collectors.toMap(DictData::getCode, DictData::getId));
condMap.put("startTime", startTime);
condMap.put("endTime", endTime);
condMap.put("idList", monitorIdList);
List<RStatPwPermeabilityMVO> list = this.baseMapper.getPwPermeabilityList(condMap);
list = list.stream().peek(item -> {
item.setOrgName(monitorMap.get(item.getPsrId()).getOrgName()); //单位名称
item.setPsrName(monitorMap.get(item.getPsrId()).getMonitorName()); //台区名称
}).collect(Collectors.toList());
return list;
}
}

View File

@@ -1,8 +1,6 @@
package com.njcn.harmonic.service.majornetwork;
import com.njcn.common.pojo.param.StatisticsBizBaseParam;
import com.njcn.harmonic.pojo.param.RStatOrgParam;
import com.njcn.harmonic.pojo.param.StatSubstationBizBaseParam;
import com.njcn.harmonic.pojo.po.RMpPartHarmonicDetailM;
import com.baomidou.mybatisplus.extension.service.IService;
import com.njcn.harmonic.pojo.vo.RMpPartHarmonicDetailVO;

View File

@@ -1,8 +1,6 @@
package com.njcn.harmonic.service.majornetwork;
import com.njcn.common.pojo.param.StatisticsBizBaseParam;
import com.njcn.harmonic.pojo.param.RStatOrgParam;
import com.njcn.harmonic.pojo.param.StatSubstationBizBaseParam;
import com.njcn.harmonic.pojo.po.RMpPassRateQ;
import com.baomidou.mybatisplus.extension.service.IService;
import com.njcn.harmonic.pojo.vo.RStatOrgIndexVO;

View File

@@ -26,6 +26,10 @@ import com.njcn.system.api.DicDataFeignClient;
import com.njcn.system.enums.DicDataEnum;
import com.njcn.system.enums.DicDataTypeEnum;
import com.njcn.system.pojo.po.DictData;
import com.njcn.user.api.DeptFeignClient;
import com.njcn.user.pojo.dto.DeptDTO;
import com.njcn.web.utils.RequestUtil;
import com.njcn.web.utils.WebUtil;
import lombok.RequiredArgsConstructor;
import lombok.SneakyThrows;
import org.springframework.stereotype.Service;
@@ -53,6 +57,7 @@ public class RStatHarmonicMServiceImpl extends ServiceImpl<RStatHarmonicMMapper,
private final DicDataFeignClient dicDataFeignClient;
private final RStatHarmonicVoltageMMapper rStatHarmonicVoltageMMapper;
private final RStatHarmonicDMapper rStatHarmonicDMapper;
private final DeptFeignClient deptFeignClient;
@Override
public List<RArrayVO> getRStatHarmonicMAll(StatisticsBizBaseParam param) {
@@ -71,8 +76,14 @@ public class RStatHarmonicMServiceImpl extends ServiceImpl<RStatHarmonicMMapper,
//获取主网id信息
DictData mainnetData = dicDataFeignClient.getDicDataByCode(DicDataEnum.MAINNET_POINT.getCode()).getData();
//获取当前部门下所有部门信息
List<DeptDTO> deptDTOList = deptFeignClient.getDeptDescendantIndexes(RequestUtil.getDeptIndex(), WebUtil.filterDeptType()).getData();
List<String> deptIds = deptDTOList.stream().map(DeptDTO::getCode).collect(Collectors.toList());
//数据库查询
List<RStatHarmonicM> list = rStatHarmonicMMapper.selectList(new LambdaQueryWrapper<RStatHarmonicM>()
.in(RStatHarmonicM::getOrgNo,deptIds)
.eq(RStatHarmonicM::getDataType, mainnetData.getId())
.ge(StrUtil.isNotBlank(param.getStartTime()), RStatHarmonicM::getDataDate, param.getStartTime())
.le(StrUtil.isNotBlank(param.getEndTime()), RStatHarmonicM::getDataDate, param.getEndTime()));
@@ -183,7 +194,13 @@ public class RStatHarmonicMServiceImpl extends ServiceImpl<RStatHarmonicMMapper,
//初始化对象
List<RIconVO> arrayVOList = new ArrayList<>();
//获取当前部门下所有部门信息
List<DeptDTO> deptDTOList = deptFeignClient.getDeptDescendantIndexes(RequestUtil.getDeptIndex(), WebUtil.filterDeptType()).getData();
List<String> deptIds = deptDTOList.stream().map(DeptDTO::getCode).collect(Collectors.toList());
List<RStatHarmonicVoltageM> rStatHarmonicVoltageMS = rStatHarmonicVoltageMMapper.selectList(new LambdaQueryWrapper<RStatHarmonicVoltageM>()
.in(RStatHarmonicVoltageM::getOrgNo,deptIds)
.eq(RStatHarmonicVoltageM::getDataType, mainnetData.getId())
.eq(RStatHarmonicVoltageM::getMeasurementTypeClass, measurementDate.getId())
.eq(RStatHarmonicVoltageM::getHarmonicType, harmonicDate.getId())
@@ -253,7 +270,12 @@ public class RStatHarmonicMServiceImpl extends ServiceImpl<RStatHarmonicMMapper,
//获取主网id信息
DictData mainnetData = dicDataFeignClient.getDicDataByCode(DicDataEnum.MAINNET_POINT.getCode()).getData();
//获取当前部门下所有部门信息
List<DeptDTO> deptDTOList = deptFeignClient.getDeptDescendantIndexes(RequestUtil.getDeptIndex(), WebUtil.filterDeptType()).getData();
List<String> deptIds = deptDTOList.stream().map(DeptDTO::getCode).collect(Collectors.toList());
List<RStatHarmonicD> rStatHarmonicVoltageMS = rStatHarmonicDMapper.selectList(new LambdaQueryWrapper<RStatHarmonicD>()
.in(RStatHarmonicD::getOrgNo,deptIds)
.eq(RStatHarmonicD::getDataType, mainnetData.getId())
.eq(RStatHarmonicD::getMeasurementTypeClass, measurementDate.getId())
.eq(RStatHarmonicD::getHarmonicType, harmonicDate.getId())
@@ -315,8 +337,14 @@ public class RStatHarmonicMServiceImpl extends ServiceImpl<RStatHarmonicMMapper,
DictData distributionData = dicDataFeignClient.getDicDataByCode(DicDataEnum.DISTRIBUTION_POINT.getCode()).getData();
//初始化指标类型(横向)
List<RArrayVO> arrayVOList = new ArrayList<>();
//获取当前部门下所有部门信息
List<DeptDTO> deptDTOList = deptFeignClient.getDeptDescendantIndexes(RequestUtil.getDeptIndex(), WebUtil.filterDeptType()).getData();
List<String> deptIds = deptDTOList.stream().map(DeptDTO::getCode).collect(Collectors.toList());
//数据库查询
List<RStatHarmonicM> list = rStatHarmonicMMapper.selectList(new LambdaQueryWrapper<RStatHarmonicM>()
.in(RStatHarmonicM::getOrgNo,deptIds)
.eq(RStatHarmonicM::getDataType, distributionData.getId())
.ge(param.getStartTime() != null, RStatHarmonicM::getDataDate, param.getStartTime())
.le(param.getEndTime() != null, RStatHarmonicM::getDataDate, param.getEndTime()));
@@ -408,7 +436,12 @@ public class RStatHarmonicMServiceImpl extends ServiceImpl<RStatHarmonicMMapper,
//获取配网信息
DictData distributionData = dicDataFeignClient.getDicDataByCode(DicDataEnum.DISTRIBUTION_POINT.getCode()).getData();
//获取当前部门下所有部门信息
List<DeptDTO> deptDTOList = deptFeignClient.getDeptDescendantIndexes(RequestUtil.getDeptIndex(), WebUtil.filterDeptType()).getData();
List<String> deptIds = deptDTOList.stream().map(DeptDTO::getCode).collect(Collectors.toList());
List<RStatHarmonicD> rStatHarmonicVoltageMS = rStatHarmonicDMapper.selectList(new LambdaQueryWrapper<RStatHarmonicD>()
.in(RStatHarmonicD::getOrgNo,deptIds)
.eq(RStatHarmonicD::getDataType, distributionData.getId())
.eq(RStatHarmonicD::getMeasurementTypeClass, measurementDate.getId())
.eq(RStatHarmonicD::getHarmonicType, harmonicDate.getId())

View File

@@ -51,8 +51,8 @@ public class RStatHarmonicOrgMServiceImpl extends ServiceImpl<StatHarmonicOrgMMa
//子节点 获取所有得各单位类型
List<DeptDTO> deptDTOList = deptFeignClient.getDeptDescendantIndexes(param.getId(), WebUtil.filterDeptType()).getData();
//获取部门id集合
List<String> deptIds = deptDTOList.stream().map(DeptDTO::getId).collect(Collectors.toList());
Map<String, DeptDTO> deptMap = deptDTOList.stream().collect(Collectors.toMap(DeptDTO::getId, Function.identity()));
List<String> deptIds = deptDTOList.stream().map(DeptDTO::getCode).collect(Collectors.toList());
Map<String, DeptDTO> deptMap = deptDTOList.stream().collect(Collectors.toMap(DeptDTO::getCode, Function.identity()));
//对象主节点 获取所有得指标类型
List<DictData> lineTypeData = dicDataFeignClient.getDicDataByTypeCode
@@ -75,6 +75,7 @@ public class RStatHarmonicOrgMServiceImpl extends ServiceImpl<StatHarmonicOrgMMa
for (DeptDTO deptDTO : deptDTOList) {
RStatHarmonicMVO r = new RStatHarmonicMVO();
r.setHarmonicName(deptDTO.getName());
r.setSort(deptDTO.getSort());
r.setOverLimitMeasurementAverage(0);
r.setOverLimitMeasurementAccrued(0);
r.setAverageOverDay(0.0F);
@@ -106,6 +107,7 @@ public class RStatHarmonicOrgMServiceImpl extends ServiceImpl<StatHarmonicOrgMMa
DeptDTO data1 = deptMap.get(orgY.getOrgNo());
if (ObjectUtil.isNotNull(data1)) {
r.setHarmonicName(data1.getName());
r.setSort(data1.getSort());
DecimalFormat df = new DecimalFormat("###.00");
Float averageOverDay = Float.parseFloat(
df.format(r.getOverDay() / (r.getOverLimitMeasurementAccrued() * 1.0)));
@@ -118,7 +120,7 @@ public class RStatHarmonicOrgMServiceImpl extends ServiceImpl<StatHarmonicOrgMMa
linkedHashMap.put(harmonicMVO.getHarmonicName(), harmonicMVO);
}
List<RStatHarmonicMVO> aa = new ArrayList<>(linkedHashMap.values());
aa.sort(Comparator.comparing(rStatHarmonicMVO -> rStatHarmonicMVO.getHarmonicName()));
aa.sort(Comparator.comparing(rStatHarmonicMVO -> rStatHarmonicMVO.getSort()));
arrayVO.setColumns(aa);
arrayVOList.add(arrayVO);
}
@@ -129,7 +131,7 @@ public class RStatHarmonicOrgMServiceImpl extends ServiceImpl<StatHarmonicOrgMMa
linkedHashMap.put(rStatHarmonicMVO.getRowName(), rStatHarmonicMVO);
}
List<RArrayVO> aa = new ArrayList<>(linkedHashMap.values());
arrayVOList.sort(Comparator.comparing(rArrayVO -> rArrayVO.getRowName()));
arrayVOList.sort(Comparator.comparing(rArrayVO -> rArrayVO.getSort()));
return aa;
}
@@ -137,9 +139,9 @@ public class RStatHarmonicOrgMServiceImpl extends ServiceImpl<StatHarmonicOrgMMa
public List<RIconVO> getRStatHarmonicOrgMIcon(RStatHarmonicMParam param) {
//各单位类型
List<DeptDTO> deptDTOList = deptFeignClient.getDeptDescendantIndexes(param.getId(), WebUtil.filterDeptType()).getData();
Map<String, DeptDTO> deptMap = deptDTOList.stream().collect(Collectors.toMap(DeptDTO::getId, Function.identity()));
Map<String, DeptDTO> deptMap = deptDTOList.stream().collect(Collectors.toMap(DeptDTO::getCode, Function.identity()));
//获取部门id集合
List<String> deptIds = deptDTOList.stream().map(DeptDTO::getId).collect(Collectors.toList());
List<String> deptIds = deptDTOList.stream().map(DeptDTO::getCode).collect(Collectors.toList());
//指标对象类型属性
DictData harmonicData;
//判断是是否传入检测点信息值(电压)
@@ -181,6 +183,7 @@ public class RStatHarmonicOrgMServiceImpl extends ServiceImpl<StatHarmonicOrgMMa
for (RStatHarmonicOrgM orgM : value) {
RIconVO rIconVO = new RIconVO();
rIconVO.setRowName(data.getName());
rIconVO.setSort(data.getSort());
rIconVO.setOverLimitMeasurementAccrued(orgM.getOverLimitMeasurementAccrued());
rIconVO.setOverLimitMeasurementAverage(orgM.getOverLimitMeasurementAverage());
rIconVO.setOverLimitMeasurementRatioAccrued(orgM.getOverLimitMeasurementRatioAccrued());
@@ -195,7 +198,7 @@ public class RStatHarmonicOrgMServiceImpl extends ServiceImpl<StatHarmonicOrgMMa
}
});
}
arrayVOList.sort(Comparator.comparing(rIconVO -> rIconVO.getRowName()));
arrayVOList.sort(Comparator.comparing(rIconVO -> rIconVO.getSort()));
return arrayVOList;
}
@@ -210,8 +213,8 @@ public class RStatHarmonicOrgMServiceImpl extends ServiceImpl<StatHarmonicOrgMMa
//子节点 获取所有得各单位类型
List<DeptDTO> deptDTOList = deptFeignClient.getDeptDescendantIndexes(param.getId(), WebUtil.filterDeptType()).getData();
//获取部门id集合
List<String> deptIds = deptDTOList.stream().map(DeptDTO::getId).collect(Collectors.toList());
Map<String, DeptDTO> deptMap = deptDTOList.stream().collect(Collectors.toMap(DeptDTO::getId, Function.identity()));
List<String> deptIds = deptDTOList.stream().map(DeptDTO::getCode).collect(Collectors.toList());
Map<String, DeptDTO> deptMap = deptDTOList.stream().collect(Collectors.toMap(DeptDTO::getCode, Function.identity()));
//获取配网信息
DictData distributionData = dicDataFeignClient.getDicDataByCode(DicDataEnum.DISTRIBUTION_POINT.getCode()).getData();
@@ -240,6 +243,7 @@ public class RStatHarmonicOrgMServiceImpl extends ServiceImpl<StatHarmonicOrgMMa
RStatHarmonicMVO r = BeanUtil.copyProperties(statHarmonic, RStatHarmonicMVO.class);
DeptDTO deptDTO = deptMap.get(statHarmonic.getOrgNo());
r.setHarmonicName(deptDTO.getName());
r.setSort(deptDTO.getSort());
DecimalFormat df = new DecimalFormat("###.00");
Float averageOverDay = Float.parseFloat(
df.format(r.getOverDay() / (r.getOverLimitMeasurementAccrued() * 1.0)));
@@ -253,7 +257,7 @@ public class RStatHarmonicOrgMServiceImpl extends ServiceImpl<StatHarmonicOrgMMa
List<DeptDTO> notDeptDTOS = deptDTOList.stream().filter(r -> !listMap.containsKey(r.getId()))
.collect(Collectors.toList());
this.assignDict(notDeptDTOS, eventVO, arrayVO);
eventVO.sort(Comparator.comparing(statHarmonic -> statHarmonic.getHarmonicName()));
eventVO.sort(Comparator.comparing(statHarmonic -> statHarmonic.getSort()));
arrayVOList.add(arrayVO);
}
});
@@ -267,7 +271,7 @@ public class RStatHarmonicOrgMServiceImpl extends ServiceImpl<StatHarmonicOrgMMa
arrayVO.setRowName(notData.getName());
arrayVO.setSort(notData.getSort());
this.assignDict(deptDTOList, statharmonicVO, arrayVO);
statharmonicVO.sort(Comparator.comparing(statHarmonic -> statHarmonic.getHarmonicName()));
statharmonicVO.sort(Comparator.comparing(statHarmonic -> statHarmonic.getSort()));
arrayVOList.add(arrayVO);
}
arrayVOList.sort(Comparator.comparing(rArrayVO -> rArrayVO.getSort()));
@@ -278,9 +282,9 @@ public class RStatHarmonicOrgMServiceImpl extends ServiceImpl<StatHarmonicOrgMMa
public List<RIconVO> getPwRStatHarmonicOrgMIcon(RStatHarmonicMParam param) {
//各单位类型
List<DeptDTO> deptDTOList = deptFeignClient.getDeptDescendantIndexes(param.getId(), WebUtil.filterDeptType()).getData();
Map<String, DeptDTO> deptMap = deptDTOList.stream().collect(Collectors.toMap(DeptDTO::getId, Function.identity()));
Map<String, DeptDTO> deptMap = deptDTOList.stream().collect(Collectors.toMap(DeptDTO::getCode, Function.identity()));
//获取部门id集合
List<String> deptIds = deptDTOList.stream().map(DeptDTO::getId).collect(Collectors.toList());
List<String> deptIds = deptDTOList.stream().map(DeptDTO::getCode).collect(Collectors.toList());
//指标对象类型属性
DictData harmonicData;
//判断是是否传入检测点信息值(电压)
@@ -322,6 +326,7 @@ public class RStatHarmonicOrgMServiceImpl extends ServiceImpl<StatHarmonicOrgMMa
for (RStatHarmonicOrgM orgM : value) {
RIconVO rIconVO = new RIconVO();
rIconVO.setRowName(data.getName());
rIconVO.setSort(data.getSort());
rIconVO.setOverLimitMeasurementAccrued(orgM.getOverLimitMeasurementAccrued());
rIconVO.setOverLimitMeasurementAverage(orgM.getOverLimitMeasurementAverage());
rIconVO.setOverLimitMeasurementRatioAccrued(orgM.getOverLimitMeasurementRatioAccrued());
@@ -336,7 +341,7 @@ public class RStatHarmonicOrgMServiceImpl extends ServiceImpl<StatHarmonicOrgMMa
}
});
}
arrayVOList.sort(Comparator.comparing(rIconVO -> rIconVO.getRowName()));
arrayVOList.sort(Comparator.comparing(rIconVO -> rIconVO.getSort()));
return arrayVOList;
}
@@ -351,6 +356,7 @@ public class RStatHarmonicOrgMServiceImpl extends ServiceImpl<StatHarmonicOrgMMa
for (DeptDTO dictData : deptDTOList) {
RStatHarmonicMVO notStatHarmonicVO = new RStatHarmonicMVO();
notStatHarmonicVO.setHarmonicName(dictData.getName());
notStatHarmonicVO.setSort(dictData.getSort());
notStatHarmonicVO.setOverLimitMeasurementAverage(0);
notStatHarmonicVO.setOverLimitMeasurementAccrued(0);
notStatHarmonicVO.setOverDay(0);

View File

@@ -50,8 +50,8 @@ public class RStatHarmonicOrgQServiceImpl extends ServiceImpl<StatHarmonicOrgQMa
//子节点 获取所有得各单位类型
List<DeptDTO> deptDTOList = deptFeignClient.getDeptDescendantIndexes(param.getId(), WebUtil.filterDeptType()).getData();
//获取部门id集合
List<String> deptIds = deptDTOList.stream().map(DeptDTO::getId).collect(Collectors.toList());
Map<String, DeptDTO> deptMap = deptDTOList.stream().collect(Collectors.toMap(DeptDTO::getId, Function.identity()));
List<String> deptIds = deptDTOList.stream().map(DeptDTO::getCode).collect(Collectors.toList());
Map<String, DeptDTO> deptMap = deptDTOList.stream().collect(Collectors.toMap(DeptDTO::getCode, Function.identity()));
//对象主节点 获取所有得指标类型
List<DictData> lineTypeData = dicDataFeignClient.getDicDataByTypeCode
@@ -74,6 +74,7 @@ public class RStatHarmonicOrgQServiceImpl extends ServiceImpl<StatHarmonicOrgQMa
for (DeptDTO deptDTO : deptDTOList) {
RStatHarmonicMVO r = new RStatHarmonicMVO();
r.setHarmonicName(deptDTO.getName());
r.setSort(deptDTO.getSort());
r.setOverLimitMeasurementAverage(0);
r.setOverLimitMeasurementAccrued(0);
r.setAverageOverDay(0.0F);
@@ -105,6 +106,7 @@ public class RStatHarmonicOrgQServiceImpl extends ServiceImpl<StatHarmonicOrgQMa
DeptDTO data1 = deptMap.get(orgY.getOrgNo());
if (ObjectUtil.isNotNull(data1)) {
r.setHarmonicName(data1.getName());
r.setSort(data1.getSort());
r.setOverDay(0);
b.add(r);
}
@@ -114,7 +116,7 @@ public class RStatHarmonicOrgQServiceImpl extends ServiceImpl<StatHarmonicOrgQMa
linkedHashMap.put(harmonicMVO.getHarmonicName(), harmonicMVO);
}
List<RStatHarmonicMVO> aa = new ArrayList<>(linkedHashMap.values());
aa.sort(Comparator.comparing(rStatHarmonicMVO -> rStatHarmonicMVO.getHarmonicName()));
aa.sort(Comparator.comparing(rStatHarmonicMVO -> rStatHarmonicMVO.getSort()));
arrayVO.setColumns(aa);
arrayVOList.add(arrayVO);
}
@@ -125,7 +127,7 @@ public class RStatHarmonicOrgQServiceImpl extends ServiceImpl<StatHarmonicOrgQMa
linkedHashMap.put(rStatHarmonicMVO.getRowName(), rStatHarmonicMVO);
}
List<RArrayVO> aa = new ArrayList<>(linkedHashMap.values());
arrayVOList.sort(Comparator.comparing(rArrayVO -> rArrayVO.getRowName()));
arrayVOList.sort(Comparator.comparing(rArrayVO -> rArrayVO.getSort()));
return aa;
}
@@ -133,9 +135,9 @@ public class RStatHarmonicOrgQServiceImpl extends ServiceImpl<StatHarmonicOrgQMa
public List<RIconVO> getRStatHarmonicOrgQIcon(RStatHarmonicMParam param) {
//各单位类型
List<DeptDTO> deptDTOList = deptFeignClient.getDeptDescendantIndexes(param.getId(), WebUtil.filterDeptType()).getData();
Map<String, DeptDTO> deptMap = deptDTOList.stream().collect(Collectors.toMap(DeptDTO::getId, Function.identity()));
Map<String, DeptDTO> deptMap = deptDTOList.stream().collect(Collectors.toMap(DeptDTO::getCode, Function.identity()));
//获取部门id集合
List<String> deptIds = deptDTOList.stream().map(DeptDTO::getId).collect(Collectors.toList());
List<String> deptIds = deptDTOList.stream().map(DeptDTO::getCode).collect(Collectors.toList());
//指标对象类型属性
DictData harmonicData;
//判断是是否传入检测点信息值(电压)
@@ -177,6 +179,7 @@ public class RStatHarmonicOrgQServiceImpl extends ServiceImpl<StatHarmonicOrgQMa
for (RStatHarmonicOrgQ orgQ : value) {
RIconVO rIconVO = new RIconVO();
rIconVO.setRowName(data.getName());
rIconVO.setSort(data.getSort());
rIconVO.setOverLimitMeasurementAccrued(orgQ.getOverLimitMeasurementAccrued());
rIconVO.setOverLimitMeasurementAverage(orgQ.getOverLimitMeasurementAverage());
rIconVO.setOverLimitMeasurementRatioAccrued(orgQ.getOverLimitMeasurementRatioAccrued());
@@ -188,7 +191,7 @@ public class RStatHarmonicOrgQServiceImpl extends ServiceImpl<StatHarmonicOrgQMa
}
});
}
arrayVOList.sort(Comparator.comparing(rIconVO -> rIconVO.getRowName()));
arrayVOList.sort(Comparator.comparing(rIconVO -> rIconVO.getSort()));
return arrayVOList;
}
@@ -203,8 +206,8 @@ public class RStatHarmonicOrgQServiceImpl extends ServiceImpl<StatHarmonicOrgQMa
//子节点 获取所有得各单位类型
List<DeptDTO> deptDTOList = deptFeignClient.getDeptDescendantIndexes(param.getId(), WebUtil.filterDeptType()).getData();
//获取部门id集合
List<String> deptIds = deptDTOList.stream().map(DeptDTO::getId).collect(Collectors.toList());
Map<String, DeptDTO> deptMap = deptDTOList.stream().collect(Collectors.toMap(DeptDTO::getId, Function.identity()));
List<String> deptIds = deptDTOList.stream().map(DeptDTO::getCode).collect(Collectors.toList());
Map<String, DeptDTO> deptMap = deptDTOList.stream().collect(Collectors.toMap(DeptDTO::getCode, Function.identity()));
//获取配网信息
DictData distributionData = dicDataFeignClient.getDicDataByCode(DicDataEnum.DISTRIBUTION_POINT.getCode()).getData();
@@ -233,6 +236,7 @@ public class RStatHarmonicOrgQServiceImpl extends ServiceImpl<StatHarmonicOrgQMa
RStatHarmonicMVO r = BeanUtil.copyProperties(statHarmonic, RStatHarmonicMVO.class);
DeptDTO deptDTO = deptMap.get(statHarmonic.getOrgNo());
r.setHarmonicName(deptDTO.getName());
r.setSort(deptDTO.getSort());
eventVO.add(r);
}
@@ -242,7 +246,7 @@ public class RStatHarmonicOrgQServiceImpl extends ServiceImpl<StatHarmonicOrgQMa
List<DeptDTO> notDeptDTOS = deptDTOList.stream().filter(r -> !listMap.containsKey(r.getId()))
.collect(Collectors.toList());
this.assignDict(notDeptDTOS, eventVO, arrayVO);
eventVO.sort(Comparator.comparing(statHarmonic -> statHarmonic.getHarmonicName()));
eventVO.sort(Comparator.comparing(statHarmonic -> statHarmonic.getSort()));
arrayVOList.add(arrayVO);
}
});
@@ -256,7 +260,7 @@ public class RStatHarmonicOrgQServiceImpl extends ServiceImpl<StatHarmonicOrgQMa
arrayVO.setRowName(notData.getName());
arrayVO.setSort(notData.getSort());
this.assignDict(deptDTOList, statharmonicVO, arrayVO);
statharmonicVO.sort(Comparator.comparing(statHarmonic -> statHarmonic.getHarmonicName()));
statharmonicVO.sort(Comparator.comparing(statHarmonic -> statHarmonic.getSort()));
arrayVOList.add(arrayVO);
}
arrayVOList.sort(Comparator.comparing(rArrayVO -> rArrayVO.getSort()));
@@ -267,9 +271,9 @@ public class RStatHarmonicOrgQServiceImpl extends ServiceImpl<StatHarmonicOrgQMa
public List<RIconVO> getPwRStatHarmonicOrgQIcon(RStatHarmonicMParam param) {
//各单位类型
List<DeptDTO> deptDTOList = deptFeignClient.getDeptDescendantIndexes(param.getId(), WebUtil.filterDeptType()).getData();
Map<String, DeptDTO> deptMap = deptDTOList.stream().collect(Collectors.toMap(DeptDTO::getId, Function.identity()));
Map<String, DeptDTO> deptMap = deptDTOList.stream().collect(Collectors.toMap(DeptDTO::getCode, Function.identity()));
//获取部门id集合
List<String> deptIds = deptDTOList.stream().map(DeptDTO::getId).collect(Collectors.toList());
List<String> deptIds = deptDTOList.stream().map(DeptDTO::getCode).collect(Collectors.toList());
//指标对象类型属性
DictData harmonicData;
//判断是是否传入检测点信息值(电压)
@@ -311,6 +315,7 @@ public class RStatHarmonicOrgQServiceImpl extends ServiceImpl<StatHarmonicOrgQMa
for (RStatHarmonicOrgQ orgQ : value) {
RIconVO rIconVO = new RIconVO();
rIconVO.setRowName(data.getName());
rIconVO.setSort(data.getSort());
rIconVO.setOverLimitMeasurementAccrued(orgQ.getOverLimitMeasurementAccrued());
rIconVO.setOverLimitMeasurementAverage(orgQ.getOverLimitMeasurementAverage());
rIconVO.setOverLimitMeasurementRatioAccrued(orgQ.getOverLimitMeasurementRatioAccrued());
@@ -322,7 +327,7 @@ public class RStatHarmonicOrgQServiceImpl extends ServiceImpl<StatHarmonicOrgQMa
}
});
}
arrayVOList.sort(Comparator.comparing(rIconVO -> rIconVO.getRowName()));
arrayVOList.sort(Comparator.comparing(rIconVO -> rIconVO.getSort()));
return arrayVOList;
}
@@ -337,6 +342,7 @@ public class RStatHarmonicOrgQServiceImpl extends ServiceImpl<StatHarmonicOrgQMa
for (DeptDTO dictData : deptDTOList) {
RStatHarmonicMVO notStatHarmonicVO = new RStatHarmonicMVO();
notStatHarmonicVO.setHarmonicName(dictData.getName());
notStatHarmonicVO.setSort(dictData.getSort());
notStatHarmonicVO.setOverLimitMeasurementAverage(0);
notStatHarmonicVO.setOverLimitMeasurementAccrued(0);
notStatHarmonicVO.setOverDay(0);

View File

@@ -50,8 +50,8 @@ public class RStatHarmonicOrgYServiceImpl extends ServiceImpl<StatHarmonicOrgYMa
//子节点 获取所有得各单位类型
List<DeptDTO> deptDTOList = deptFeignClient.getDeptDescendantIndexes(param.getId(), WebUtil.filterDeptType()).getData();
//获取部门id集合
List<String> deptIds = deptDTOList.stream().map(DeptDTO::getId).collect(Collectors.toList());
Map<String, DeptDTO> deptMap = deptDTOList.stream().collect(Collectors.toMap(DeptDTO::getId, Function.identity()));
List<String> deptIds = deptDTOList.stream().map(DeptDTO::getCode).collect(Collectors.toList());
Map<String, DeptDTO> deptMap = deptDTOList.stream().collect(Collectors.toMap(DeptDTO::getCode, Function.identity()));
//对象主节点 获取所有得指标类型
List<DictData> lineTypeData = dicDataFeignClient.getDicDataByTypeCode
@@ -74,6 +74,7 @@ public class RStatHarmonicOrgYServiceImpl extends ServiceImpl<StatHarmonicOrgYMa
for (DeptDTO deptDTO : deptDTOList) {
RStatHarmonicMVO r = new RStatHarmonicMVO();
r.setHarmonicName(deptDTO.getName());
r.setSort(deptDTO.getSort());
r.setOverLimitMeasurementAverage(0);
r.setOverLimitMeasurementAccrued(0);
r.setAverageOverDay(0.0F);
@@ -105,6 +106,7 @@ public class RStatHarmonicOrgYServiceImpl extends ServiceImpl<StatHarmonicOrgYMa
DeptDTO data1 = deptMap.get(orgY.getOrgNo());
if (ObjectUtil.isNotNull(data1)){
r.setHarmonicName(data1.getName());
r.setSort(data1.getSort());
r.setOverDay(0);
b.add(r);
}
@@ -114,7 +116,7 @@ public class RStatHarmonicOrgYServiceImpl extends ServiceImpl<StatHarmonicOrgYMa
linkedHashMap.put(harmonicMVO.getHarmonicName(),harmonicMVO);
}
List<RStatHarmonicMVO> aa=new ArrayList<>(linkedHashMap.values());
aa.sort(Comparator.comparing(rStatHarmonicMVO -> rStatHarmonicMVO.getHarmonicName()));
aa.sort(Comparator.comparing(rStatHarmonicMVO -> rStatHarmonicMVO.getSort()));
arrayVO.setColumns(aa);
arrayVOList.add(arrayVO);
}
@@ -125,7 +127,7 @@ public class RStatHarmonicOrgYServiceImpl extends ServiceImpl<StatHarmonicOrgYMa
linkedHashMap.put(rStatHarmonicMVO.getRowName(),rStatHarmonicMVO);
}
List<RArrayVO> aa=new ArrayList<>(linkedHashMap.values());
arrayVOList.sort(Comparator.comparing(rArrayVO -> rArrayVO.getRowName()));
arrayVOList.sort(Comparator.comparing(rArrayVO -> rArrayVO.getSort()));
return aa;
}
@@ -133,9 +135,9 @@ public class RStatHarmonicOrgYServiceImpl extends ServiceImpl<StatHarmonicOrgYMa
public List<RIconVO> getRStatHarmonicOrgYIcon(RStatHarmonicMParam param) {
//各单位类型
List<DeptDTO> deptDTOList = deptFeignClient.getDeptDescendantIndexes(param.getId(), WebUtil.filterDeptType()).getData();
Map<String, DeptDTO> deptMap = deptDTOList.stream().collect(Collectors.toMap(DeptDTO::getId, Function.identity()));
Map<String, DeptDTO> deptMap = deptDTOList.stream().collect(Collectors.toMap(DeptDTO::getCode, Function.identity()));
//获取部门id集合
List<String> deptIds = deptDTOList.stream().map(DeptDTO::getId).collect(Collectors.toList());
List<String> deptIds = deptDTOList.stream().map(DeptDTO::getCode).collect(Collectors.toList());
//指标对象类型属性
DictData harmonicData;
//判断是是否传入检测点信息值(电压)
@@ -178,6 +180,7 @@ public class RStatHarmonicOrgYServiceImpl extends ServiceImpl<StatHarmonicOrgYMa
for (RStatHarmonicOrgY orgY : value) {
RIconVO rIconVO = new RIconVO();
rIconVO.setRowName(data.getName());
rIconVO.setSort(data.getSort());
rIconVO.setOverLimitMeasurementAccrued(orgY.getOverLimitMeasurementAccrued());
rIconVO.setOverLimitMeasurementAverage(orgY.getOverLimitMeasurementAverage());
rIconVO.setOverLimitMeasurementRatioAccrued(orgY.getOverLimitMeasurementRatioAccrued());
@@ -189,7 +192,7 @@ public class RStatHarmonicOrgYServiceImpl extends ServiceImpl<StatHarmonicOrgYMa
}
});
}
arrayVOList.sort(Comparator.comparing(rIconVO -> rIconVO.getRowName()));
arrayVOList.sort(Comparator.comparing(rIconVO -> rIconVO.getSort()));
return arrayVOList;
}
@@ -204,8 +207,8 @@ public class RStatHarmonicOrgYServiceImpl extends ServiceImpl<StatHarmonicOrgYMa
//子节点 获取所有得各单位类型
List<DeptDTO> deptDTOList = deptFeignClient.getDeptDescendantIndexes(param.getId(), WebUtil.filterDeptType()).getData();
//获取部门id集合
List<String> deptIds = deptDTOList.stream().map(DeptDTO::getId).collect(Collectors.toList());
Map<String, DeptDTO> deptMap = deptDTOList.stream().collect(Collectors.toMap(DeptDTO::getId, Function.identity()));
List<String> deptIds = deptDTOList.stream().map(DeptDTO::getCode).collect(Collectors.toList());
Map<String, DeptDTO> deptMap = deptDTOList.stream().collect(Collectors.toMap(DeptDTO::getCode, Function.identity()));
//获取配网信息
DictData distributionData = dicDataFeignClient.getDicDataByCode(DicDataEnum.DISTRIBUTION_POINT.getCode()).getData();
@@ -234,6 +237,7 @@ public class RStatHarmonicOrgYServiceImpl extends ServiceImpl<StatHarmonicOrgYMa
RStatHarmonicMVO r = BeanUtil.copyProperties(statHarmonic, RStatHarmonicMVO.class);
DeptDTO deptDTO = deptMap.get(statHarmonic.getOrgNo());
r.setHarmonicName(deptDTO.getName());
r.setSort(deptDTO.getSort());
eventVO.add(r);
}
}
@@ -242,7 +246,7 @@ public class RStatHarmonicOrgYServiceImpl extends ServiceImpl<StatHarmonicOrgYMa
List<DeptDTO> notDeptDTOS = deptDTOList.stream().filter(r -> !listMap.containsKey(r.getId()))
.collect(Collectors.toList());
this.assignDict(notDeptDTOS, eventVO, arrayVO);
eventVO.sort(Comparator.comparing(statHarmonic -> statHarmonic.getHarmonicName()));
eventVO.sort(Comparator.comparing(statHarmonic -> statHarmonic.getSort()));
arrayVOList.add(arrayVO);
}
});
@@ -256,7 +260,7 @@ public class RStatHarmonicOrgYServiceImpl extends ServiceImpl<StatHarmonicOrgYMa
arrayVO.setRowName(notData.getName());
arrayVO.setSort(notData.getSort());
this.assignDict(deptDTOList, statharmonicVO, arrayVO);
statharmonicVO.sort(Comparator.comparing(statHarmonic -> statHarmonic.getHarmonicName()));
statharmonicVO.sort(Comparator.comparing(statHarmonic -> statHarmonic.getSort()));
arrayVOList.add(arrayVO);
}
arrayVOList.sort(Comparator.comparing(rArrayVO -> rArrayVO.getSort()));
@@ -267,9 +271,9 @@ public class RStatHarmonicOrgYServiceImpl extends ServiceImpl<StatHarmonicOrgYMa
public List<RIconVO> getPwRStatHarmonicOrgYIcon(RStatHarmonicMParam param) {
//各单位类型
List<DeptDTO> deptDTOList = deptFeignClient.getDeptDescendantIndexes(param.getId(), WebUtil.filterDeptType()).getData();
Map<String, DeptDTO> deptMap = deptDTOList.stream().collect(Collectors.toMap(DeptDTO::getId, Function.identity()));
Map<String, DeptDTO> deptMap = deptDTOList.stream().collect(Collectors.toMap(DeptDTO::getCode, Function.identity()));
//获取部门id集合
List<String> deptIds = deptDTOList.stream().map(DeptDTO::getId).collect(Collectors.toList());
List<String> deptIds = deptDTOList.stream().map(DeptDTO::getCode).collect(Collectors.toList());
//指标对象类型属性
DictData harmonicData;
//判断是是否传入检测点信息值(电压)
@@ -312,6 +316,7 @@ public class RStatHarmonicOrgYServiceImpl extends ServiceImpl<StatHarmonicOrgYMa
for (RStatHarmonicOrgY orgY : value) {
RIconVO rIconVO = new RIconVO();
rIconVO.setRowName(data.getName());
rIconVO.setSort(data.getSort());
rIconVO.setOverLimitMeasurementAccrued(orgY.getOverLimitMeasurementAccrued());
rIconVO.setOverLimitMeasurementAverage(orgY.getOverLimitMeasurementAverage());
rIconVO.setOverLimitMeasurementRatioAccrued(orgY.getOverLimitMeasurementRatioAccrued());
@@ -323,7 +328,7 @@ public class RStatHarmonicOrgYServiceImpl extends ServiceImpl<StatHarmonicOrgYMa
}
});
}
arrayVOList.sort(Comparator.comparing(rIconVO -> rIconVO.getRowName()));
arrayVOList.sort(Comparator.comparing(rIconVO -> rIconVO.getSort()));
return arrayVOList;
}
@@ -338,6 +343,7 @@ public class RStatHarmonicOrgYServiceImpl extends ServiceImpl<StatHarmonicOrgYMa
for (DeptDTO dictData : deptDTOList) {
RStatHarmonicMVO notStatHarmonicVO = new RStatHarmonicMVO();
notStatHarmonicVO.setHarmonicName(dictData.getName());
notStatHarmonicVO.setSort(dictData.getSort());
notStatHarmonicVO.setOverLimitMeasurementAverage(0);
notStatHarmonicVO.setOverLimitMeasurementAccrued(0);
notStatHarmonicVO.setOverDay(0);

View File

@@ -15,6 +15,10 @@ import com.njcn.system.api.DicDataFeignClient;
import com.njcn.system.enums.DicDataEnum;
import com.njcn.system.enums.DicDataTypeEnum;
import com.njcn.system.pojo.po.DictData;
import com.njcn.user.api.DeptFeignClient;
import com.njcn.user.pojo.dto.DeptDTO;
import com.njcn.web.utils.RequestUtil;
import com.njcn.web.utils.WebUtil;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
@@ -36,6 +40,7 @@ public class RStatHarmonicQServiceImpl extends ServiceImpl<RStatHarmonicQMapper,
private final RStatHarmonicQMapper rStatHarmonicQMapper;
private final DicDataFeignClient dicDataFeignClient;
private final DeptFeignClient deptFeignClient;
@Override
public List<RArrayVO> getRStatHarmonicQAll(StatisticsBizBaseParam param) {
@@ -53,8 +58,13 @@ public class RStatHarmonicQServiceImpl extends ServiceImpl<RStatHarmonicQMapper,
//获取主网id信息
DictData mainnetData = dicDataFeignClient.getDicDataByCode(DicDataEnum.MAINNET_POINT.getCode()).getData();
//获取当前部门下所有部门信息
List<DeptDTO> deptDTOList = deptFeignClient.getDeptDescendantIndexes(RequestUtil.getDeptIndex(), WebUtil.filterDeptType()).getData();
List<String> deptIds = deptDTOList.stream().map(DeptDTO::getCode).collect(Collectors.toList());
//数据库查询
List<RStatHarmonicQ> list = rStatHarmonicQMapper.selectList(new LambdaQueryWrapper<RStatHarmonicQ>()
.in(RStatHarmonicQ::getOrgNo,deptIds)
.eq(RStatHarmonicQ::getDataType, mainnetData.getId())
.ge(StrUtil.isNotBlank(param.getStartTime()), RStatHarmonicQ::getDataDate, param.getStartTime())
.le(StrUtil.isNotBlank(param.getEndTime()), RStatHarmonicQ::getDataDate, param.getEndTime()));
@@ -142,8 +152,13 @@ public class RStatHarmonicQServiceImpl extends ServiceImpl<RStatHarmonicQMapper,
DictData distributionData = dicDataFeignClient.getDicDataByCode(DicDataEnum.DISTRIBUTION_POINT.getCode()).getData();
//初始化指标类型(横向)
List<RArrayVO> arrayVOList = new ArrayList<>();
//获取当前部门下所有部门信息
List<DeptDTO> deptDTOList = deptFeignClient.getDeptDescendantIndexes(RequestUtil.getDeptIndex(), WebUtil.filterDeptType()).getData();
List<String> deptIds = deptDTOList.stream().map(DeptDTO::getCode).collect(Collectors.toList());
//数据库查询
List<RStatHarmonicQ> list = rStatHarmonicQMapper.selectList(new LambdaQueryWrapper<RStatHarmonicQ>()
.in(RStatHarmonicQ::getOrgNo,deptIds )
.eq(RStatHarmonicQ::getDataType, distributionData.getId())
.ge(param.getStartTime() != null, RStatHarmonicQ::getDataDate, param.getStartTime())
.le(param.getEndTime() != null, RStatHarmonicQ::getDataDate, param.getEndTime()));

View File

@@ -15,6 +15,10 @@ import com.njcn.system.api.DicDataFeignClient;
import com.njcn.system.enums.DicDataEnum;
import com.njcn.system.enums.DicDataTypeEnum;
import com.njcn.system.pojo.po.DictData;
import com.njcn.user.api.DeptFeignClient;
import com.njcn.user.pojo.dto.DeptDTO;
import com.njcn.web.utils.RequestUtil;
import com.njcn.web.utils.WebUtil;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
@@ -36,6 +40,7 @@ public class RStatHarmonicYServiceImpl extends ServiceImpl<RStatHarmonicYMapper,
private final RStatHarmonicYMapper rStatHarmonicYMapper;
private final DicDataFeignClient dicDataFeignClient;
private final DeptFeignClient deptFeignClient;
@Override
public List<RArrayVO> getRStatHarmonicYAll(StatisticsBizBaseParam param) {
@@ -52,8 +57,13 @@ public class RStatHarmonicYServiceImpl extends ServiceImpl<RStatHarmonicYMapper,
//获取主网id信息
DictData mainnetData = dicDataFeignClient.getDicDataByCode(DicDataEnum.MAINNET_POINT.getCode()).getData();
//获取当前部门下所有部门信息
List<DeptDTO> deptDTOList = deptFeignClient.getDeptDescendantIndexes(RequestUtil.getDeptIndex(), WebUtil.filterDeptType()).getData();
List<String> deptIds = deptDTOList.stream().map(DeptDTO::getCode).collect(Collectors.toList());
//数据库查询
List<RStatHarmonicY> list = rStatHarmonicYMapper.selectList(new LambdaQueryWrapper<RStatHarmonicY>()
.in(RStatHarmonicY::getOrgNo,deptIds)
.eq(RStatHarmonicY::getDataType, mainnetData.getId())
.ge(StrUtil.isNotBlank(param.getStartTime()), RStatHarmonicY::getDataDate, param.getStartTime())
.le(StrUtil.isNotBlank(param.getEndTime()), RStatHarmonicY::getDataDate, param.getEndTime()));
@@ -142,8 +152,14 @@ public class RStatHarmonicYServiceImpl extends ServiceImpl<RStatHarmonicYMapper,
DictData distributionData = dicDataFeignClient.getDicDataByCode(DicDataEnum.DISTRIBUTION_POINT.getCode()).getData();
//初始化指标类型(横向)
List<RArrayVO> arrayVOList = new ArrayList<>();
//获取当前部门下所有部门信息
List<DeptDTO> deptDTOList = deptFeignClient.getDeptDescendantIndexes(RequestUtil.getDeptIndex(), WebUtil.filterDeptType()).getData();
List<String> deptIds = deptDTOList.stream().map(DeptDTO::getCode).collect(Collectors.toList());
//数据库查询
List<RStatHarmonicY> list = rStatHarmonicYMapper.selectList(new LambdaQueryWrapper<RStatHarmonicY>()
.in(RStatHarmonicY::getOrgNo, deptIds)
.eq(RStatHarmonicY::getDataType, distributionData.getId())
.ge(param.getStartTime() != null, RStatHarmonicY::getDataDate, param.getStartTime())
.le(param.getEndTime() != null, RStatHarmonicY::getDataDate, param.getEndTime()));

View File

@@ -50,7 +50,7 @@ public class RStatLoadTypeServiceImpl extends ServiceImpl<RStatLoadTypeMMapper,
public List<RArrayVO> getRStatLoadType(StatisticsBizBaseParam param) {
//获取部门信息
List<DeptDTO> data = deptFeignClient.getDeptDescendantIndexes(param.getId(), WebUtil.filterDeptType()).getData();
List<String> deptIds = data.stream().map(DeptDTO::getId).collect(Collectors.toList());
List<String> deptIds = data.stream().map(DeptDTO::getCode).collect(Collectors.toList());
//获取字典信息
List<DictData> data1 = dicDataFeignClient.getDicDataByTypeCode(
DicDataTypeEnum.MONITORING_LABELS.getCode()).getData();

View File

@@ -48,10 +48,10 @@ public class RStatOrgBusbarVoltageServiceImpl extends ServiceImpl<RStatOrgBusbar
public List<RStatOrgBusbarVoltageVO> getRStatOrgBusbarVoltage(StatSubstationBizBaseParam param) {
//获取部门信息
List<DeptDTO> data = deptFeignClient.getDeptDescendantIndexes(param.getId(), WebUtil.filterDeptType()).getData();
Map<String, DeptDTO> deptMap = data.stream().collect(Collectors.toMap(DeptDTO::getId, Function.identity()));
Map<String, DeptDTO> deptMap = data.stream().collect(Collectors.toMap(DeptDTO::getCode, Function.identity()));
//获取部门id集合
List<String> deptIds = data.stream().map(DeptDTO::getId).collect(Collectors.toList());
List<String> deptIds = data.stream().map(DeptDTO::getCode).collect(Collectors.toList());
List<RStatOrgBusbarVoltageVO> info = new ArrayList<>();
List<RStatOrgBusbarVoltageVO> temp = new ArrayList<>();
if (CollectionUtil.isNotEmpty(data)) {

View File

@@ -44,8 +44,8 @@ public class RStatOrgMServiceImpl extends ServiceImpl<RStatOrgMMapper, RStatOrgM
public List<RStatOrgVO> getRStatHarmonicMAll(StatisticsBizBaseParam param) {
List<DeptDTO> deptDTOList = deptFeignClient.getDeptDescendantIndexes(param.getId(), WebUtil.filterDeptType()).getData();
//获取部门id集合
List<String> deptIds = deptDTOList.stream().map(DeptDTO::getId).collect(Collectors.toList());
Map<String, DeptDTO> deptMap = deptDTOList.stream().collect(Collectors.toMap(DeptDTO::getId, Function.identity()));
List<String> deptIds = deptDTOList.stream().map(DeptDTO::getCode).collect(Collectors.toList());
Map<String, DeptDTO> deptMap = deptDTOList.stream().collect(Collectors.toMap(DeptDTO::getCode, Function.identity()));
//获取主网id信息
DictData mainnetData = dicDataFeignClient.getDicDataByCode(DicDataEnum.MAINNET_POINT.getCode()).getData();
//数据库查询

View File

@@ -44,8 +44,8 @@ public class RStatOrgQServiceImpl extends ServiceImpl<RStatOrgQMapper, RStatOrgQ
public List<RStatOrgVO> getRStatHarmonicQAll(StatisticsBizBaseParam param) {
List<DeptDTO> deptDTOList = deptFeignClient.getDeptDescendantIndexes(param.getId(), WebUtil.filterDeptType()).getData();
//获取部门id集合
List<String> deptIds = deptDTOList.stream().map(DeptDTO::getId).collect(Collectors.toList());
Map<String, DeptDTO> deptMap = deptDTOList.stream().collect(Collectors.toMap(DeptDTO::getId, Function.identity()));
List<String> deptIds = deptDTOList.stream().map(DeptDTO::getCode).collect(Collectors.toList());
Map<String, DeptDTO> deptMap = deptDTOList.stream().collect(Collectors.toMap(DeptDTO::getCode, Function.identity()));
//获取主网id信息
DictData mainnetData = dicDataFeignClient.getDicDataByCode(DicDataEnum.MAINNET_POINT.getCode()).getData();

View File

@@ -69,8 +69,8 @@ public class RStatOrgYServiceImpl extends ServiceImpl<RStatOrgYMapper, RStatOrgY
public List<RStatOrgVO> getRStatHarmonicYAll(StatisticsBizBaseParam param) {
List<DeptDTO> deptDTOList = deptFeignClient.getDeptDescendantIndexes(param.getId(), WebUtil.filterDeptType()).getData();
//获取部门id集合
List<String> deptIds = deptDTOList.stream().map(DeptDTO::getId).collect(Collectors.toList());
Map<String, DeptDTO> deptMap = deptDTOList.stream().collect(Collectors.toMap(DeptDTO::getId, Function.identity()));
List<String> deptIds = deptDTOList.stream().map(DeptDTO::getCode).collect(Collectors.toList());
Map<String, DeptDTO> deptMap = deptDTOList.stream().collect(Collectors.toMap(DeptDTO::getCode, Function.identity()));
//获取主网id信息
DictData mainnetData = dicDataFeignClient.getDicDataByCode(DicDataEnum.MAINNET_POINT.getCode()).getData();
@@ -120,7 +120,7 @@ public class RStatOrgYServiceImpl extends ServiceImpl<RStatOrgYMapper, RStatOrgY
DicDataTypeEnum.STEADY_STATIS.getCode()).getData();
List<RStatSubstationOrgVO> temp = new ArrayList<>();
// 过滤出部门id
List<String> deptIds = data.stream().map(DeptDTO::getId).collect(Collectors.toList());
List<String> deptIds = data.stream().map(DeptDTO::getCode).collect(Collectors.toList());
StatSubstationBizBaseParam baseParam = BeanUtil.copyProperties(param, StatSubstationBizBaseParam.class);
baseParam.setIds(deptIds);
//获取主网id信息
@@ -280,6 +280,7 @@ public class RStatOrgYServiceImpl extends ServiceImpl<RStatOrgYMapper, RStatOrgY
@Override
public List<RSubstationIcon2VO.RSubstationInfoVO> getRStatSubstation(StatSubstationBizBaseParam param) {
//远程调用监测点信息接口
PmsDeviceInfoParam pms = new PmsDeviceInfoParam();
pms.setDeptIndex(param.getId());
pms.setStatisticalType(new SimpleDTO());
@@ -349,7 +350,7 @@ public class RStatOrgYServiceImpl extends ServiceImpl<RStatOrgYMapper, RStatOrgY
if (CollectionUtil.isNotEmpty(data)) {
// 过滤出部门id
List<String> deptIds = data.stream().map(DeptDTO::getId).collect(Collectors.toList());
List<String> deptIds = data.stream().map(DeptDTO::getCode).collect(Collectors.toList());
StatSubstationBizBaseParam baseParam = BeanUtil.copyProperties(param, StatSubstationBizBaseParam.class);
baseParam.setIds(deptIds);
// 类型1年 2季度 3月份 4日

View File

@@ -20,6 +20,7 @@ import com.njcn.harmonic.pojo.vo.RSubstationIcon2VO;
import com.njcn.harmonic.pojo.vo.RSubstationIconVO;
import com.njcn.harmonic.service.majornetwork.RStatSubstationMService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.njcn.web.utils.RequestUtil;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
@@ -50,7 +51,7 @@ public class RStatSubstationMServiceImpl extends ServiceImpl<RStatSubstationMMap
RSubstationIconVO rSubstationIconVO = new RSubstationIconVO();
StatSubstationBizBaseParam baseParam = BeanUtil.copyProperties(param, StatSubstationBizBaseParam.class);
//根据部门获取变电站信息
// baseParam.setIds(this.powerrIdList(param.getId()));
baseParam.setIds(this.powerrIdList(RequestUtil.getDeptIndex()));
String string = param.getType().toString();
switch (string) {
//查询变电站稳态指标超标分布(按超标天数)-年数据
@@ -77,7 +78,7 @@ public class RStatSubstationMServiceImpl extends ServiceImpl<RStatSubstationMMap
List<RSubstationIcon2VO> rSubstationIconVO = new ArrayList<>();
StatSubstationBizBaseParam baseParam = BeanUtil.copyProperties(param, StatSubstationBizBaseParam.class);
//根据id进行筛选
// baseParam.setIds(this.powerrIdList(param.getId()));
baseParam.setIds(this.powerrIdList(RequestUtil.getDeptIndex()));
String string = param.getType().toString();
switch (string) {
//查询变电站稳态指标平均超标天数-年数据

View File

@@ -1,11 +1,7 @@
package com.njcn.harmonic.service.majornetwork.impl;
import cn.hutool.core.bean.BeanUtil;
import com.njcn.common.pojo.dto.SimpleDTO;
import com.njcn.common.pojo.param.StatisticsBizBaseParam;
import com.njcn.device.pms.api.PmsGeneralDeviceInfoClient;
import com.njcn.device.pms.pojo.dto.PmsGeneralDeviceDTO;
import com.njcn.device.pms.pojo.param.PmsDeviceInfoParam;
import com.njcn.harmonic.pojo.param.StatSubstationBizBaseParam;
import com.njcn.harmonic.pojo.po.RStatSubstationVoltageM;
import com.njcn.harmonic.mapper.majornetwork.RStatSubstationVoltageMMapper;
@@ -13,11 +9,14 @@ import com.njcn.harmonic.pojo.vo.RVoltageIconVO;
import com.njcn.harmonic.service.majornetwork.RStatSubstationVoltageMService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.njcn.user.api.DeptFeignClient;
import com.njcn.user.pojo.dto.DeptDTO;
import com.njcn.web.utils.RequestUtil;
import com.njcn.web.utils.WebUtil;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.List;
import java.util.stream.Collectors;
/**
* <p>
@@ -31,26 +30,16 @@ import java.util.List;
@RequiredArgsConstructor
public class RStatSubstationVoltageMServiceImpl extends ServiceImpl<RStatSubstationVoltageMMapper, RStatSubstationVoltageM> implements RStatSubstationVoltageMService {
private final DeptFeignClient deptFeignClient;
private final RStatSubstationVoltageMMapper rStatSubstationVoltageMMapper;
private final PmsGeneralDeviceInfoClient pmsGeneralDeviceInfoClient;
private final DeptFeignClient deptFeignClient;
@Override
public List<RVoltageIconVO> getStatSubstationIcon(StatisticsBizBaseParam param) {
//获取部门id集合
//获取当前部门下所有部门信息
List<DeptDTO> deptDTOList = deptFeignClient.getDeptDescendantIndexes(RequestUtil.getDeptIndex(), WebUtil.filterDeptType()).getData();
List<String> deptIds = deptDTOList.stream().map(DeptDTO::getCode).collect(Collectors.toList());
StatSubstationBizBaseParam baseParam= BeanUtil.copyProperties(param,StatSubstationBizBaseParam.class);
// baseParam.setIds(this.powerrIdList(param.getId()));
baseParam.setIds(deptIds);
return rStatSubstationVoltageMMapper.getStatSubstationIcon(baseParam);
}
//根据部门获取监测点id信息
private List<String> powerrIdList(String id){
//获取部门下面监测点信息
PmsDeviceInfoParam pms=new PmsDeviceInfoParam();
pms.setDeptIndex(id);
pms.setStatisticalType(new SimpleDTO());
List<PmsGeneralDeviceDTO> data = pmsGeneralDeviceInfoClient.getPmsDeviceInfoWithInOrg(pms).getData();
List<String> addids=new ArrayList<>();
data.stream().forEach(e-> addids.addAll(e.getPowerrIdList()));
return addids;
}
}