1.区分辽宁通用功能调整

This commit is contained in:
2026-07-17 10:04:38 +08:00
parent 60a519d996
commit 412e97c4f1
10 changed files with 92 additions and 21 deletions

View File

@@ -2,6 +2,7 @@ package com.njcn.device.pq.pojo.param;
import com.njcn.web.pojo.param.BaseParam; import com.njcn.web.pojo.param.BaseParam;
import lombok.Data; import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springframework.format.annotation.DateTimeFormat; import org.springframework.format.annotation.DateTimeFormat;
import java.time.LocalDate; import java.time.LocalDate;
@@ -12,6 +13,7 @@ import java.time.format.DateTimeFormatter;
* @CreateTime: 2026-07-06 * @CreateTime: 2026-07-06
* @Description: * @Description:
*/ */
@EqualsAndHashCode(callSuper = true)
@Data @Data
public class TerminalCheckParam extends BaseParam { public class TerminalCheckParam extends BaseParam {

View File

@@ -4,6 +4,7 @@ import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import java.io.Serializable; import java.io.Serializable;
import java.util.List;
/** /**
* @version 1.0.0 * @version 1.0.0
@@ -26,4 +27,7 @@ public class LoadTypeVO implements Serializable {
*/ */
@ApiModelProperty("干扰源暂降次数") @ApiModelProperty("干扰源暂降次数")
private Integer count; private Integer count;
private List<String> loadTypeList;
} }

View File

@@ -11,6 +11,7 @@ import com.njcn.device.pq.pojo.po.RStatIntegrityD;
import com.njcn.device.pq.pojo.po.RStatOnlinerateD; import com.njcn.device.pq.pojo.po.RStatOnlinerateD;
import com.njcn.device.pq.pojo.vo.GridDiagramProVO; import com.njcn.device.pq.pojo.vo.GridDiagramProVO;
import com.njcn.device.pq.pojo.vo.GridDiagramVO; import com.njcn.device.pq.pojo.vo.GridDiagramVO;
import com.njcn.device.pq.pojo.vo.LoadTypeVO;
import com.njcn.device.pq.service.GridDiagramService; import com.njcn.device.pq.service.GridDiagramService;
import com.njcn.web.controller.BaseController; import com.njcn.web.controller.BaseController;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
@@ -135,4 +136,13 @@ public class GridDiagramController extends BaseController {
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, gridDiagramOnLineRateD, methodDescribe); return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, gridDiagramOnLineRateD, methodDescribe);
} }
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
@PostMapping("/loadTypeVOList")
@ApiOperation("干扰源类型统计")
public HttpResult<List<LoadTypeVO>> loadTypeVOList(@RequestBody GridDiagramParam param){
String methodDescribe = getMethodDescribe("loadTypeVOList");
List<LoadTypeVO> loadTypeVOList = gridDiagramService.loadTypeVOList(param);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, loadTypeVOList, methodDescribe);
}
} }

View File

@@ -7,6 +7,7 @@ import com.njcn.device.pq.pojo.po.RStatIntegrityD;
import com.njcn.device.pq.pojo.po.RStatOnlinerateD; import com.njcn.device.pq.pojo.po.RStatOnlinerateD;
import com.njcn.device.pq.pojo.vo.GridDiagramProVO; import com.njcn.device.pq.pojo.vo.GridDiagramProVO;
import com.njcn.device.pq.pojo.vo.GridDiagramVO; import com.njcn.device.pq.pojo.vo.GridDiagramVO;
import com.njcn.device.pq.pojo.vo.LoadTypeVO;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
@@ -90,4 +91,12 @@ public interface GridDiagramService {
* @Date: 2024/5/4 18:35 * @Date: 2024/5/4 18:35
*/ */
List<RStatOnlinerateD> getGridDiagramOnLineRateD(StatisticsBizBaseParam param); List<RStatOnlinerateD> getGridDiagramOnLineRateD(StatisticsBizBaseParam param);
/**
* @Description: 根据干扰源进行分组
* @param param
* @return
*/
List<LoadTypeVO> loadTypeVOList(GridDiagramParam param);
} }

View File

