1.台账审核和变电站查询。2.配网,稳态指标和暂态指标相关代码

This commit is contained in:
wurui
2023-02-22 15:10:58 +08:00
parent c7c992df3b
commit 6ddcc366e8
20 changed files with 331 additions and 83 deletions

View File

@@ -131,5 +131,21 @@ public class PwRStatOrgController extends BaseController {
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, rStatOrg, methodDescribe);
}
/**
* 变电站稳态指标超标分类统计表
*
* @param param
* @return
*/
@PostMapping("/getPwRStatSubstationOrg")
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
@ApiOperation("变电站稳态指标超标分类统计表")
public HttpResult<List<RSubstationIcon2VO.RSubstationInfoVO>> getRStatSubstationOrg(@RequestBody StatSubstationBizBaseParam param
) {
String methodDescribe = getMethodDescribe("getRStatSubstationOrg");
List<RSubstationIcon2VO.RSubstationInfoVO> rStatOrg = pwRStatOrgService.getRStatSubstation(param);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, rStatOrg, methodDescribe);
}
}

View File

@@ -4,10 +4,7 @@ import com.baomidou.mybatisplus.extension.service.IService;
import com.njcn.harmonic.pojo.param.RStatOrgParam;
import com.njcn.harmonic.pojo.param.StatSubstationBizBaseParam;
import com.njcn.harmonic.pojo.po.RStatOrgQ;
import com.njcn.harmonic.pojo.vo.PwRStatOrgVO;
import com.njcn.harmonic.pojo.vo.RMpPartHarmonicDetailVO;
import com.njcn.harmonic.pojo.vo.RStatOrgVO;
import com.njcn.harmonic.pojo.vo.RStatSubstationOrg2VO;
import com.njcn.harmonic.pojo.vo.*;
import java.util.List;
@@ -60,4 +57,13 @@ public interface PwRStatOrgService extends IService<RStatOrgQ> {
* @return
*/
List<RMpPartHarmonicDetailVO.PwRMpPartHarmonicDetailDVO> getRMpPartHarmonicDetail(RStatOrgParam.PwRStatOrgParam param);
/**
* 变电站稳态指标超标分类统计表
*
* @param param
* @return
*/
List<RSubstationIcon2VO.RSubstationInfoVO> getRStatSubstation(StatSubstationBizBaseParam param);
}

View File

