1.台账查询bug提交

2.污区图代码更新
This commit is contained in:
wurui
2023-03-06 11:40:04 +08:00
parent 779b95d6b5
commit f3f04ae66e
4 changed files with 113 additions and 98 deletions

View File

@@ -5,7 +5,7 @@
<select id="getIdByOrgId" resultType="com.njcn.device.pms.pojo.dto.PmsMonitorBaseDTO">
SELECT
t.Operation_Id operationId,t.Power_Station_Id powerrId,t.Line_Id lineId,t.id monitorId
t.Operation_Id operationId,t.Power_Station_Id powerrId,t.Line_Id lineId,t.id monitorId,b.Terminal_Id terminalId
FROM
(
( SELECT id, Operation_Id, Power_Station_Id, Line_Id FROM pms_power_client WHERE org_id IN

View File

@@ -146,6 +146,7 @@ public class PmsGeneralDeviceServiceImpl implements IPmsGeneralDeviceService {
//获取monitor详细数据
List<PmsMonitorBaseDTO> monitorList = iDistributionMonitorService.getMonitorByCondition(deptIdList,pmsDeviceInfoParam);
pmsGeneralDeviceDTO.setPowerrIdList(monitorList.stream().map(PmsMonitorBaseDTO::getPowerrId).distinct().collect(Collectors.toList()));
pmsGeneralDeviceDTO.setTerminalIdList(monitorList.stream().map(PmsMonitorBaseDTO::getTerminalId).distinct().collect(Collectors.toList()));
pmsGeneralDeviceDTO.setLineIdList(monitorList.stream().map(PmsMonitorBaseDTO::getLineId).distinct().collect(Collectors.toList()));
pmsGeneralDeviceDTO.setMonitorIdList(monitorList.stream().map(PmsMonitorBaseDTO::getMonitorId).distinct().collect(Collectors.toList()));
return pmsGeneralDeviceDTO;

View File

@@ -4,16 +4,13 @@ import cn.hutool.core.collection.CollectionUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.njcn.common.pojo.dto.SimpleDTO;
import com.njcn.common.pojo.enums.common.DataStateEnum;
import com.njcn.device.pms.api.PmsGeneralDeviceInfoClient;
import com.njcn.device.pms.mapper.majornetwork.MonitorMapper;
import com.njcn.device.pms.pojo.dto.PmsGeneralDeviceDTO;
import com.njcn.device.pms.pojo.dto.PwPmsMonitorDTO;
import com.njcn.device.pms.pojo.param.PmsDeviceInfoParam;
import com.njcn.device.pms.pojo.param.PmsSummaryStatisticsParam;
import com.njcn.device.pms.pojo.param.PwPmsMonitorParam;
import com.njcn.device.pms.pojo.po.Monitor;
import com.njcn.device.pms.pojo.vo.PmsSummaryStatisticsVO;
import com.njcn.device.pms.service.distribution.IPwMonitorService;
import com.njcn.device.pms.service.majornetwork.IPmsGeneralDeviceService;
import com.njcn.device.pms.service.majornetwork.PmsSummaryStatisticsService;
import com.njcn.user.api.DeptFeignClient;
import com.njcn.user.pojo.dto.DeptDTO;
@@ -37,8 +34,8 @@ public class PmsSummaryStatisticsServiceImpl implements PmsSummaryStatisticsServ
private final DeptFeignClient deptFeignClient;
private final MonitorMapper monitorMapper;
private final IPwMonitorService iPwMonitorService;
private final PmsGeneralDeviceInfoClient pmsGeneralDeviceInfoClient;
private final IPmsGeneralDeviceService generalPmsDeviceService;;
@Override
public List<PmsSummaryStatisticsVO.SummaryVO> getSeparate(PmsSummaryStatisticsParam param) {
@@ -49,7 +46,7 @@ public class PmsSummaryStatisticsServiceImpl implements PmsSummaryStatisticsServ
PmsDeviceInfoParam pmsDeviceInfoParam = new PmsDeviceInfoParam();
pmsDeviceInfoParam.setDeptIndex(param.getOrgId());
pmsDeviceInfoParam.setStatisticalType(new SimpleDTO());
List<PmsGeneralDeviceDTO> deptData = pmsGeneralDeviceInfoClient.getPmsDeviceInfoWithInOrg(pmsDeviceInfoParam).getData();
List<PmsGeneralDeviceDTO> deptData = generalPmsDeviceService.getPmsDeviceInfoWithInOrg(pmsDeviceInfoParam);
deptData.forEach(item -> {
PmsSummaryStatisticsVO.SummaryVO vo = new PmsSummaryStatisticsVO.SummaryVO();
vo.setName(item.getName());
@@ -59,7 +56,7 @@ public class PmsSummaryStatisticsServiceImpl implements PmsSummaryStatisticsServ
});
} else {
//获取当前部门下的子部门
List<DeptDTO> data = deptFeignClient.getDepSonDetailByDeptId(param.getOrgId()).getData();
List<DeptDTO> data = deptFeignClient.getDeptDescendantIndexes(param.getOrgId(), WebUtil.filterDeptType()).getData();
List<String> deptIds = data.stream().map(DeptDTO::getCode).collect(Collectors.toList());
@@ -190,41 +187,18 @@ public class PmsSummaryStatisticsServiceImpl implements PmsSummaryStatisticsServ
public List<PmsSummaryStatisticsVO.SummaryVO> getDistributionPoint(PmsSummaryStatisticsParam.PwSummaryStatisticsParam param) {
List<PmsSummaryStatisticsVO.SummaryVO> vos = new ArrayList<>();
PwPmsMonitorParam pwParam = new PwPmsMonitorParam();
pwParam.setOrgId(param.getOrgId());
List<PwPmsMonitorDTO> pwSubsetMonitorList = iPwMonitorService.getPwSubsetMonitorList(pwParam);
//获取配网监测点,统计配网有多少监测点
Map<String, List<PwPmsMonitorDTO>> pwMonitor = pwSubsetMonitorList.stream().collect(Collectors.groupingBy(PwPmsMonitorDTO::getOrgId));
//获取当前部门下的子部门
List<DeptDTO> data = deptFeignClient.getDepSonDetailByDeptId(param.getOrgId()).getData();
Map<String, String> deptMap = data.stream().collect(Collectors.toMap(DeptDTO::getCode, DeptDTO::getName));
ArrayList<PwPmsMonitorDTO> monitorsCounts = pwSubsetMonitorList.stream().collect(Collectors.collectingAndThen
(Collectors.toCollection(() ->
new TreeSet<>(Comparator.comparing(o -> o.getOrgId() + ";" + o.getTerminalId()))), ArrayList::new));
//根据部门统计有多少终端(终端数量)
Map<String, Long> monitorsTerminalCount = monitorsCounts.stream()
.collect(Collectors.groupingBy(PwPmsMonitorDTO::getOrgId, Collectors.counting()));
deptMap.forEach((key, value) -> {
PmsDeviceInfoParam pmsDeviceInfoParam = new PmsDeviceInfoParam();
pmsDeviceInfoParam.setDeptIndex(param.getOrgId());
pmsDeviceInfoParam.setStatisticalType(new SimpleDTO());
List<PmsGeneralDeviceDTO> deptData = generalPmsDeviceService.getPmsDeviceInfoByOrgId(pmsDeviceInfoParam);
deptData.forEach(item -> {
PmsSummaryStatisticsVO.SummaryVO vo = new PmsSummaryStatisticsVO.SummaryVO();
if (pwMonitor.containsKey(key)) {
vo.setName(value);
vo.setMonitorCount(pwMonitor.get(key).size());
vo.setTerminalCount(Math.toIntExact(monitorsTerminalCount.get(key)));
} else {
vo.setName(value);
//监测点数量
vo.setMonitorCount(0);
//设备数量
vo.setTerminalCount(0);
}
vo.setName(item.getName());
vo.setMonitorCount(item.getMonitorIdList().size());
vo.setTerminalCount(item.getTerminalIdList().size());
vos.add(vo);
});
return vos;
}