@@ -10,6 +10,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.njcn.common.pojo.enums.common.DataStateEnum; import com.njcn.common.pojo.enums.common.DataStateEnum;
import com.njcn.common.pojo.param.StatisticsBizBaseParam; import com.njcn.common.pojo.param.StatisticsBizBaseParam;
import com.njcn.device.biz.enums.RunFlagEnum;
import com.njcn.device.biz.pojo.dto.DeptGetChildrenMoreDTO; import com.njcn.device.biz.pojo.dto.DeptGetChildrenMoreDTO;
import com.njcn.device.biz.pojo.dto.LineDevGetDTO; import com.njcn.device.biz.pojo.dto.LineDevGetDTO;
import com.njcn.device.biz.pojo.param.DeptGetLineParam; import com.njcn.device.biz.pojo.param.DeptGetLineParam;
@@ -24,9 +25,11 @@ import com.njcn.device.pq.pojo.dto.GeneralDeviceDTO;
import com.njcn.device.pq.pojo.param.GridDiagramParam; import com.njcn.device.pq.pojo.param.GridDiagramParam;
import com.njcn.device.pq.pojo.param.LineBaseQueryParam; import com.njcn.device.pq.pojo.param.LineBaseQueryParam;
import com.njcn.device.pq.pojo.param.OnlineRateParam; import com.njcn.device.pq.pojo.param.OnlineRateParam;
import com.njcn.device.pq.pojo.param.dataClean.MonitorBaseParam;
import com.njcn.device.pq.pojo.po.*; import com.njcn.device.pq.pojo.po.*;
import com.njcn.device.pq.pojo.vo.GridDiagramProVO; import com.njcn.device.pq.pojo.vo.GridDiagramProVO;
import com.njcn.device.pq.pojo.vo.GridDiagramVO; import com.njcn.device.pq.pojo.vo.GridDiagramVO;
import com.njcn.device.pq.pojo.vo.LoadTypeVO;
import com.njcn.device.pq.pojo.vo.RStatOnlineRateVO; import com.njcn.device.pq.pojo.vo.RStatOnlineRateVO;
import com.njcn.device.pq.service.*; import com.njcn.device.pq.service.*;
import com.njcn.device.rstatintegrity.mapper.RStatIntegrityDMapper; import com.njcn.device.rstatintegrity.mapper.RStatIntegrityDMapper;
@@ -45,6 +48,7 @@ import java.util.stream.Stream;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.jetbrains.annotations.NotNull;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
@@ -569,6 +573,27 @@ public class GridDiagramServiceImpl implements GridDiagramService {
); );
} }
@Override
public List<LoadTypeVO> loadTypeVOList(@NotNull GridDiagramParam param) {
List<LoadTypeVO> returnList = new ArrayList<>();
MonitorBaseParam monitorBaseParam = new MonitorBaseParam();
monitorBaseParam.setDeptId(param.getOrgId());
monitorBaseParam.setLineRunFlag(RunFlagEnum.RUNNING.getStatus());
List<String> list = commTerminalService.getRunMonitorByDept(monitorBaseParam);
if(CollUtil.isNotEmpty(list)) {
List<LineDetail> lineDetailList =lineDetailMapper.selectList(new LambdaQueryWrapper<LineDetail>().select(LineDetail::getLoadType, LineDetail::getId).in(LineDetail::getId, list));
Map<String,List<String>> map = lineDetailList.stream().collect(Collectors.groupingBy(LineDetail::getLoadType,Collectors.mapping(LineDetail::getId, Collectors.toList())));
map.forEach((k,v)->{
LoadTypeVO loadTypeVO = new LoadTypeVO();
loadTypeVO.setName(k);
loadTypeVO.setCount(v.size());
loadTypeVO.setLoadTypeList(v);
returnList.add(loadTypeVO);
});
}
return returnList;
}
private void getDevStatisticsData(List<GridDiagramVO.StatisticsData> statisticsData, List<GridDiagramVO.StatisticsData> gwStatisticsData, List<LineDevGetDTO> lineBaseList, List<String> voltageIds) { private void getDevStatisticsData(List<GridDiagramVO.StatisticsData> statisticsData, List<GridDiagramVO.StatisticsData> gwStatisticsData, List<LineDevGetDTO> lineBaseList, List<String> voltageIds) {
GridDiagramVO.StatisticsData data; GridDiagramVO.StatisticsData data;

View File

@@ -32,6 +32,8 @@ import com.njcn.system.pojo.po.Area;
import com.njcn.user.api.DeptFeignClient; import com.njcn.user.api.DeptFeignClient;
import com.njcn.web.utils.RequestUtil; import com.njcn.web.utils.RequestUtil;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import lombok.RequiredArgsConstructor;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils; import org.springframework.util.CollectionUtils;
@@ -48,7 +50,7 @@ import java.util.stream.Stream;
* @date 2021/7/19 * @date 2021/7/19
*/ */
@Service @Service
@AllArgsConstructor @RequiredArgsConstructor
public class TerminalTreeServiceImpl implements TerminalTreeService { public class TerminalTreeServiceImpl implements TerminalTreeService {
private final LineMapper lineMapper; private final LineMapper lineMapper;
@@ -67,6 +69,8 @@ public class TerminalTreeServiceImpl implements TerminalTreeService {
private final UserLedgerService userLedgerService; private final UserLedgerService userLedgerService;
@Value("${version.used:master}")
private String versionUsed;
/** /**
* 台账页面终端树 * 台账页面终端树
* *
@@ -126,16 +130,7 @@ public class TerminalTreeServiceImpl implements TerminalTreeService {
provinceList.forEach(province -> province.setChildren(getChildren(province, gdList))); provinceList.forEach(province -> province.setChildren(getChildren(province, gdList)));
projectList.forEach(project -> project.setChildren(getChildren(project, provinceList))); projectList.forEach(project -> project.setChildren(getChildren(project, provinceList)));
/* if (CollectionUtil.isNotEmpty(allList)) {
TerminalTree terminalTree = new TerminalTree();
terminalTree.setId("9999999");
terminalTree.setLevel(0);
terminalTree.setName("台账管理");
if (CollectionUtil.isNotEmpty(projectList)) {
terminalTree.setChildren(projectList);
}
taiZhang.add(terminalTree);
}*/
return projectList; return projectList;
} }
@@ -323,8 +318,6 @@ public class TerminalTreeServiceImpl implements TerminalTreeService {
}); });
temMap = temList.stream().collect(Collectors.groupingBy(TerminalTree::getPid)); temMap = temList.stream().collect(Collectors.groupingBy(TerminalTree::getPid));
} }
//处理变电站 //处理变电站
dealChildrenData(subList, otherLineList, temMap, true); dealChildrenData(subList, otherLineList, temMap, true);
@@ -332,11 +325,18 @@ public class TerminalTreeServiceImpl implements TerminalTreeService {
//Integer[] arr = {1}; //Integer[] arr = {1};
//subList.forEach(item->item.getChildren().forEach(it->it.setName((arr[0]++ +"_"+it.getName())))); //subList.forEach(item->item.getChildren().forEach(it->it.setName((arr[0]++ +"_"+it.getName()))));
//处理供电公司 //处理供电公司
dealChildrenData(gdList, subList, null, false);
if (deviceInfoParam.getStatisticalType().getCode().equalsIgnoreCase(StatisticsEnum.POWER_NETWORK.getCode())) { if (deviceInfoParam.getStatisticalType().getCode().equalsIgnoreCase(StatisticsEnum.POWER_NETWORK.getCode())) {
if("liaoning".equals(versionUsed)){
terminalTree.setChildren(subList);
}else {
dealChildrenData(gdList, subList, null, false);
terminalTree.setChildren(gdList); terminalTree.setChildren(gdList);
}
} else { } else {
dealChildrenData(gdList, subList, null, false);
//还需要额外处理省会 //还需要额外处理省会
dealChildrenData(proList, gdList, null, false); dealChildrenData(proList, gdList, null, false);
terminalTree.setChildren(proList); terminalTree.setChildren(proList);

View File

@@ -497,13 +497,13 @@ public class GeneralDeviceService {
} }
List<Line> lines = terminalBaseService.getLineById(lineIds); List<Line> lines = terminalBaseService.getLineById(lineIds);
for (SimpleDTO simpleDTO : scales) { for (SimpleDTO simpleDTO : scales) {
if(ObjectUtil.isNull(type)){ /* if(ObjectUtil.isNull(type)){
List<String> voltageScaleIds = terminalBaseService.getSubIdByScale(subIds, simpleDTO.getId()); List<String> voltageScaleIds = terminalBaseService.getSubIdByScale(subIds, simpleDTO.getId());
generalDeviceDTOS.add(assembleDataByLine(simpleDTO, lines, voltageScaleIds, LineBaseEnum.SUB_LEVEL.getCode())); generalDeviceDTOS.add(assembleDataByLine(simpleDTO, lines, voltageScaleIds, LineBaseEnum.SUB_LEVEL.getCode()));
}else{ }else{*/
List<String> voltageScaleIds = terminalBaseService.getVoltageIdByScale(subVIds, simpleDTO.getId()); List<String> voltageScaleIds = terminalBaseService.getVoltageIdByScale(subVIds, simpleDTO.getId());
generalDeviceDTOS.add(assembleDataByLine(simpleDTO, lines, voltageScaleIds, LineBaseEnum.SUB_V_LEVEL.getCode())); generalDeviceDTOS.add(assembleDataByLine(simpleDTO, lines, voltageScaleIds, LineBaseEnum.SUB_V_LEVEL.getCode()));
} // }
} }
return generalDeviceDTOS; return generalDeviceDTOS;
} }

