diff --git a/pqs-device/pms-device/pms-device-api/src/main/java/com/njcn/device/pms/pojo/param/TerminalQueryParam.java b/pqs-device/pms-device/pms-device-api/src/main/java/com/njcn/device/pms/pojo/param/TerminalQueryParam.java index 08ac8ecbe..05827817b 100644 --- a/pqs-device/pms-device/pms-device-api/src/main/java/com/njcn/device/pms/pojo/param/TerminalQueryParam.java +++ b/pqs-device/pms-device/pms-device-api/src/main/java/com/njcn/device/pms/pojo/param/TerminalQueryParam.java @@ -32,6 +32,8 @@ public class TerminalQueryParam extends BaseParam { @ApiModelProperty(value = "监测对象类型") private String objType; + private List objTypeList; + @ApiModelProperty(value = "是否上送国网监测点") private Integer isUpToGrid; diff --git a/pqs-device/pms-device/pms-device-boot/src/main/java/com/njcn/device/pms/controller/gwPush/MonitorStatisticsController.java b/pqs-device/pms-device/pms-device-boot/src/main/java/com/njcn/device/pms/controller/gwPush/MonitorStatisticsController.java index 636184f02..b0fe35683 100644 --- a/pqs-device/pms-device/pms-device-boot/src/main/java/com/njcn/device/pms/controller/gwPush/MonitorStatisticsController.java +++ b/pqs-device/pms-device/pms-device-boot/src/main/java/com/njcn/device/pms/controller/gwPush/MonitorStatisticsController.java @@ -35,6 +35,15 @@ public class MonitorStatisticsController extends BaseController { return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, gwMonitorStatistics, methodDescribe); } + @PostMapping("/objTypeStatis") + @OperateInfo(info = LogEnum.BUSINESS_COMMON) + @ApiOperation("查询主网用户分类") + public HttpResult< List>> objTypeStatis(String deptId){ + String methodDescribe = getMethodDescribe("objTypeStatis"); + List> gwMonitorStatistics = monitorStatisticsService.objTypeStatistic(deptId); + return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, gwMonitorStatistics, methodDescribe); + } + @PostMapping("/energy") @OperateInfo(info = LogEnum.BUSINESS_COMMON) @ApiOperation("新能源场站监测率") diff --git a/pqs-device/pms-device/pms-device-boot/src/main/java/com/njcn/device/pms/controller/ledgerManger/PmsMonitorController.java b/pqs-device/pms-device/pms-device-boot/src/main/java/com/njcn/device/pms/controller/ledgerManger/PmsMonitorController.java index c9f8390da..18ffb7bf0 100644 --- a/pqs-device/pms-device/pms-device-boot/src/main/java/com/njcn/device/pms/controller/ledgerManger/PmsMonitorController.java +++ b/pqs-device/pms-device/pms-device-boot/src/main/java/com/njcn/device/pms/controller/ledgerManger/PmsMonitorController.java @@ -121,6 +121,22 @@ public class PmsMonitorController extends BaseController { return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, monitor, methodDescribe); } + + /** + * 分页获取所有主网用户台账 + * @author cdf + * @date 2022/11/25 + */ + @OperateInfo(info = LogEnum.BUSINESS_COMMON) + @PostMapping("/getAllMainUserPageList") + @ApiOperation("分页获取所有主网用户台账") + @ApiImplicitParam(name = "baseParam",required = true) + public HttpResult> getAllMainUserPageList(@RequestBody TerminalQueryParam baseParam) { + String methodDescribe = getMethodDescribe("getAllMainUserPageList"); + Page monitor= monitorService.getAllMainUserPageList(baseParam); + return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, monitor, methodDescribe); + } + /** * 获取所有主网监测点 * @author cdf diff --git a/pqs-device/pms-device/pms-device-boot/src/main/java/com/njcn/device/pms/mapper/majornetwork/MonitorMapper.java b/pqs-device/pms-device/pms-device-boot/src/main/java/com/njcn/device/pms/mapper/majornetwork/MonitorMapper.java index f47945c0c..4aa3e4d6e 100644 --- a/pqs-device/pms-device/pms-device-boot/src/main/java/com/njcn/device/pms/mapper/majornetwork/MonitorMapper.java +++ b/pqs-device/pms-device/pms-device-boot/src/main/java/com/njcn/device/pms/mapper/majornetwork/MonitorMapper.java @@ -1,16 +1,14 @@ package com.njcn.device.pms.mapper.majornetwork; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.njcn.common.pojo.dto.SimpleDTO; import com.njcn.common.pojo.param.StatisticsBizBaseParam; import com.njcn.device.biz.pojo.dto.LineDTO; import com.njcn.device.pms.pojo.dto.PmsMonitorBaseDTO; 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.PmsMonitorParam; -import com.njcn.device.pms.pojo.param.PwPmsMonitorParam; +import com.njcn.device.pms.pojo.param.*; import com.njcn.device.pms.pojo.po.Monitor; import com.njcn.device.pms.pojo.vo.MonitorVO; import org.apache.ibatis.annotations.Param; @@ -108,4 +106,13 @@ public interface MonitorMapper extends BaseMapper { List selectMonitorAndNewEnergy(@Param("orgIds")List orgIds, @Param("objIds")List objIds); + + + /** + * 分页获取用户对象 + */ + Page getAllObjUser(@Param("page") Page page, @Param("baseParam")TerminalQueryParam baseParam); + + List getAllObjUser(@Param("baseParam")TerminalQueryParam baseParam); + } diff --git a/pqs-device/pms-device/pms-device-boot/src/main/java/com/njcn/device/pms/mapper/majornetwork/mapping/MonitorMapper.xml b/pqs-device/pms-device/pms-device-boot/src/main/java/com/njcn/device/pms/mapper/majornetwork/mapping/MonitorMapper.xml index 59a128e77..801355e20 100644 --- a/pqs-device/pms-device/pms-device-boot/src/main/java/com/njcn/device/pms/mapper/majornetwork/mapping/MonitorMapper.xml +++ b/pqs-device/pms-device/pms-device-boot/src/main/java/com/njcn/device/pms/mapper/majornetwork/mapping/MonitorMapper.xml @@ -259,4 +259,42 @@ + + + diff --git a/pqs-device/pms-device/pms-device-boot/src/main/java/com/njcn/device/pms/service/gwPush/MonitorStatisticsService.java b/pqs-device/pms-device/pms-device-boot/src/main/java/com/njcn/device/pms/service/gwPush/MonitorStatisticsService.java index f1975b652..b7881da69 100644 --- a/pqs-device/pms-device/pms-device-boot/src/main/java/com/njcn/device/pms/service/gwPush/MonitorStatisticsService.java +++ b/pqs-device/pms-device/pms-device-boot/src/main/java/com/njcn/device/pms/service/gwPush/MonitorStatisticsService.java @@ -21,6 +21,14 @@ public interface MonitorStatisticsService { */ List> getGwMonitorStatistics(String deptId,Integer up); + + /** + * @Description: 国网上送统计类型数量统计 + * @Author: wr + * @Date: 2024/3/22 9:49 + */ + List> objTypeStatistic(String deptId); + /** * @Description: 国网上送新能源场站统计 * @Author: wr diff --git a/pqs-device/pms-device/pms-device-boot/src/main/java/com/njcn/device/pms/service/gwPush/impl/MonitorStatisticsServiceImpl.java b/pqs-device/pms-device/pms-device-boot/src/main/java/com/njcn/device/pms/service/gwPush/impl/MonitorStatisticsServiceImpl.java index 4d5669937..2e037df38 100644 --- a/pqs-device/pms-device/pms-device-boot/src/main/java/com/njcn/device/pms/service/gwPush/impl/MonitorStatisticsServiceImpl.java +++ b/pqs-device/pms-device/pms-device-boot/src/main/java/com/njcn/device/pms/service/gwPush/impl/MonitorStatisticsServiceImpl.java @@ -15,6 +15,7 @@ import com.njcn.device.pms.mapper.majornetwork.MonitorMapper; import com.njcn.device.pms.mapper.majornetwork.PmsGeneratrixWireMapper; import com.njcn.device.pms.mapper.majornetwork.RStatIntegrityDMapper; import com.njcn.device.pms.mapper.majornetwork.StatationStatMapper; +import com.njcn.device.pms.pojo.param.TerminalQueryParam; import com.njcn.device.pms.pojo.param.gw.GwStatisticalParam; import com.njcn.device.pms.pojo.param.gw.GwTerminalParam; import com.njcn.device.pms.pojo.po.*; @@ -129,6 +130,54 @@ public class MonitorStatisticsServiceImpl implements MonitorStatisticsService { return info; } + @Override + public List> objTypeStatistic(String deptId) { + List> info = new ArrayList<>(); + //查询所有一级树字典 + List sysDicTreePOList = dictTreeFeignClient.queryAll().getData(); + + //监测点大类 + List broadCategory = sysDicTreePOList.stream() + .filter(item -> Objects.equals(item.getPid(), "0")) + .filter(item -> !Objects.equals(item.getCode(), DicDataTypeEnum.DEVICE_UNIT.getCode())) + .collect(Collectors.toList()); + broadCategory.sort(Comparator.comparing(SysDicTreePO::getSort)); + + List list = new ArrayList<>(); + list.add("单位"); + List collect = broadCategory.stream().map(SysDicTreePO::getName).collect(Collectors.toList()); + list.addAll(collect); + list.add("合计"); + //获取主网监测统计 + Map> metWorkMap = mapDicIds(broadCategory, sysDicTreePOList); + info.add(list); + + TerminalQueryParam baseParam = new TerminalQueryParam(); + List monitorList = monitorMapper.getAllObjUser(baseParam); + //筛选出国网统计信息 + DeptGetLineParam deptGetLineParam = new DeptGetLineParam(); + deptGetLineParam.setDeptId(deptId); + deptGetLineParam.setMonitorStateRunning(false); + deptGetLineParam.setSystemType(0); + List deptGetChildrenMoreDTOS = commTerminalService.getDeptChildrenByParent(deptGetLineParam); + //部门信息循环 + for (DeptGetBase dept : deptGetChildrenMoreDTOS) { + List line = new ArrayList<>(); + line.add(dept.getUnitName()); + List deptIds = dept.getUnitChildrenList(); + if (CollUtil.isEmpty(deptIds)) { + continue; + } + List temList = monitorList.stream().filter(it->deptIds.contains(it.getOrgId())).collect(Collectors.toList()); + metWorkMap.forEach((k,v)->{ + long count = temList.stream().filter(i->v.contains(i.getObjType())).count(); + line.add(String.valueOf(count)); + }); + info.add(line); + } + return info; + } + @Override public List getGwMonitorEnergy(String deptId) { List data = dicDataFeignClient.getDicDataByTypeCode(DicDataTypeEnum.DEV_VOLTAGE.getCode()).getData(); diff --git a/pqs-device/pms-device/pms-device-boot/src/main/java/com/njcn/device/pms/service/majornetwork/IMonitorService.java b/pqs-device/pms-device/pms-device-boot/src/main/java/com/njcn/device/pms/service/majornetwork/IMonitorService.java index 95c692c54..c91cd92ae 100644 --- a/pqs-device/pms-device/pms-device-boot/src/main/java/com/njcn/device/pms/service/majornetwork/IMonitorService.java +++ b/pqs-device/pms-device/pms-device-boot/src/main/java/com/njcn/device/pms/service/majornetwork/IMonitorService.java @@ -87,6 +87,9 @@ public interface IMonitorService extends IService { Page getAllMonitorPageList(TerminalQueryParam baseParam); + Page getAllMainUserPageList(TerminalQueryParam baseParam); + + List getMonitorList(List monitorIds); List getMonitorListByMid(List midIds); diff --git a/pqs-device/pms-device/pms-device-boot/src/main/java/com/njcn/device/pms/service/majornetwork/impl/MonitorServiceImpl.java b/pqs-device/pms-device/pms-device-boot/src/main/java/com/njcn/device/pms/service/majornetwork/impl/MonitorServiceImpl.java index bea4fcc85..881101bc9 100644 --- a/pqs-device/pms-device/pms-device-boot/src/main/java/com/njcn/device/pms/service/majornetwork/impl/MonitorServiceImpl.java +++ b/pqs-device/pms-device/pms-device-boot/src/main/java/com/njcn/device/pms/service/majornetwork/impl/MonitorServiceImpl.java @@ -287,6 +287,42 @@ public class MonitorServiceImpl extends ServiceImpl impl return page; } + + @Override + public Page getAllMainUserPageList(TerminalQueryParam baseParam) { + + + List objTypeIds = new ArrayList<>(); + if(StrUtil.isNotBlank(baseParam.getObjType())){ + if(baseParam.getObjType().equals("987654321")){ + //特殊处理 + List sysDicTreePOList = dictTreeFeignClient.queryAll().getData(); + + List typicDic =sysDicTreePOList.stream().filter(item->Objects.equals(DicTreeEnum.Power_Station.getCode(),item.getCode())||Objects.equals(DicTreeEnum.Ele_Railways.getCode(),item.getCode())|| + Objects.equals(DicTreeEnum.Wind_Farms.getCode(),item.getCode())||Objects.equals(DicTreeEnum.Imp_Users.getCode(),item.getCode())).collect(Collectors.toList()); + + for(SysDicTreePO sysDicTreePO : typicDic){ + List temList = dictTreeFeignClient.query(sysDicTreePO.getId()).getData(); + List ids = temList.stream().map(DictTreeVO::getId).collect(Collectors.toList()); + objTypeIds.addAll(ids); + objTypeIds.add(sysDicTreePO.getId()); + } + }else { + SysDicTreePO sysDicTreePO = dictTreeFeignClient.queryById(baseParam.getObjType()).getData(); + if(sysDicTreePO.getPid().equals("0")){ + List temList = dictTreeFeignClient.query(sysDicTreePO.getId()).getData(); + List ids = temList.stream().map(DictTreeVO::getId).collect(Collectors.toList()); + objTypeIds.addAll(ids); + } + objTypeIds.add(sysDicTreePO.getId()); + } + baseParam.setObjTypeList(objTypeIds); + } + Page page = this.baseMapper.getAllObjUser(new Page<>(baseParam.getPageNum(), baseParam.getPageSize()),baseParam); + return page; + } + + @Override public List getMonitorList(List monitorIds) { List monitorList = new ArrayList<>(); diff --git a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/specialanalysis/impl/RMpWpPowerDetailMServiceImpl.java b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/specialanalysis/impl/RMpWpPowerDetailMServiceImpl.java index 7910039fb..b57d8164f 100644 --- a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/specialanalysis/impl/RMpWpPowerDetailMServiceImpl.java +++ b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/specialanalysis/impl/RMpWpPowerDetailMServiceImpl.java @@ -56,13 +56,12 @@ public class RMpWpPowerDetailMServiceImpl extends ServiceImpl getWindFarmDetailInfo(PowerQualityParam.PowerQualityInfoParam param) { //获取部门id集合 - List deptDTOS = deptFeignClient.getDepSonDetailByDeptId(param.getId()).getData(); - List deptIds = deptDTOS.stream().map(DeptDTO::getCode).collect(Collectors.toList()); + List codeIds = deptFeignClient.getDepSonSelfCodetByDeptId(param.getId()).getData(); //根据条件查询单位下面的所有配网监测点 PmsMonitorParam pmsMonitorParam = new PmsMonitorParam(); //单位id - pmsMonitorParam.setOrgIds(deptIds); + pmsMonitorParam.setOrgIds(codeIds); pmsMonitorParam.setMonitorTag(param.getMonitorTag()); pmsMonitorParam.setIsSpecialMonitor(1);