diff --git a/pqs-device/common-device-biz/src/main/java/com/njcn/device/biz/commApi/CommTerminalGeneralClient.java b/pqs-device/common-device-biz/src/main/java/com/njcn/device/biz/commApi/CommTerminalGeneralClient.java index b051c2ee4..0528311bf 100644 --- a/pqs-device/common-device-biz/src/main/java/com/njcn/device/biz/commApi/CommTerminalGeneralClient.java +++ b/pqs-device/common-device-biz/src/main/java/com/njcn/device/biz/commApi/CommTerminalGeneralClient.java @@ -51,6 +51,10 @@ public interface CommTerminalGeneralClient { @PostMapping("deptGetLine") HttpResult> deptGetLine(@RequestBody @Validated DeptGetLineParam deptGetLineParam); + @PostMapping("deptGetLineInfo") + HttpResult> deptGetLineInfo(@RequestBody @Validated DeptGetLineParam deptGetLineParam); + + @PostMapping("deptGetAllLine") HttpResult> deptGetAllLine(@RequestBody @Validated DeptGetLineParam deptGetLineParam); diff --git a/pqs-device/common-device-biz/src/main/java/com/njcn/device/biz/commApi/fallback/CommTerminalGeneralClientFallbackFactory.java b/pqs-device/common-device-biz/src/main/java/com/njcn/device/biz/commApi/fallback/CommTerminalGeneralClientFallbackFactory.java index 32cbf11b6..c25e4342e 100644 --- a/pqs-device/common-device-biz/src/main/java/com/njcn/device/biz/commApi/fallback/CommTerminalGeneralClientFallbackFactory.java +++ b/pqs-device/common-device-biz/src/main/java/com/njcn/device/biz/commApi/fallback/CommTerminalGeneralClientFallbackFactory.java @@ -15,6 +15,7 @@ import com.njcn.device.biz.utils.DeviceEnumUtil; import feign.hystrix.FallbackFactory; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Component; +import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.RequestBody; import java.util.List; @@ -50,6 +51,13 @@ public class CommTerminalGeneralClientFallbackFactory implements FallbackFactory throw new BusinessException(finalExceptionEnum); } + + @Override + public HttpResult> deptGetLineInfo(DeptGetLineParam deptGetLineParam) { + log.error("{}异常,降级处理,异常为:{}", "根据部门获取监测点信息", throwable.toString()); + throw new BusinessException(finalExceptionEnum); + } + @Override public HttpResult> deptGetAllLine(DeptGetLineParam deptGetLineParam) { log.error("{}异常,降级处理,异常为:{}", "根据单位获取all监测点信息", throwable.toString()); diff --git a/pqs-device/common-device-biz/src/main/java/com/njcn/device/biz/pojo/dto/MonitorCommLedgerInfoDTO.java b/pqs-device/common-device-biz/src/main/java/com/njcn/device/biz/pojo/dto/MonitorCommLedgerInfoDTO.java new file mode 100644 index 000000000..b1eddca0a --- /dev/null +++ b/pqs-device/common-device-biz/src/main/java/com/njcn/device/biz/pojo/dto/MonitorCommLedgerInfoDTO.java @@ -0,0 +1,40 @@ +package com.njcn.device.biz.pojo.dto; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @Author: cdf + * @CreateTime: 2026-01-06 + * @Description: + */ +@Data +public class MonitorCommLedgerInfoDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + + private String monitorId; + + private String monitorName; + + private String gdName; + + private String bdName; + + private String busBarName; + + private String voltageLevel; + + private String shortCapacity; + + private String devCapacity; + + private String dealCapacity; + + private String standardCapacity; + + private Integer timeInterval; + +} diff --git a/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/enums/LineBaseEnum.java b/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/enums/LineBaseEnum.java index 111c6ec23..875f6a51f 100644 --- a/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/enums/LineBaseEnum.java +++ b/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/enums/LineBaseEnum.java @@ -42,6 +42,13 @@ public enum LineBaseEnum { POWER_FLAG_NOT(1,"非电网侧"), + /** + * 装置系统类型 + */ + DEV_DATA_TYPE_ZT(0,"暂态系统装置"), + DEV_DATA_TYPE_WT(1,"稳态系统装置"), + DEV_DATA_TYPE_ALL(2,"全部系统装置") + ; diff --git a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/controller/CommTerminalController.java b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/controller/CommTerminalController.java index 7ef8ce03e..9d8799810 100644 --- a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/controller/CommTerminalController.java +++ b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/controller/CommTerminalController.java @@ -15,6 +15,7 @@ import com.njcn.device.biz.pojo.po.PqsDeviceUnit; import com.njcn.device.line.mapper.LineMapper; import com.njcn.device.line.service.LineService; import com.njcn.device.line.mapper.LineDetailMapper; +import com.njcn.device.biz.pojo.dto.MonitorCommLedgerInfoDTO; import com.njcn.device.pq.service.CommTerminalService; import com.njcn.device.pq.service.IPqsDeviceUnitService; import com.njcn.web.controller.BaseController; @@ -108,6 +109,23 @@ public class CommTerminalController extends BaseController { return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, result, methodDescribe); } + + /** + * 根据部门id获取部门监测点台账信息 + * @param deptGetLineParam + * @return + */ + @PostMapping("deptGetLineInfo") + @ApiOperation("根据部门id获取部门监测点台账信息") + @OperateInfo(info = LogEnum.BUSINESS_COMMON) + @ApiImplicitParam(name = "deptGetLineParam", value = "请求体", required = true) + public HttpResult> deptGetLineInfo(@RequestBody @Validated DeptGetLineParam deptGetLineParam) { + String methodDescribe = getMethodDescribe("deptGetLineInfo"); + List result = commTerminalService.deptGetLineInfo(deptGetLineParam); + return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, result, methodDescribe); + } + + @PostMapping("deptGetAllLine") @ApiOperation("根据单位获取监测点信息(all line)") @OperateInfo(info = LogEnum.BUSINESS_COMMON) diff --git a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/CommTerminalService.java b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/CommTerminalService.java index dbd61c3a0..64e4b7935 100644 --- a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/CommTerminalService.java +++ b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/CommTerminalService.java @@ -3,8 +3,8 @@ package com.njcn.device.pq.service; import com.njcn.device.biz.pojo.dto.*; import com.njcn.device.biz.pojo.param.DeptGetLineParam; import com.njcn.device.biz.pojo.param.SubstationParam; +import com.njcn.device.biz.pojo.dto.MonitorCommLedgerInfoDTO; import com.njcn.device.pq.pojo.param.dataClean.MonitorBaseParam; -import org.springframework.web.bind.annotation.RequestParam; import java.util.List; import java.util.Map; @@ -40,6 +40,9 @@ public interface CommTerminalService { */ List deptGetLine(DeptGetLineParam deptGetLineParam); + + List deptGetLineInfo(DeptGetLineParam deptGetLineParam); + List deptGetAllLine(DeptGetLineParam deptGetLineParam); List deptGetLineByIdList(List monitorIds); diff --git a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/impl/CommTerminalServiceImpl.java b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/impl/CommTerminalServiceImpl.java index 3781700f7..7678ee6a7 100644 --- a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/impl/CommTerminalServiceImpl.java +++ b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/impl/CommTerminalServiceImpl.java @@ -11,9 +11,10 @@ import com.njcn.common.utils.EnumUtils; import com.njcn.device.biz.pojo.dto.*; import com.njcn.device.biz.pojo.param.DeptGetLineParam; import com.njcn.device.biz.pojo.param.SubstationParam; +import com.njcn.device.line.mapper.DeptLineMapper; import com.njcn.device.line.mapper.LineMapper; import com.njcn.device.line.service.DeptLineService; -import com.njcn.device.pq.enums.RunFlagEnum; +import com.njcn.device.biz.pojo.dto.MonitorCommLedgerInfoDTO; import com.njcn.device.pq.pojo.param.dataClean.MonitorBaseParam; import com.njcn.device.pq.service.CommTerminalService; import com.njcn.redis.utils.RedisUtil; @@ -28,6 +29,8 @@ import java.util.*; import java.util.stream.Collectors; import java.util.stream.Stream; +import static com.njcn.device.pq.enums.LineBaseEnum.DEV_DATA_TYPE_ALL; + /** * pqs * @@ -49,6 +52,7 @@ public class CommTerminalServiceImpl implements CommTerminalService { private final RedisUtil redisUtil; private final LineMapper lineMapper; + private final DeptLineMapper deptLineMapper; /** @@ -59,10 +63,6 @@ public class CommTerminalServiceImpl implements CommTerminalService { */ @Override public List getDeptChildrenByParent(DeptGetLineParam deptGetLineParam) { - /*List redisResult = (List) redisUtil.getObjectByKey(commTerminal + deptGetLineParam.getDeptId()); - if (CollectionUtil.isNotEmpty(redisResult)) { - return redisResult; - }*/ List result = new ArrayList<>(); List deptDTOList = deptFeignClient.getDeptDescendantIndexes(deptGetLineParam.getDeptId(), Stream.of(0, 1).collect(Collectors.toList())).getData(); deptDTOList.forEach(it -> { @@ -119,6 +119,13 @@ public class CommTerminalServiceImpl implements CommTerminalService { return result; } + @Override + public List deptGetLineInfo(DeptGetLineParam deptGetLineParam) { + List deptIds = deptFeignClient.getDepSonIdtByDeptId(deptGetLineParam.getDeptId()).getData(); + List ledgerList = deptLineMapper.getMonitorByDeptIds(Stream.of(DEV_DATA_TYPE_ALL.getCode()).collect(Collectors.toList()),deptIds); + return ledgerList; + } + @Override public List deptGetAllLine(DeptGetLineParam deptGetLineParam) { List result = new ArrayList<>(); diff --git a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/impl/PqDataVerifyBakServiceImpl.java b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/impl/PqDataVerifyBakServiceImpl.java index c72a7ce7e..41bb3c476 100644 --- a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/impl/PqDataVerifyBakServiceImpl.java +++ b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/impl/PqDataVerifyBakServiceImpl.java @@ -471,6 +471,9 @@ public class PqDataVerifyBakServiceImpl extends ServiceImpl baseDataVerifyQuery(List monitorIds, MonitorBaseParam monitorBaseParam) { + if(Objects.isNull(monitorBaseParam.getErrorTimeCount())){ + monitorBaseParam.setErrorTimeCount(720); + } LambdaQueryWrapper lambdaQueryWrapper = new LambdaQueryWrapper<>(); lambdaQueryWrapper.between(PqDataVerifyBak::getTimeId, DateUtil.beginOfDay(DateUtil.parse(monitorBaseParam.getSearchBeginTime())), DateUtil.endOfDay(DateUtil.parse(monitorBaseParam.getSearchEndTime()))) .in(PqDataVerifyBak::getLineId, monitorIds) diff --git a/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/common/service/GeneralDeviceService.java b/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/common/service/GeneralDeviceService.java index 9406c84af..8fb04b8e3 100644 --- a/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/common/service/GeneralDeviceService.java +++ b/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/common/service/GeneralDeviceService.java @@ -369,7 +369,7 @@ public class GeneralDeviceService { StatisticsEnum statisticsEnum = StatisticsEnum.getStatisticsEnumByCode(deviceInfoParam.getStatisticalType().getCode()); switch (statisticsEnum) { case VOLTAGE_LEVEL: - return filterDataByScale(deviceInfos, deviceInfoParam.getScale()); + return filterDataByScale(deviceInfos, deviceInfoParam.getScale(),deviceInfoParam.getLineOrDevice()); case LOAD_TYPE: return filterDataByLoadType(deviceInfos, deviceInfoParam.getLoadType()); case MANUFACTURER: @@ -474,11 +474,12 @@ public class GeneralDeviceService { generalDeviceDTO.setLineIndexes(lineIndexes.stream().distinct().collect(Collectors.toList())); } - private List filterDataByScale(List deviceInfos, List scales) { + private List filterDataByScale(List deviceInfos, List scales,Integer type) { List generalDeviceDTOS = new ArrayList<>(); - List subIds = new ArrayList<>(), lineIds = new ArrayList<>(); + List subIds = new ArrayList<>(), subVIds = new ArrayList<>(),lineIds = new ArrayList<>(); for (GeneralDeviceDTO generalDeviceDTO : deviceInfos) { subIds.addAll(generalDeviceDTO.getSubIndexes()); + subVIds.addAll(generalDeviceDTO.getVoltageIndexes()); lineIds.addAll(generalDeviceDTO.getLineIndexes()); } //如果电压等级集合为空,则查询所有的电压等级 @@ -496,8 +497,13 @@ public class GeneralDeviceService { } List lines = terminalBaseService.getLineById(lineIds); for (SimpleDTO simpleDTO : scales) { - List voltageScaleIds = terminalBaseService.getSubIdByScale(subIds, simpleDTO.getId()); - generalDeviceDTOS.add(assembleDataByLine(simpleDTO, lines, voltageScaleIds, LineBaseEnum.SUB_LEVEL.getCode())); + if(ObjectUtil.isNull(type)){ + List voltageScaleIds = terminalBaseService.getSubIdByScale(subIds, simpleDTO.getId()); + generalDeviceDTOS.add(assembleDataByLine(simpleDTO, lines, voltageScaleIds, LineBaseEnum.SUB_LEVEL.getCode())); + }else{ + List voltageScaleIds = terminalBaseService.getVoltageIdByScale(subVIds, simpleDTO.getId()); + generalDeviceDTOS.add(assembleDataByLine(simpleDTO, lines, voltageScaleIds, LineBaseEnum.SUB_V_LEVEL.getCode())); + } } return generalDeviceDTOS; } diff --git a/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/line/mapper/DeptLineMapper.java b/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/line/mapper/DeptLineMapper.java index e600def5d..49ba95fd2 100644 --- a/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/line/mapper/DeptLineMapper.java +++ b/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/line/mapper/DeptLineMapper.java @@ -6,6 +6,7 @@ import com.njcn.device.biz.pojo.dto.LineDevGetDTO; import com.njcn.device.biz.pojo.dto.SubGetBase; import com.njcn.device.biz.pojo.dto.TerminalGetBase; import com.njcn.device.biz.pojo.param.SubstationParam; +import com.njcn.device.biz.pojo.dto.MonitorCommLedgerInfoDTO; import com.njcn.device.pq.pojo.po.DeptLine; import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Select; @@ -74,6 +75,9 @@ public interface DeptLineMapper extends BaseMapper { List lineDevGet(@Param("list")List devType,@Param("type")Integer type,@Param("lineRunFlag") Integer lineRunFlag); + List getMonitorByDeptIds(@Param("list")List devType,@Param("deptIds")List deptIds); + + List lineDevAllGet(@Param("list")List devType,@Param("type")Integer type,@Param("lineRunFlag") Integer lineRunFlag, @Param("lineType") Integer lineType); List orgSubStationGet(@Param("list")List devType); diff --git a/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/line/mapper/mapping/DeptLineMapper.xml b/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/line/mapper/mapping/DeptLineMapper.xml index 9b7791ac4..bbf68e567 100644 --- a/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/line/mapper/mapping/DeptLineMapper.xml +++ b/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/line/mapper/mapping/DeptLineMapper.xml @@ -74,6 +74,45 @@ + + + + +