View File

@@ -30,7 +30,10 @@ import com.njcn.harmonic.mapper.RStatLimitRateDMapper;
import com.njcn.harmonic.service.hebeinorth.IGridService; import com.njcn.harmonic.service.hebeinorth.IGridService;
import com.njcn.harmonic.util.ComAssesUtil; import com.njcn.harmonic.util.ComAssesUtil;
import com.njcn.harmonic.util.TimeUtil; import com.njcn.harmonic.util.TimeUtil;
import com.njcn.system.api.DicDataFeignClient;
import com.njcn.system.enums.DicDataEnum; 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.api.DeptFeignClient;
import com.njcn.user.pojo.dto.DeptDTO; import com.njcn.user.pojo.dto.DeptDTO;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
@@ -71,6 +74,7 @@ public class GridServiceImpl implements IGridService {
private final RStatLimitTargetDMapper rStatLimitTargetDMapper; private final RStatLimitTargetDMapper rStatLimitTargetDMapper;
private final GeneralDeviceInfoClient generalDeviceInfoClient; private final GeneralDeviceInfoClient generalDeviceInfoClient;
private final DeptFeignClient deptFeignClient; private final DeptFeignClient deptFeignClient;
private final DicDataFeignClient dicDataFeignClient;
@Override @Override
public AssessVo.AssessOverview getAssessOverview(AssessParam param) { public AssessVo.AssessOverview getAssessOverview(AssessParam param) {
@@ -328,8 +332,11 @@ public class GridServiceImpl implements IGridService {
deptGetLineParam.setDeptId(param.getDeptIndex()); deptGetLineParam.setDeptId(param.getDeptIndex());
deptGetLineParam.setLineRunFlag(0); deptGetLineParam.setLineRunFlag(0);
List<DeptGetChildrenMoreDTO> list = commTerminalGeneralClient.deptGetLine(deptGetLineParam).getData(); List<DeptGetChildrenMoreDTO> list = commTerminalGeneralClient.deptGetLine(deptGetLineParam).getData();
DictData dictData = dicDataFeignClient.getDicDataById(param.getVoltageLevel()).getData();
DictData standVoltageDic = dicDataFeignClient.getDicDataByNameAndTypeName(DicDataTypeEnum.DEV_VOLTAGE_STAND.getName(),dictData.getName()).getData();
//获取监测点集合 //获取监测点集合
Map<String, List<String>> lineMap = this.getLineMap(list, param.getIsUpToGrid(), param.getVoltageLevel()); Map<String, List<String>> lineMap = this.getLineMap(list, param.getIsUpToGrid(),standVoltageDic.getId());
List<String> lineList = lineMap.values().stream() List<String> lineList = lineMap.values().stream()
.flatMap(List::stream) .flatMap(List::stream)
.distinct() .distinct()

View File

@@ -65,6 +65,7 @@ import com.njcn.poi.excel.ExcelUtil;
import com.njcn.supervision.pojo.param.SensitiveUserParam; import com.njcn.supervision.pojo.param.SensitiveUserParam;
import com.njcn.supervision.pojo.param.user.UserReportParam; import com.njcn.supervision.pojo.param.user.UserReportParam;
import com.njcn.supervision.pojo.po.user.UserReportPO; import com.njcn.supervision.pojo.po.user.UserReportPO;
import com.njcn.supervision.pojo.vo.user.NewUserReportVO;
import com.njcn.supervision.pojo.vo.user.UserLedgerVO; import com.njcn.supervision.pojo.vo.user.UserLedgerVO;
import com.njcn.system.api.DicDataFeignClient; import com.njcn.system.api.DicDataFeignClient;
import com.njcn.system.enums.DicDataEnum; import com.njcn.system.enums.DicDataEnum;
@@ -711,11 +712,23 @@ public class PollutionSubstationServiceImpl extends ServiceImpl<RStatPollutionSu
paramDTO.setLineList(monitorIds); paramDTO.setLineList(monitorIds);
List<PollutionLineDTO> monitorList = lineFeignClient.getLineInfo(paramDTO).getData(); List<PollutionLineDTO> monitorList = lineFeignClient.getLineInfo(paramDTO).getData();
Map<String, PollutionLineDTO> monitorMap = monitorList.stream().collect(Collectors.toMap(PollutionLineDTO::getId, Function.identity())); Map<String, PollutionLineDTO> monitorMap = monitorList.stream().collect(Collectors.toMap(PollutionLineDTO::getId, Function.identity()));
List<String> objIds = monitorList.stream().map(PollutionLineDTO::getObjId).distinct().collect(Collectors.toList());
Map<String, String> objMap = new HashMap<>();
if(CollUtil.isNotEmpty(objIds)){
List<NewUserReportVO> userReportVOList = userLedgerFeignClient.getUserReportByIds(objIds).getData();
objMap = userReportVOList.stream().collect(Collectors.toMap(NewUserReportVO::getId, NewUserReportVO::getProjectName));
}
Map<String, String> finalObjMap = objMap;
list = result.stream().map(it -> { list = result.stream().map(it -> {
PollutionLineDTO pollutionLineDTO = new PollutionLineDTO(); PollutionLineDTO pollutionLineDTO = new PollutionLineDTO();
pollutionLineDTO.setData(NumberUtil.round(it.getData(), 2).doubleValue()); pollutionLineDTO.setData(NumberUtil.round(it.getData(), 2).doubleValue());
PollutionLineDTO monitor = monitorMap.get(it.getId()); PollutionLineDTO monitor = monitorMap.get(it.getId());
if(StrUtil.isNotBlank(monitor.getObjId())){
String objName = finalObjMap.get(monitor.getObjId());
pollutionLineDTO.setName(objName + "_" + monitor.getName());
}else {
pollutionLineDTO.setName(monitor.getSubstation() + "_" + monitor.getName()); pollutionLineDTO.setName(monitor.getSubstation() + "_" + monitor.getName());
}
return pollutionLineDTO; return pollutionLineDTO;
}).sorted(Comparator.comparing(PollutionLineDTO::getData, Comparator.reverseOrder())).collect(Collectors.toList()); }).sorted(Comparator.comparing(PollutionLineDTO::getData, Comparator.reverseOrder())).collect(Collectors.toList());
} }

View File

@@ -66,7 +66,8 @@ public class THDistortionServiceImpl implements THDistortionService {
List<THDistortionVO> thDistortionVOS = new ArrayList<>(); List<THDistortionVO> thDistortionVOS = new ArrayList<>();
//按照条件获取实际运行终端综合信息 //按照条件获取实际运行终端综合信息
List<GeneralDeviceDTO> deviceList = generalDeviceInfoClient.getPracticalRunDeviceInfo(new DeviceInfoParam(thDistortionParam.getStatisticalType(), thDistortionParam.getDeptIndex(), generalInfo.getMicroServiceName(), thDistortionParam.getScale(), thDistortionParam.getManufacturer(), thDistortionParam.getLoadType())).getData(); DeviceInfoParam deviceInfoParam = new DeviceInfoParam(thDistortionParam.getStatisticalType(), thDistortionParam.getDeptIndex(), generalInfo.getMicroServiceName(), thDistortionParam.getScale(), thDistortionParam.getManufacturer(), thDistortionParam.getLoadType());
List<GeneralDeviceDTO> deviceList = generalDeviceInfoClient.getPracticalRunDeviceInfo(deviceInfoParam).getData();
Map<String, UserLedgerVO> userLedgerVOMap = new HashMap<>(); Map<String, UserLedgerVO> userLedgerVOMap = new HashMap<>();
if (thDistortionParam.isUserLedger()) { if (thDistortionParam.isUserLedger()) {
List<UserLedgerVO> userLedgerVOList = userLedgerFeignClient.selectUserList(new UserReportParam()).getData(); List<UserLedgerVO> userLedgerVOList = userLedgerFeignClient.selectUserList(new UserReportParam()).getData();