@@ -1,11 +1,19 @@
package com.njcn.harmonic.service.distribution.impl;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.collection.CollectionUtil;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.njcn.common.pojo.constant.BizParamConstant;
import com.njcn.common.pojo.dto.SimpleDTO;
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.PmsMonitorDTO;
import com.njcn.device.pms.pojo.dto.PwPmsMonitorDTO;
import com.njcn.device.pms.pojo.param.PmsDeviceInfoParam;
import com.njcn.device.pms.pojo.param.PmsMonitorParam;
import com.njcn.device.pms.pojo.param.PwPmsMonitorParam;
import com.njcn.harmonic.mapper.distribution.PwRStatOrgMapper;
import com.njcn.harmonic.mapper.majornetwork.*;
@@ -55,7 +63,11 @@ public class PwRStatOrgServiceImpl extends ServiceImpl<PwRStatOrgMapper, RStatOr
private final RMpPassRateMMapper rMpPassRateMMapper;
private final RMpSurplusHarmonicDetailMMapper rMpSurplusHarmonicDetailMMapper;
private final DeptFeignClient deptFeignClient;
private final RStatSubstationMMapper rStatSubstationMMapper;
private final RStatSubstationQMapper rStatSubstationQMapper;
private final RStatSubstationYMapper rStatSubstationYMapper;
private final MonitorClient monitorClient;
private final PmsGeneralDeviceInfoClient pmsGeneralDeviceInfoClient;
@Override
public List<RStatOrgVO.PwRStatOrgVO> getRStatHarmonicAll(StatSubstationBizBaseParam param) {
@@ -436,4 +448,77 @@ public class PwRStatOrgServiceImpl extends ServiceImpl<PwRStatOrgMapper, RStatOr
}
return Lists.newArrayList();
}
@Override
public List<RSubstationIcon2VO.RSubstationInfoVO> getRStatSubstation(StatSubstationBizBaseParam param) {
//远程调用监测点信息接口
PmsDeviceInfoParam pms = new PmsDeviceInfoParam();
pms.setDeptIndex(param.getId());
pms.setStatisticalType(new SimpleDTO());
List<PmsGeneralDeviceDTO> data = pmsGeneralDeviceInfoClient.getPwPmsDeviceInfoWithOrgId(pms).getData();
//生成变电站id集合
List<String> pAddIds = new ArrayList<>();
data.stream().forEach(e -> pAddIds.addAll(e.getPowerrIdList()));
List<RSubstationIcon2VO> rSubstationIconVO = new ArrayList<>();
//根据监测点id获取变电站信息
PmsMonitorParam dto = new PmsMonitorParam();
List<String> mAddIds = new ArrayList<>();
data.stream().forEach(e -> mAddIds.addAll(e.getMonitorIdList()));
dto.setMonitorIds(mAddIds);
//变电站id
dto.setPowerrIds(param.getIds());
//根据变电站分组
List<PmsMonitorDTO> pmsMonitorDTOS = monitorClient.getMonitorInfoListByCond(dto).getData();
//用于临时存储TestValue的getPowerrId(解决去重失效问题)
List<String> infoIds = new ArrayList<>();
Map<String, PmsMonitorDTO> pmsMonitorDTOMap = pmsMonitorDTOS.stream().filter(
v -> {
if (infoIds.contains(v.getPowerrId())) {
return false;
} else {
infoIds.add(v.getPowerrId());
return true;
}
}).collect(Collectors.toMap(PmsMonitorDTO::getPowerrId, Function.identity()));
if (CollUtil.isNotEmpty(pmsMonitorDTOS)) {
//获取最新过滤的变电站id
List<String> ids = pmsMonitorDTOS.stream().map(PmsMonitorDTO::getPowerrId).collect(Collectors.toList());
//根据id进行筛选
StatSubstationBizBaseParam baseParam = BeanUtil.copyProperties(param, StatSubstationBizBaseParam.class);
baseParam.setIds(ids);
String string = param.getType().toString();
switch (string) {
//查询变电站稳态指标平均超标天数-年数据
case BizParamConstant.STAT_BIZ_YEAR:
rSubstationIconVO = rStatSubstationYMapper.getStatSubstationIcon2Y(baseParam);
break;
//查询变电站稳态指标平均超标天数-季数据
case BizParamConstant.STAT_BIZ_QUARTER:
rSubstationIconVO = rStatSubstationQMapper.getStatSubstationIcon2Q(baseParam);
break;
//查询变电站稳态指标平均超标天数-月数据
case BizParamConstant.STAT_BIZ_MONTH:
rSubstationIconVO = rStatSubstationMMapper.getStatSubstationIcon2M(baseParam);
break;
default:
break;
}
List<RSubstationIcon2VO.RSubstationInfoVO> rSubstationInfoVOS = BeanUtil.copyToList(rSubstationIconVO, RSubstationIcon2VO.RSubstationInfoVO.class);
if (CollectionUtil.isNotEmpty(rSubstationInfoVOS)) {
Map<String, RSubstationIcon2VO.RSubstationInfoVO> detailVOMap = rSubstationInfoVOS.stream()
.collect(Collectors.toMap(RSubstationIcon2VO.RSubstationInfoVO::getSubstationId, Function.identity()));
detailVOMap.forEach((Key, value) -> {
if (pmsMonitorDTOMap.containsKey(Key)) {
PmsMonitorDTO dto1 = pmsMonitorDTOMap.get(Key);
value.setCityName(dto1.getOrgName());
value.setSubstationName(dto1.getPowerrName());
}
});
}
return rSubstationInfoVOS;
}
return new ArrayList<>();
}
}

View File

@@ -304,6 +304,7 @@ public class RStatOrgYServiceImpl extends ServiceImpl<RStatOrgYMapper, RStatOrgY
List<String> mAddIds = new ArrayList<>();
data.stream().forEach(e -> mAddIds.addAll(e.getMonitorIdList()));
dto.setMonitorIds(mAddIds);
//变电站id
dto.setPowerrIds(param.getIds());
//根据变电站分组
List<PmsMonitorDTO> pmsMonitorDTOS = monitorClient.getMonitorInfoListByCond(dto).getData();
@@ -357,7 +358,7 @@ public class RStatOrgYServiceImpl extends ServiceImpl<RStatOrgYMapper, RStatOrgY
}
return rSubstationInfoVOS;
}
return null;
return new ArrayList<>();
}
@Override