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 8eca3eeb5..4cb0cfbb7 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 @@ -146,6 +146,9 @@ public interface CommTerminalGeneralClient { @PostMapping("/getAllLineOverLimit") HttpResult> getAllLineOverLimit(); + @PostMapping("/getOverLimitDataByIds") + HttpResult> getOverLimitDataByIds(@RequestBody List ids); + /** * @Description: 获取变电站下监测点信息 * @param devDataType 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 655c8e9d8..ea72f755c 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.web.bind.annotation.RequestBody; import java.util.List; import java.util.Map; @@ -109,6 +110,12 @@ public class CommTerminalGeneralClientFallbackFactory implements FallbackFactory throw new BusinessException(finalExceptionEnum); } + @Override + public HttpResult> getOverLimitDataByIds(@RequestBody List ids) { + log.error("{}异常,降级处理,异常为:{}", "通过监测点集合获取监测点限值", throwable.toString()); + throw new BusinessException(finalExceptionEnum); + } + @Override public HttpResult>> getLineBySubstationRelation(Integer devDataType) { log.error("{}异常,降级处理,异常为:{}", "获取变电站下监测点信息", throwable.toString()); diff --git a/pqs-device/pms-device/pms-device-api/src/main/java/com/njcn/device/pms/api/DistributionMonitorClient.java b/pqs-device/pms-device/pms-device-api/src/main/java/com/njcn/device/pms/api/DistributionMonitorClient.java index 98646bf49..e179fc8c8 100644 --- a/pqs-device/pms-device/pms-device-api/src/main/java/com/njcn/device/pms/api/DistributionMonitorClient.java +++ b/pqs-device/pms-device/pms-device-api/src/main/java/com/njcn/device/pms/api/DistributionMonitorClient.java @@ -4,9 +4,12 @@ import com.njcn.common.pojo.constant.ServerInfo; import com.njcn.common.pojo.response.HttpResult; import com.njcn.device.pms.api.fallback.DistributionMonitorClientFallbackFactory; import com.njcn.device.pms.pojo.dto.PwPmsMonitorDTO; +import com.njcn.device.pms.pojo.param.pwUser.PwUserMonitorParam; import com.njcn.device.pms.pojo.po.DistributionMonitor; import com.njcn.device.pms.pojo.vo.DoubleUserVO; +import com.njcn.device.pms.pojo.vo.pwUser.PwUserMonitorDataVO; import org.springframework.cloud.openfeign.FeignClient; +import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestParam; @@ -52,4 +55,8 @@ public interface DistributionMonitorClient { @PostMapping("pwMonitorAreaDetailInfo") HttpResult> pwMonitorAreaDetailInfo(@RequestBody List monitorIds); + @PostMapping("getPwUserIds") + HttpResult> getPwUserIds(@RequestBody @Validated PwUserMonitorParam pwUserMonitorParam); + + } diff --git a/pqs-device/pms-device/pms-device-api/src/main/java/com/njcn/device/pms/api/fallback/DistributionMonitorClientFallbackFactory.java b/pqs-device/pms-device/pms-device-api/src/main/java/com/njcn/device/pms/api/fallback/DistributionMonitorClientFallbackFactory.java index 33fcb796e..cfbfbc2d5 100644 --- a/pqs-device/pms-device/pms-device-api/src/main/java/com/njcn/device/pms/api/fallback/DistributionMonitorClientFallbackFactory.java +++ b/pqs-device/pms-device/pms-device-api/src/main/java/com/njcn/device/pms/api/fallback/DistributionMonitorClientFallbackFactory.java @@ -5,8 +5,10 @@ import com.njcn.common.pojo.exception.BusinessException; import com.njcn.common.pojo.response.HttpResult; import com.njcn.device.pms.api.DistributionMonitorClient; import com.njcn.device.pms.pojo.dto.PwPmsMonitorDTO; +import com.njcn.device.pms.pojo.param.pwUser.PwUserMonitorParam; import com.njcn.device.pms.pojo.po.DistributionMonitor; import com.njcn.device.pms.pojo.vo.DoubleUserVO; +import com.njcn.device.pms.pojo.vo.pwUser.PwUserMonitorDataVO; import com.njcn.device.pms.utils.PmsDeviceEnumUtil; import feign.hystrix.FallbackFactory; import lombok.extern.slf4j.Slf4j; @@ -59,6 +61,12 @@ public class DistributionMonitorClientFallbackFactory implements FallbackFactory throw new BusinessException(finalExceptionEnum); } + @Override + public HttpResult> getPwUserIds(PwUserMonitorParam pwUserMonitorParam) { + log.error("{}异常,降级处理,异常为:{}", "根据部门获取配网用户信息", throwable.toString()); + throw new BusinessException(finalExceptionEnum); + } + }; } diff --git a/pqs-device/pms-device/pms-device-api/src/main/java/com/njcn/device/pms/pojo/param/pwUser/PwUserMonitorParam.java b/pqs-device/pms-device/pms-device-api/src/main/java/com/njcn/device/pms/pojo/param/pwUser/PwUserMonitorParam.java new file mode 100644 index 000000000..79873760e --- /dev/null +++ b/pqs-device/pms-device/pms-device-api/src/main/java/com/njcn/device/pms/pojo/param/pwUser/PwUserMonitorParam.java @@ -0,0 +1,21 @@ +package com.njcn.device.pms.pojo.param.pwUser; + +import com.njcn.web.pojo.param.BaseParam; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import javax.validation.constraints.NotBlank; + +@Data +@EqualsAndHashCode(callSuper = true) +public class PwUserMonitorParam extends BaseParam { + + @NotBlank(message = "单位id不可为空") + private String orgId; + + private String userName; + + private Double limitValue; + + +} diff --git a/pqs-device/pms-device/pms-device-api/src/main/java/com/njcn/device/pms/pojo/vo/pwUser/PwUserMonitorDataVO.java b/pqs-device/pms-device/pms-device-api/src/main/java/com/njcn/device/pms/pojo/vo/pwUser/PwUserMonitorDataVO.java new file mode 100644 index 000000000..7cdc85dab --- /dev/null +++ b/pqs-device/pms-device/pms-device-api/src/main/java/com/njcn/device/pms/pojo/vo/pwUser/PwUserMonitorDataVO.java @@ -0,0 +1,22 @@ +package com.njcn.device.pms.pojo.vo.pwUser; + +import lombok.Data; + +@Data +public class PwUserMonitorDataVO { + + private String id; + + private String name; + + private String orgName; + + private String operationName; + + private Integer ifSensitiveUser; + + private String userType; + + private Float integrityRate; + +} diff --git a/pqs-device/pms-device/pms-device-boot/src/main/java/com/njcn/device/pms/controller/ledgerManger/CommTerminalController.java b/pqs-device/pms-device/pms-device-boot/src/main/java/com/njcn/device/pms/controller/ledgerManger/CommTerminalController.java index db0997fb1..c9dc8ba34 100644 --- a/pqs-device/pms-device/pms-device-boot/src/main/java/com/njcn/device/pms/controller/ledgerManger/CommTerminalController.java +++ b/pqs-device/pms-device/pms-device-boot/src/main/java/com/njcn/device/pms/controller/ledgerManger/CommTerminalController.java @@ -1,7 +1,10 @@ package com.njcn.device.pms.controller.ledgerManger; +import cn.hutool.core.collection.CollUtil; import cn.hutool.core.date.TimeInterval; +import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.njcn.common.pojo.annotation.OperateInfo; import com.njcn.common.pojo.enums.common.LogEnum; import com.njcn.common.pojo.enums.response.CommonResponseEnum; @@ -16,9 +19,11 @@ import com.njcn.device.biz.pojo.param.SubstationParam; import com.njcn.device.biz.pojo.po.Overlimit; import com.njcn.device.biz.pojo.po.PqsDeviceUnit; import com.njcn.device.pms.mapper.majornetwork.PqsDeviceUnitMapper; +import com.njcn.device.pms.pojo.param.pwUser.PwUserMonitorParam; import com.njcn.device.pms.pojo.po.DistributionMonitor; import com.njcn.device.pms.pojo.po.Monitor; import com.njcn.device.pms.pojo.po.PmsTerminal; +import com.njcn.device.pms.pojo.vo.pwUser.PwUserMonitorDataVO; import com.njcn.device.pms.service.ledgerManger.CommTerminalService; import com.njcn.device.pms.service.majornetwork.IDistributionMonitorService; import com.njcn.device.pms.service.majornetwork.IMonitorService; @@ -258,6 +263,16 @@ public class CommTerminalController extends BaseController { return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, result, methodDescribe); } + @OperateInfo(info = LogEnum.BUSINESS_COMMON) + @PostMapping("/getOverLimitDataByIds") + @ApiOperation("根据监测点id集合获取越限数值") + @ApiImplicitParam(name = "ids", value = "监测点id集合", required = true) + public HttpResult> getOverLimitDataByIds(@RequestBody List ids) { + String methodDescribe = getMethodDescribe("getOverLimitDataByIds"); + List result = monitorService.getOverLimitDataByIds(ids); + return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, result, methodDescribe); + } + @OperateInfo(info = LogEnum.BUSINESS_COMMON) @PostMapping("/getAllLineOverLimit") @ApiOperation("获取投运在线的监测点的限值") @@ -283,7 +298,7 @@ public class CommTerminalController extends BaseController { @ApiOperation("获取投运谐波系统所有监测点") public HttpResult> getRunMonitorIds() { String methodDescribe = getMethodDescribe("getRunMonitorIds"); - List result = commTerminalService.getOneMonitorIds(); + List result = commTerminalService.getRunMonitorList(); return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, result, methodDescribe); } @@ -299,23 +314,17 @@ public class CommTerminalController extends BaseController { @ApiImplicitParam(name = "list", value = "监测点集合") public HttpResult> getMonitorDetailList(@RequestBody List list) { String methodDescribe = getMethodDescribe("getMonitorDetailList"); - List result = new ArrayList<>(); - List monitorList = monitorService.getMonitorList(list); + List monitorList = monitorService.getPmsCalMonitorList(list); //获取设备最新数据时间 - List devList = monitorList.stream().map(Monitor::getTerminalId).distinct().collect(Collectors.toList()); + List devList = monitorList.stream().map(LineDevGetDTO::getDevId).distinct().collect(Collectors.toList()); List terminals = terminalService.getTerminalSelectByIds(devList); Map> map = terminals.stream().collect(Collectors.groupingBy(PmsTerminal::getId)); monitorList.forEach(item->{ - LineDevGetDTO lineDevGetDTO = new LineDevGetDTO(); - lineDevGetDTO.setPointId(item.getId()); - lineDevGetDTO.setDevId(item.getTerminalId()); - lineDevGetDTO.setInterval(item.getStatisticalInterval()); - if (!Objects.isNull(map.get(item.getTerminalId()))){ - lineDevGetDTO.setUpdateTime(map.get(item.getTerminalId()).get(0).getUpdateTime()); + if (!Objects.isNull(map.get(item.getDevId()))){ + item.setUpdateTime(map.get(item.getDevId()).get(0).getUpdateTime()); } - result.add(lineDevGetDTO); }); - return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS,result, methodDescribe); + return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS,monitorList, methodDescribe); } /** @@ -432,6 +441,8 @@ public class CommTerminalController extends BaseController { return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, subGetBases, methodDescribe); } + + /** * 用于返回pq 还是pms系统 * @author cdf diff --git a/pqs-device/pms-device/pms-device-boot/src/main/java/com/njcn/device/pms/controller/ledgerManger/PmsDistributionMonitorController.java b/pqs-device/pms-device/pms-device-boot/src/main/java/com/njcn/device/pms/controller/ledgerManger/PmsDistributionMonitorController.java index e3d577e7b..02fa5af93 100644 --- a/pqs-device/pms-device/pms-device-boot/src/main/java/com/njcn/device/pms/controller/ledgerManger/PmsDistributionMonitorController.java +++ b/pqs-device/pms-device/pms-device-boot/src/main/java/com/njcn/device/pms/controller/ledgerManger/PmsDistributionMonitorController.java @@ -16,9 +16,11 @@ import com.njcn.device.pms.pojo.dto.PwPmsMonitorDTO; import com.njcn.device.pms.pojo.param.DistributionMonitorParam; import com.njcn.device.pms.pojo.param.MonitorStatus; import com.njcn.device.pms.pojo.param.TaiZhangDelParam; +import com.njcn.device.pms.pojo.param.pwUser.PwUserMonitorParam; import com.njcn.device.pms.pojo.po.DistributionMonitor; import com.njcn.device.pms.pojo.po.TerminalLog; import com.njcn.device.pms.pojo.vo.DoubleUserVO; +import com.njcn.device.pms.pojo.vo.pwUser.PwUserMonitorDataVO; import com.njcn.device.pms.service.majornetwork.IDistributionMonitorService; import com.njcn.device.pms.service.majornetwork.ITerminalLogService; import com.njcn.system.api.DicDataFeignClient; @@ -304,6 +306,19 @@ public class PmsDistributionMonitorController extends BaseController { } + /** + * 获取配网用户数据 + */ + @OperateInfo(info = LogEnum.BUSINESS_COMMON) + @PostMapping("/getPwUserIds") + @ApiOperation("获取配网用户数据") + public HttpResult> getPwUserIds(@RequestBody @Validated PwUserMonitorParam pwUserMonitorParam) { + String methodDescribe = getMethodDescribe("getPwUserIds"); + List pwUserMonitorDataVOList = iDistributionMonitorService.getPwUserIds(pwUserMonitorParam); + return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, pwUserMonitorDataVOList, methodDescribe); + } + + } diff --git a/pqs-device/pms-device/pms-device-boot/src/main/java/com/njcn/device/pms/controller/ledgerManger/PwUserMonitorDataController.java b/pqs-device/pms-device/pms-device-boot/src/main/java/com/njcn/device/pms/controller/ledgerManger/PwUserMonitorDataController.java new file mode 100644 index 000000000..5e8dbcc9b --- /dev/null +++ b/pqs-device/pms-device/pms-device-boot/src/main/java/com/njcn/device/pms/controller/ledgerManger/PwUserMonitorDataController.java @@ -0,0 +1,50 @@ +package com.njcn.device.pms.controller.ledgerManger; + + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.njcn.common.pojo.annotation.OperateInfo; +import com.njcn.common.pojo.enums.common.LogEnum; +import com.njcn.common.pojo.enums.response.CommonResponseEnum; +import com.njcn.common.pojo.response.HttpResult; +import com.njcn.common.utils.HttpResultUtil; +import com.njcn.common.utils.LogUtil; +import com.njcn.device.pms.pojo.param.TerminalQueryParam; +import com.njcn.device.pms.pojo.param.pwUser.PwUserMonitorParam; +import com.njcn.device.pms.pojo.po.PmsTerminal; +import com.njcn.device.pms.pojo.vo.pwUser.PwUserMonitorDataVO; +import com.njcn.device.pms.service.ledgerManger.PwUserMonitorDataService; +import com.njcn.web.controller.BaseController; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiImplicitParam; +import io.swagger.annotations.ApiOperation; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +@Slf4j +@RestController +@RequestMapping("pwUser") +@Api(tags = "配网用户侧数据") +@RequiredArgsConstructor +public class PwUserMonitorDataController extends BaseController { + + private final PwUserMonitorDataService pwUserMonitorDataService; + + + /** + * 获取配网用户侧监测点数据完整性 + */ + @OperateInfo(info = LogEnum.BUSINESS_COMMON) + @PostMapping("getMonitorIntegrity") + @ApiOperation("获取配网用户侧监测点数据完整性") + @ApiImplicitParam(name = "pwUserMonitorParam",value = "请求头",required = true) + public HttpResult> getMonitorIntegrity(@RequestBody @Validated PwUserMonitorParam pwUserMonitorParam){ + String methodDescribe = getMethodDescribe("getMonitorIntegrity"); + Page page = pwUserMonitorDataService.pageIntegrityData(pwUserMonitorParam); + return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS,page,methodDescribe); + } +} diff --git a/pqs-device/pms-device/pms-device-boot/src/main/java/com/njcn/device/pms/mapper/majornetwork/DistributionMonitorMapper.java b/pqs-device/pms-device/pms-device-boot/src/main/java/com/njcn/device/pms/mapper/majornetwork/DistributionMonitorMapper.java index 6c45d52f6..267230cce 100644 --- a/pqs-device/pms-device/pms-device-boot/src/main/java/com/njcn/device/pms/mapper/majornetwork/DistributionMonitorMapper.java +++ b/pqs-device/pms-device/pms-device-boot/src/main/java/com/njcn/device/pms/mapper/majornetwork/DistributionMonitorMapper.java @@ -1,5 +1,6 @@ package com.njcn.device.pms.mapper.majornetwork; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.github.jeffreyning.mybatisplus.base.MppBaseMapper; import com.njcn.common.pojo.param.StatisticsBizBaseParam; @@ -14,6 +15,7 @@ import com.njcn.device.pms.pojo.po.PowerDistributionarea; import com.njcn.device.pms.pojo.vo.DoubleUserVO; import com.njcn.device.pms.pojo.vo.PmsPowerTreeMonitorVO; import com.njcn.device.pms.pojo.vo.PmsSummaryStatisticsVO; +import com.njcn.device.pms.pojo.vo.pwUser.PwUserMonitorDataVO; import org.apache.ibatis.annotations.Param; import java.util.List; @@ -122,4 +124,7 @@ public interface DistributionMonitorMapper extends MppBaseMapper getDistributionPage(@Param("ew")QueryWrapper ew); } diff --git a/pqs-device/pms-device/pms-device-boot/src/main/java/com/njcn/device/pms/mapper/majornetwork/mapping/DistributionMonitorMapper.xml b/pqs-device/pms-device/pms-device-boot/src/main/java/com/njcn/device/pms/mapper/majornetwork/mapping/DistributionMonitorMapper.xml index b444fded8..7e82647e9 100644 --- a/pqs-device/pms-device/pms-device-boot/src/main/java/com/njcn/device/pms/mapper/majornetwork/mapping/DistributionMonitorMapper.xml +++ b/pqs-device/pms-device/pms-device-boot/src/main/java/com/njcn/device/pms/mapper/majornetwork/mapping/DistributionMonitorMapper.xml @@ -506,5 +506,17 @@ AND STATUS = 1 + + + diff --git a/pqs-device/pms-device/pms-device-boot/src/main/java/com/njcn/device/pms/mapper/mapping/RStatIntegrityDMapper.xml b/pqs-device/pms-device/pms-device-boot/src/main/java/com/njcn/device/pms/mapper/mapping/RStatIntegrityDMapper.xml index 01216e575..d02d7e87a 100644 --- a/pqs-device/pms-device/pms-device-boot/src/main/java/com/njcn/device/pms/mapper/mapping/RStatIntegrityDMapper.xml +++ b/pqs-device/pms-device/pms-device-boot/src/main/java/com/njcn/device/pms/mapper/mapping/RStatIntegrityDMapper.xml @@ -5,7 +5,7 @@