From e54df08dcae7693f04952aa9968a5591d0f7b4ae Mon Sep 17 00:00:00 2001 From: wr <1754607820@qq.com> Date: Thu, 1 Aug 2024 14:48:15 +0800 Subject: [PATCH] =?UTF-8?q?1.=E8=B0=83=E6=95=B4=E5=8F=98=E7=94=B5=E7=AB=99?= =?UTF-8?q?=E5=8F=B0=E8=B4=A6=E6=A8=A1=E7=B3=8A=E6=90=9C=E7=B4=A2=E5=8A=9F?= =?UTF-8?q?=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../njcn/device/pq/api/LineFeignClient.java | 8 +++++ .../LineFeignClientFallbackFactory.java | 6 ++++ .../device/pq/controller/LineController.java | 9 +++++ .../com/njcn/device/pq/mapper/LineMapper.java | 3 ++ .../device/pq/mapper/mapping/LineMapper.xml | 14 ++++++++ .../njcn/device/pq/service/LineService.java | 3 ++ .../pq/service/impl/LineServiceImpl.java | 5 +++ .../impl/PollutionSubstationServiceImpl.java | 35 ++----------------- 8 files changed, 51 insertions(+), 32 deletions(-) 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 160ccc2b3..1d4a69149 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 @@ -353,4 +353,12 @@ public interface LineFeignClient { @PostMapping("/getReportLineInfo") HttpResult> getReportLineInfo(@RequestBody List ids); + + /** + * 根据监测点名称和电网侧变电站名称模糊搜索 + * @param name + * @return + */ + @PostMapping("/getByName") + HttpResult> getByName(@RequestParam("name") String name); } 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 0ced88fac..4f3df66f9 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 @@ -281,6 +281,12 @@ public class LineFeignClientFallbackFactory implements FallbackFactory> getByName(String name) { + log.error("{}异常,降级处理,异常为:{}", "根据监测点名称和电网侧变电站名称模糊搜索: ", throwable.toString()); + throw new BusinessException(finalExceptionEnum); + } }; } } 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 e19fca334..28d055054 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 @@ -533,4 +533,13 @@ public class LineController extends BaseController { List result = lineService.getReportLineInfo(ids); return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, result, methodDescribe); } + + @OperateInfo(info = LogEnum.BUSINESS_COMMON) + @ApiOperation("根据监测点名称和电网侧变电站名称模糊搜索") + @PostMapping("/getByName") + HttpResult> getByName(@RequestParam("name") String name){ + String methodDescribe = getMethodDescribe("getByName"); + List list = lineService.getByName(name); + return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, list, methodDescribe); + } } diff --git a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/mapper/LineMapper.java b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/mapper/LineMapper.java index 0af9a4550..534e74ced 100644 --- a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/mapper/LineMapper.java +++ b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/mapper/LineMapper.java @@ -557,4 +557,7 @@ public interface LineMapper extends BaseMapper { List getReportLineInfo(@Param("ids")List ids); List getSubByCondition(@Param("subIds") List subIds, @Param("scale") List scale); + + List selectByName(@Param("name") String name); + } 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 2338fb1f0..2a5f0a1dc 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 @@ -1744,4 +1744,18 @@ + diff --git a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/LineService.java b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/LineService.java index 9d49b10e7..ac71f0b75 100644 --- a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/LineService.java +++ b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/LineService.java @@ -13,6 +13,7 @@ import com.njcn.device.pq.pojo.param.PqsParam; import com.njcn.device.pq.pojo.param.TerminalMainQueryParam; import com.njcn.device.pq.pojo.po.Line; import com.njcn.device.biz.pojo.po.Overlimit; +import com.njcn.device.pq.pojo.po.LineDetail; import com.njcn.device.pq.pojo.po.TopMsgPO; import com.njcn.device.pq.pojo.vo.*; import com.njcn.web.pojo.param.BaseParam; @@ -224,4 +225,6 @@ public interface LineService extends IService { List getNoDataLine(); List getReportLineInfo(List ids); + + List getByName(String name); } diff --git a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/impl/LineServiceImpl.java b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/impl/LineServiceImpl.java index 9885e054d..be8891f38 100644 --- a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/impl/LineServiceImpl.java +++ b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/impl/LineServiceImpl.java @@ -694,6 +694,11 @@ public class LineServiceImpl extends ServiceImpl implements Li return this.baseMapper.getReportLineInfo(ids); } + @Override + public List getByName(String name) { + return this.baseMapper.selectByName(name); + } + @Override public List getOverLimitByList(PollutionParamDTO pollutionParamDTO) { return overlimitMapper.selectBatchIds(pollutionParamDTO.getLineList()); diff --git a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/impl/PollutionSubstationServiceImpl.java b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/impl/PollutionSubstationServiceImpl.java index 5e2993012..b301cf66f 100644 --- a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/impl/PollutionSubstationServiceImpl.java +++ b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/impl/PollutionSubstationServiceImpl.java @@ -825,11 +825,8 @@ public class PollutionSubstationServiceImpl extends ServiceImpl lineOrgName = lineNameList.stream().collect(Collectors.toMap(LineDevGetDTO::getPointId, LineDevGetDTO::getUnitName)); //获取监测点集合 - Map> lineMap = this.getLineMap(list, searchValue); - List lineList = lineMap.values().stream() - .flatMap(List::stream) - .distinct() - .collect(Collectors.toList()); + List data = lineFeignClient.getByName(searchValue).getData(); + List lineList = data.stream().map(LineDetail::getId).distinct().collect(Collectors.toList()); if (CollUtil.isNotEmpty(lineList)) { //获取监测点的超标数据 List limitRateList = rStatLimitRateDMapper.getAllOverTimes(lineList, startTime, endTime); @@ -849,11 +846,7 @@ public class PollutionSubstationServiceImpl extends ServiceImpl harmonicI = lineData.stream().filter(x -> i.equals(x.getPollutionType())).collect(Collectors.toList()); //获取监测点详细信息 - List lineDetailList = lineFeignClient.getLineDetail(lineList).getData(); - if(StrUtil.isNotBlank(searchValue)){ - lineDetailList= lineDetailList.stream().filter(item -> item.getPowerSubstationName().contains(searchValue)).collect(Collectors.toList()); - } - Map> lineDetailMap = lineDetailList.stream().filter(x -> StrUtil.isNotBlank(x.getPowerSubstationName())).collect(Collectors.groupingBy(LineDetail::getPowerSubstationName)); + Map> lineDetailMap = data.stream().filter(x -> StrUtil.isNotBlank(x.getPowerSubstationName())).collect(Collectors.groupingBy(LineDetail::getPowerSubstationName)); lineDetailMap.forEach((key, value) -> { AtomicInteger alarmTime = new AtomicInteger(); SubstationVo vo = new SubstationVo(); @@ -879,28 +872,6 @@ public class PollutionSubstationServiceImpl extends ServiceImpl> getLineMap(List list, String searchValue) { - Map> map = new HashMap<>(); - list.forEach(it -> { - Predicate voltageFilter = item -> true; - if (!Objects.isNull(searchValue) && !Objects.equals(searchValue, "")) { - voltageFilter = item -> item.getPointName().contains(searchValue); - } - Predicate combinedFilter = voltageFilter; - map.put(it.getUnitName(), it.getLineBaseList().stream() - .filter(combinedFilter) - .map(LineDevGetDTO::getPointId) - .distinct() - .collect(Collectors.toList())); - }); - return map; - } private List addList(List substationMlist) {