From 0794cdeaf12c7ea3be3621b8ce289459b56ef4eb Mon Sep 17 00:00:00 2001 From: chendaofei <857448963@qq.com> Date: Tue, 29 Apr 2025 16:46:16 +0800 Subject: [PATCH] =?UTF-8?q?=E8=BE=BD=E5=AE=81=E5=8A=9F=E8=83=BD=E8=B0=83?= =?UTF-8?q?=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../device/biz/pojo/dto/PollutionLineDTO.java | 10 + .../njcn/device/pq/api/LineFeignClient.java | 3 + .../device/pq/api/SubstationFeignClient.java | 6 + .../LineFeignClientFallbackFactory.java | 6 + .../SubstationFeignClientFallbackFactory.java | 7 + .../njcn/device/pq/pojo/po/LineDetail.java | 4 + .../pq/pojo/vo/LineIntegrityDataVO.java | 6 + .../device/pq/controller/LineController.java | 9 + .../controller/ReasonableRangeController.java | 60 ++++++ .../pq/controller/SubstationController.java | 10 + .../pq/mapper/ReasonableRangeMapper.java | 15 ++ .../mapping/LineIntegrityDataMapper.xml | 3 +- .../device/pq/mapper/mapping/LineMapper.xml | 6 + .../device/pq/service/ISubstationService.java | 3 + .../njcn/device/pq/service/LineService.java | 3 + .../pq/service/ReasonableRangeService.java | 27 +++ .../impl/LineIntegrityDataServiceImpl.java | 194 +++++++++++------- .../pq/service/impl/LineServiceImpl.java | 151 +++++++------- .../impl/ReasonableRangeServiceImpl.java | 51 +++++ .../service/impl/SubstationServiceImpl.java | 34 ++- .../mapper/mapping/RStatLimitRateDMapper.xml | 2 +- .../service/impl/HarmonicServiceImpl.java | 161 +++++++++------ 22 files changed, 554 insertions(+), 217 deletions(-) create mode 100644 pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/controller/ReasonableRangeController.java create mode 100644 pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/mapper/ReasonableRangeMapper.java create mode 100644 pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/ReasonableRangeService.java create mode 100644 pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/impl/ReasonableRangeServiceImpl.java diff --git a/pqs-device/common-device-biz/src/main/java/com/njcn/device/biz/pojo/dto/PollutionLineDTO.java b/pqs-device/common-device-biz/src/main/java/com/njcn/device/biz/pojo/dto/PollutionLineDTO.java index 39b669b39..9ccfb34f7 100644 --- a/pqs-device/common-device-biz/src/main/java/com/njcn/device/biz/pojo/dto/PollutionLineDTO.java +++ b/pqs-device/common-device-biz/src/main/java/com/njcn/device/biz/pojo/dto/PollutionLineDTO.java @@ -18,6 +18,16 @@ public class PollutionLineDTO { @ApiModelProperty("id") private String id; + private String pid; + + private String pids; + + @ApiModelProperty("监测对象id") + private String objId; + + @ApiModelProperty("电网标志 0电网侧 1用户侧") + private Integer powerFlag; + @ApiModelProperty("名称") private String name; diff --git a/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/api/LineFeignClient.java b/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/api/LineFeignClient.java index 47c09bbd0..2a63ae19c 100644 --- a/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/api/LineFeignClient.java +++ b/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/api/LineFeignClient.java @@ -361,4 +361,7 @@ import java.util.Map; @GetMapping("/getLevelMonitorIdByDept") HttpResult> getLevelMonitorIdByDept(@RequestParam("level") String level,@RequestParam("deptId")String deptId); + @GetMapping("/getMonitorByObjId") + HttpResult> getMonitorByObjId(@RequestParam("objId") String objId); + } diff --git a/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/api/SubstationFeignClient.java b/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/api/SubstationFeignClient.java index 3a9186512..66d051433 100644 --- a/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/api/SubstationFeignClient.java +++ b/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/api/SubstationFeignClient.java @@ -4,7 +4,9 @@ import com.njcn.common.pojo.constant.ServerInfo; import com.njcn.common.pojo.response.HttpResult; import com.njcn.device.pq.api.fallback.SubstationFeignClientFallbackFactory; import com.njcn.device.pq.pojo.dto.SubstationDTO; +import com.njcn.device.pq.pojo.po.LineDetail; import org.springframework.cloud.openfeign.FeignClient; +import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestParam; @@ -28,4 +30,8 @@ public interface SubstationFeignClient { */ @PostMapping("getSubstationById") HttpResult> getSubstationById(@RequestBody List subId); + + + @GetMapping("getMonitorByStationId") + HttpResult> getMonitorByStationId(@RequestParam("stationId") String stationId, @RequestParam("powerFlag") Integer powerFlag); } diff --git a/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/api/fallback/LineFeignClientFallbackFactory.java b/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/api/fallback/LineFeignClientFallbackFactory.java index e27c57e99..e7556764d 100644 --- a/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/api/fallback/LineFeignClientFallbackFactory.java +++ b/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/api/fallback/LineFeignClientFallbackFactory.java @@ -294,6 +294,12 @@ public class LineFeignClientFallbackFactory implements FallbackFactory> getMonitorByObjId(String objId) { + log.error("{}异常,降级处理,异常为:{}", "根据监测对象id查测点集合信息: ", throwable.toString()); + throw new BusinessException(finalExceptionEnum); + } }; } } diff --git a/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/api/fallback/SubstationFeignClientFallbackFactory.java b/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/api/fallback/SubstationFeignClientFallbackFactory.java index 7f668fd9a..fa9c39db3 100644 --- a/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/api/fallback/SubstationFeignClientFallbackFactory.java +++ b/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/api/fallback/SubstationFeignClientFallbackFactory.java @@ -6,6 +6,7 @@ import com.njcn.common.pojo.response.HttpResult; import com.njcn.device.pq.api.SubstationFeignClient; import com.njcn.device.pq.pojo.dto.SubstationDTO; import com.njcn.device.biz.utils.DeviceEnumUtil; +import com.njcn.device.pq.pojo.po.LineDetail; import feign.hystrix.FallbackFactory; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Component; @@ -35,6 +36,12 @@ public class SubstationFeignClientFallbackFactory implements FallbackFactory> getMonitorByStationId(String stationId, Integer powerFlag) { + log.error("{}异常,降级处理,异常为:{}", "根据变电站ID获取监测到信息", throwable.toString()); + throw new BusinessException(finalExceptionEnum); + } }; } } diff --git a/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/po/LineDetail.java b/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/po/LineDetail.java index 93d58aa92..37bce22fa 100644 --- a/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/po/LineDetail.java +++ b/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/po/LineDetail.java @@ -24,6 +24,10 @@ public class LineDetail{ */ private String id; + + @TableField(exist = false) + private String monitorName; + /** * 线路号(在同一台设备中的监测点号) */ diff --git a/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/vo/LineIntegrityDataVO.java b/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/vo/LineIntegrityDataVO.java index dc2a79152..64a385f73 100644 --- a/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/vo/LineIntegrityDataVO.java +++ b/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/vo/LineIntegrityDataVO.java @@ -64,6 +64,12 @@ public class LineIntegrityDataVO implements Serializable { @ApiModelProperty(name = "pids",value = "全部父id字符串") private String pids; + @ApiModelProperty(name = "objId",value = "监测到对象id") + private String objId; + + @ApiModelProperty(name = "powerFlag",value = "电网标志") + private Integer powerFlag; + /** * 设备通讯状态 diff --git a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/controller/LineController.java b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/controller/LineController.java index ccb030e36..d661b635e 100644 --- a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/controller/LineController.java +++ b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/controller/LineController.java @@ -555,4 +555,13 @@ public class LineController extends BaseController { List list = lineService.getLevelMonitorByDept(level,deptId); return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, list, methodDescribe); } + + @OperateInfo(info = LogEnum.BUSINESS_COMMON) + @ApiOperation("根据对象名称获取监测到信息") + @GetMapping("/getMonitorByObjId") + public HttpResult> getMonitorByObjId(@RequestParam("objId") String objId){ + String methodDescribe = getMethodDescribe("getMonitorByObjId"); + List list = lineService.getMonitorByObjId(objId); + return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, list, methodDescribe); + } } diff --git a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/controller/ReasonableRangeController.java b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/controller/ReasonableRangeController.java new file mode 100644 index 000000000..4027f0d50 --- /dev/null +++ b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/controller/ReasonableRangeController.java @@ -0,0 +1,60 @@ +package com.njcn.device.pq.controller; + +/** + * @Author: cdf + * @CreateTime: 2025-04-29 + * @Description: 异常告警数据指标范围 + */ + +import com.njcn.common.pojo.annotation.OperateInfo; +import com.njcn.common.pojo.constant.OperateType; +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.dataProcess.param.DataCleanParam; +import com.njcn.dataProcess.pojo.dto.PqReasonableRangeDto; +import com.njcn.device.pq.service.ReasonableRangeService; +import com.njcn.web.controller.BaseController; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Controller; +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; + +import javax.annotation.Resource; +import java.util.List; + +/** + *

+ * 前端控制器 + *

+ * + * @author xy + * @since 2025-02-13 + */ +@Validated +@Slf4j +@Controller +@RestController +@RequestMapping("/pqReasonableRange") +@Api(tags = "数据清洗标准库") +public class ReasonableRangeController extends BaseController { + + @Resource + private ReasonableRangeService pqReasonableRangeService; + + @OperateInfo(info = LogEnum.BUSINESS_COMMON,operateType = OperateType.QUERY) + @PostMapping("/getData") + @ApiOperation("按条件获取数据合理范围") + public HttpResult> getData(@RequestBody DataCleanParam param) { + String methodDescribe = getMethodDescribe("getData"); + List list = pqReasonableRangeService.getReasonableRangeList(param); + return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, list, methodDescribe); + } + +} \ No newline at end of file diff --git a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/controller/SubstationController.java b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/controller/SubstationController.java index e6db54f7e..7006a9ca5 100644 --- a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/controller/SubstationController.java +++ b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/controller/SubstationController.java @@ -9,6 +9,7 @@ import com.njcn.common.utils.HttpResultUtil; import com.njcn.device.pq.pojo.dto.SubstationDTO; import com.njcn.device.pq.pojo.param.AlarmStrategyParam; import com.njcn.device.pq.pojo.po.Line; +import com.njcn.device.pq.pojo.po.LineDetail; import com.njcn.device.pq.pojo.vo.AlarmStrategyVO; import com.njcn.device.pq.service.AlarmStrategyService; import com.njcn.device.pq.service.ISubstationService; @@ -58,4 +59,13 @@ public class SubstationController extends BaseController { return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, substationDTOList, methodDescribe); } + @OperateInfo(info = LogEnum.BUSINESS_COMMON) + @ApiOperation("根据电站下面的电网侧测点") + @GetMapping("getMonitorByStationId") + HttpResult> getMonitorByStationId(@RequestParam("stationId") String stationId,@RequestParam("powerFlag") Integer powerFlag){ + String methodDescribe = getMethodDescribe("getMonitorByStationId"); + List lineDetailList = substationService.getPowerByStationId(stationId,powerFlag); + return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, lineDetailList, methodDescribe); + } + } diff --git a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/mapper/ReasonableRangeMapper.java b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/mapper/ReasonableRangeMapper.java new file mode 100644 index 000000000..7017196cf --- /dev/null +++ b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/mapper/ReasonableRangeMapper.java @@ -0,0 +1,15 @@ +package com.njcn.device.pq.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.njcn.dataProcess.pojo.po.PqReasonableRange; + +/** + *

+ * Mapper 接口 + *

+ * + * @author xy + * @since 2025-02-13 + */ +public interface ReasonableRangeMapper extends BaseMapper { +} diff --git a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/mapper/mapping/LineIntegrityDataMapper.xml b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/mapper/mapping/LineIntegrityDataMapper.xml index 0f522c21c..814b7201a 100644 --- a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/mapper/mapping/LineIntegrityDataMapper.xml +++ b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/mapper/mapping/LineIntegrityDataMapper.xml @@ -82,7 +82,8 @@ pldsdd.Name AS lineGradeName, pldsdd.id AS lineGrade, pldsdd.Algo_Describe AS algoDescribe, - pld.Load_Type AS loadType + pld.Load_Type AS loadType, + pld.obj_id as objId FROM pq_line AS line LEFT JOIN pq_line AS voltage ON line.Pid = voltage.Id diff --git a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/mapper/mapping/LineMapper.xml b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/mapper/mapping/LineMapper.xml index 045511c84..4a79cc8e7 100644 --- a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/mapper/mapping/LineMapper.xml +++ b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/mapper/mapping/LineMapper.xml @@ -668,6 +668,10 @@