From eec2560fd29d245de51988b5f30afafd4de439ae Mon Sep 17 00:00:00 2001 From: wr <1754607820@qq.com> Date: Thu, 5 Mar 2026 19:32:03 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8A=80=E6=9C=AF=E7=9B=91=E7=9D=A3=E7=94=A8?= =?UTF-8?q?=E6=88=B7=E4=BF=A1=E6=81=AF=E8=BF=81=E7=A7=BB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pqs-device/pq-device/pq-device-api/pom.xml | 6 + .../device/pq/api/UserLedgerFeignClient.java | 45 ++ .../UserLedgerFeignClientFallbackFactory.java | 12 +- .../device/pq/service/IDataVerifyService.java | 16 - .../service/impl/DataVerifyServiceImpl.java | 119 ----- .../impl/DeviceRunEvaluateServiceImpl.java | 6 +- .../impl/LineIntegrityDataServiceImpl.java | 15 +- .../impl/PqDataVerifyBakServiceImpl.java | 2 - .../pq/service/impl/RunManageServiceImpl.java | 6 +- .../service/impl/TerminalTreeServiceImpl.java | 9 +- pqs-device/pq-device/pq-device-com/pom.xml | 7 +- .../service/impl/TerminalBaseServiceImpl.java | 7 +- .../service/impl/DeptLineServiceImpl.java | 7 +- .../line/service/impl/LineServiceImpl.java | 10 +- .../controller/UserLedgerController.java | 150 +++++++ .../mapper/UserReportNormalMapper.java | 17 + .../userledger/mapper/UserReportPOMapper.java | 24 + .../mapper/UserReportProjectPOMapper.java | 15 + .../mapper/UserReportRenewalMapper.java | 16 + .../mapper/UserReportSensitivePOMapper.java | 15 + .../mapper/UserReportSubstationPOMapper.java | 15 + .../mapper/mapping/UserReportPOMapper.xml | 61 +++ .../service/IUserReportNormalService.java | 19 + .../service/IUserReportRenewalService.java | 17 + .../userledger/service/UserLedgerService.java | 93 ++++ .../service/UserReportProjectPOService.java | 17 + .../service/UserReportSensitivePOService.java | 17 + .../UserReportSubstationPOService.java | 17 + .../service/impl/UserLedgerServiceImpl.java | 422 ++++++++++++++++++ .../impl/UserReportNormalServiceImpl.java | 26 ++ .../impl/UserReportProjectPOServiceImpl.java | 19 + .../impl/UserReportRenewalServiceImpl.java | 23 + .../UserReportSensitivePOServiceImpl.java | 19 + .../UserReportSubstationPOServiceImpl.java | 19 + .../VoltageRideThroughEventServiceImpl.java | 2 +- .../service/impl/AnalyzeServiceImpl.java | 3 +- .../service/impl/ComAssessServiceImpl.java | 6 +- .../service/impl/HarmonicServiceImpl.java | 8 +- .../impl/PollutionSubstationServiceImpl.java | 6 +- .../impl/SteadyExceedRateServiceImpl.java | 2 +- .../impl/SteadyQualifyServiceImpl.java | 2 +- .../service/impl/THDistortionServiceImpl.java | 2 +- ...ent.java => UserLedgerOldFeignClient.java} | 6 +- ...va => UserReportManageOldFeignClient.java} | 6 +- ...rReportOldFeignClientFallbackFactory.java} | 8 +- 45 files changed, 1127 insertions(+), 212 deletions(-) create mode 100644 pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/api/UserLedgerFeignClient.java rename {pqs-supervision/supervision-api/src/main/java/com/njcn/supervision => pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq}/api/fallback/UserLedgerFeignClientFallbackFactory.java (82%) create mode 100644 pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/controller/UserLedgerController.java create mode 100644 pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/mapper/UserReportNormalMapper.java create mode 100644 pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/mapper/UserReportPOMapper.java create mode 100644 pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/mapper/UserReportProjectPOMapper.java create mode 100644 pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/mapper/UserReportRenewalMapper.java create mode 100644 pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/mapper/UserReportSensitivePOMapper.java create mode 100644 pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/mapper/UserReportSubstationPOMapper.java create mode 100644 pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/mapper/mapping/UserReportPOMapper.xml create mode 100644 pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/service/IUserReportNormalService.java create mode 100644 pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/service/IUserReportRenewalService.java create mode 100644 pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/service/UserLedgerService.java create mode 100644 pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/service/UserReportProjectPOService.java create mode 100644 pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/service/UserReportSensitivePOService.java create mode 100644 pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/service/UserReportSubstationPOService.java create mode 100644 pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/service/impl/UserLedgerServiceImpl.java create mode 100644 pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/service/impl/UserReportNormalServiceImpl.java create mode 100644 pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/service/impl/UserReportProjectPOServiceImpl.java create mode 100644 pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/service/impl/UserReportRenewalServiceImpl.java create mode 100644 pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/service/impl/UserReportSensitivePOServiceImpl.java create mode 100644 pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/service/impl/UserReportSubstationPOServiceImpl.java rename pqs-supervision/supervision-api/src/main/java/com/njcn/supervision/api/{UserLedgerFeignClient.java => UserLedgerOldFeignClient.java} (86%) rename pqs-supervision/supervision-api/src/main/java/com/njcn/supervision/api/{UserReportManageFeignClient.java => UserReportManageOldFeignClient.java} (81%) rename pqs-supervision/supervision-api/src/main/java/com/njcn/supervision/api/fallback/{UserReportFeignClientFallbackFactory.java => UserReportOldFeignClientFallbackFactory.java} (81%) diff --git a/pqs-device/pq-device/pq-device-api/pom.xml b/pqs-device/pq-device/pq-device-api/pom.xml index 5196b6fee..9dc282f70 100644 --- a/pqs-device/pq-device/pq-device-api/pom.xml +++ b/pqs-device/pq-device/pq-device-api/pom.xml @@ -27,6 +27,12 @@ pqs-influx ${project.version} + + com.njcn + supervision-api + 1.0.0 + compile + diff --git a/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/api/UserLedgerFeignClient.java b/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/api/UserLedgerFeignClient.java new file mode 100644 index 000000000..87e45fdc9 --- /dev/null +++ b/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/api/UserLedgerFeignClient.java @@ -0,0 +1,45 @@ +package com.njcn.device.pq.api; + +import com.njcn.common.pojo.constant.ServerInfo; +import com.njcn.common.pojo.response.HttpResult; +import com.njcn.device.pq.api.fallback.UserLedgerFeignClientFallbackFactory; +import com.njcn.supervision.pojo.param.SensitiveUserParam; +import com.njcn.supervision.pojo.param.user.UserReportParam; +import com.njcn.supervision.pojo.po.user.UserReportPO; +import com.njcn.supervision.pojo.vo.user.NewUserReportVO; +import com.njcn.supervision.pojo.vo.user.UserLedgerVO; +import io.swagger.annotations.ApiOperation; +import org.springframework.cloud.openfeign.FeignClient; +import org.springframework.validation.annotation.Validated; +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; + +import java.util.List; + + +/** + * 流程实例 Api 接口 + * + */ +@FeignClient(value = ServerInfo.DEVICE, path = "/userReport", fallbackFactory = UserLedgerFeignClientFallbackFactory.class) +public interface UserLedgerFeignClient { + + + @PostMapping("/selectUserList") + HttpResult> selectUserList(@RequestBody UserReportParam userReportParam); + + @GetMapping("/selectUserInfo") + HttpResult selectUserInfo(@RequestParam("id") String id); + + @PostMapping(value = "/bindUserStation") + HttpResult> bindUserStation(@RequestParam("userId")String userId,@RequestParam("stationId")String stationId); + + @PostMapping("/getUserReportByIds") + HttpResult> getUserReportByIds(@RequestBody List ids); + + @PostMapping("/getSensitiveUserByDept") + @ApiOperation("根据部门获取敏感用户信息") + HttpResult> getSensitiveUserByDept(@RequestBody @Validated SensitiveUserParam param) ; +} diff --git a/pqs-supervision/supervision-api/src/main/java/com/njcn/supervision/api/fallback/UserLedgerFeignClientFallbackFactory.java b/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/api/fallback/UserLedgerFeignClientFallbackFactory.java similarity index 82% rename from pqs-supervision/supervision-api/src/main/java/com/njcn/supervision/api/fallback/UserLedgerFeignClientFallbackFactory.java rename to pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/api/fallback/UserLedgerFeignClientFallbackFactory.java index 54abad975..1ff338943 100644 --- a/pqs-supervision/supervision-api/src/main/java/com/njcn/supervision/api/fallback/UserLedgerFeignClientFallbackFactory.java +++ b/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/api/fallback/UserLedgerFeignClientFallbackFactory.java @@ -1,10 +1,12 @@ -package com.njcn.supervision.api.fallback; +package com.njcn.device.pq.api.fallback; import com.njcn.common.pojo.enums.response.CommonResponseEnum; import com.njcn.common.pojo.exception.BusinessException; import com.njcn.common.pojo.response.HttpResult; -import com.njcn.supervision.api.UserLedgerFeignClient; +import com.njcn.device.pq.api.UserLedgerFeignClient; +import com.njcn.supervision.pojo.param.SensitiveUserParam; import com.njcn.supervision.pojo.param.user.UserReportParam; +import com.njcn.supervision.pojo.po.user.UserReportPO; import com.njcn.supervision.pojo.vo.user.NewUserReportVO; import com.njcn.supervision.pojo.vo.user.UserLedgerVO; import com.njcn.supervision.utils.SupervisionEnumUtil; @@ -52,6 +54,12 @@ public class UserLedgerFeignClientFallbackFactory implements FallbackFactory> getSensitiveUserByDept(SensitiveUserParam param) { + 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/service/IDataVerifyService.java b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/IDataVerifyService.java index c1b41f570..5d0b7ac6a 100644 --- a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/IDataVerifyService.java +++ b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/IDataVerifyService.java @@ -1,6 +1,5 @@ package com.njcn.device.pq.service; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; import com.njcn.device.pq.pojo.param.dataClean.MonitorBaseParam; import com.njcn.device.pq.pojo.po.DataVerify; @@ -10,7 +9,6 @@ import com.njcn.device.pq.pojo.vo.dataClean.PowerQualityIndicatorsVO; import com.njcn.device.pq.pojo.vo.dataClean.VerifyMonitorVO; import java.util.List; -import java.util.Map; /** *

@@ -22,19 +20,6 @@ import java.util.Map; */ public interface IDataVerifyService extends IService { - - VerifyMonitorVO getMonitorVerifyData(MonitorBaseParam monitorBaseParam); - - List getMonitorVerifyDay(MonitorBaseParam monitorBaseParam); - - - List monitorAbnormalTable(MonitorBaseParam monitorBaseParam); - - - - List monitorAbnormalTableDetail(MonitorBaseParam monitorBaseParam); - - VerifyMonitorVO getMonitorLimitData(MonitorBaseParam monitorBaseParam); List getMonitorLimitDataDay(MonitorBaseParam monitorBaseParam); @@ -43,6 +28,5 @@ public interface IDataVerifyService extends IService { DetailAbnormalVO.DetailLimitCountVO monitorLimitTableDetail(MonitorBaseParam monitorBaseParam); - DetailAbnormalVO.Assess limitTableDetail(MonitorBaseParam monitorBaseParam); } diff --git a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/impl/DataVerifyServiceImpl.java b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/impl/DataVerifyServiceImpl.java index 46dbf5486..242c887b7 100644 --- a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/impl/DataVerifyServiceImpl.java +++ b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/impl/DataVerifyServiceImpl.java @@ -31,13 +31,11 @@ import com.njcn.device.pq.mapper.DataVerifyMapper; import com.njcn.device.pq.pojo.param.dataClean.MonitorBaseParam; import com.njcn.device.pq.pojo.po.DataVerify; import com.njcn.device.pq.pojo.po.DeptLine; -import com.njcn.device.pq.pojo.po.PqDataVerifyBak; import com.njcn.device.pq.pojo.vo.AreaLineInfoVO; import com.njcn.device.pq.pojo.vo.LineDetailDataVO; import com.njcn.device.pq.pojo.vo.dataClean.*; import com.njcn.device.pq.service.CommTerminalService; import com.njcn.device.pq.service.IDataVerifyService; -import com.njcn.supervision.api.UserLedgerFeignClient; import com.njcn.system.api.DicDataFeignClient; import com.njcn.system.api.DictTreeFeignClient; import com.njcn.system.enums.DicDataEnum; @@ -51,7 +49,6 @@ import org.springframework.stereotype.Service; import java.lang.reflect.Field; import java.lang.reflect.Method; import java.time.LocalDate; -import java.time.LocalDateTime; import java.time.format.DateTimeFormatter; import java.util.*; import java.util.function.Function; @@ -76,7 +73,6 @@ public class DataVerifyServiceImpl extends ServiceImpl monitorIds = commTerminalService.getRunMonitorByDept(monitorBaseParam); - if (CollUtil.isEmpty(monitorIds)) { - throw new BusinessException(DeviceResponseEnum.QUERY_LINE_DATA_EMPTY); - } - List dataVerifyList = commQuery(monitorIds, monitorBaseParam); - VerifyMonitorVO verifyMonitorVO = new VerifyMonitorVO(); - verifyMonitorVO.setRunNum(monitorIds.size()); - verifyMonitorVO.setAbnormalNum(dataVerifyList.stream().collect(Collectors.groupingBy(DataVerify::getLineId)).size()); - verifyMonitorVO.setMapList(getRangeAbnormalMonitor(monitorBaseParam, dataVerifyList)); - verifyMonitorVO.setTargetList(getAbnormalTarget(dataVerifyList)); - verifyMonitorVO.setMonitorAlarmInfo(getAbnormalTable(dataVerifyList, monitorBaseParam)); - return verifyMonitorVO; - } - - @Override - public List getMonitorVerifyDay(MonitorBaseParam monitorBaseParam) { - List monitorIds = commTerminalService.getRunMonitorByDept(monitorBaseParam); - List dataVerifyList = commQuery(monitorIds, monitorBaseParam); - return getAbnormalTable(dataVerifyList, monitorBaseParam); - } - - @Override - public List monitorAbnormalTable(MonitorBaseParam monitorBaseParam) { - List result = new ArrayList<>(); - List lineDetailList = lineMapper.getMonitorListDetail(monitorBaseParam.getMonitorIds()); - Map lineDetailMap = lineDetailList.stream().collect(Collectors.toMap(LineDevGetDTO::getPointId, Function.identity())); - - LambdaQueryWrapper lambdaQueryWrapper = new LambdaQueryWrapper<>(); - lambdaQueryWrapper.between(DataVerify::getTime, DateUtil.beginOfDay(DateUtil.parse(monitorBaseParam.getSearchBeginTime())), - DateUtil.endOfDay(DateUtil.parse(monitorBaseParam.getSearchEndTime()))) - .in(DataVerify::getLineId, monitorBaseParam.getMonitorIds()).orderByAsc(DataVerify::getTime); - if (StrUtil.isNotBlank(monitorBaseParam.getTargetKey())) { - String[] target = monitorBaseParam.getTargetKey().split(SEPARATOR); - lambdaQueryWrapper.eq(DataVerify::getIndexCode, target[0]).eq(DataVerify::getIndexTable, target[1]); - } - List dataVerifyList = this.list(lambdaQueryWrapper); - Map> dataMap = dataVerifyList.stream().collect(Collectors.groupingBy(it -> it.getTime().format(DATE_FORMAT))); - dataMap.forEach((dateStr, data) -> { - Map> lineMap = data.stream().collect(Collectors.groupingBy(DataVerify::getLineId)); - lineMap.forEach((lineId, lineList) -> { - long count = lineList.stream().map(DataVerify::getTime).distinct().count(); - DetailAbnormalVO detailAbnormalVO = new DetailAbnormalVO(); - LineDevGetDTO lineDevGetDTO = lineDetailMap.get(lineId); - detailAbnormalVO.setTimeSum(""); - detailAbnormalVO.setDate(dateStr); - detailAbnormalVO.setMonitorName(lineDevGetDTO.getPointName()); - detailAbnormalVO.setMonitorId(lineDevGetDTO.getPointId()); - detailAbnormalVO.setTargetKey(monitorBaseParam.getTargetKey()); - result.add(detailAbnormalVO); - }); - }); - return result; - } - - @Override - public List monitorAbnormalTableDetail(MonitorBaseParam monitorBaseParam) { - Map dtoMap = getStandRange(); - - List result = new ArrayList<>(); - LambdaQueryWrapper lambdaQueryWrapper = new LambdaQueryWrapper<>(); - lambdaQueryWrapper.between(DataVerify::getTime, DateUtil.beginOfDay(DateUtil.parse(monitorBaseParam.getSearchBeginTime())), DateUtil.endOfDay(DateUtil.parse(monitorBaseParam.getSearchBeginTime()))) - .in(DataVerify::getLineId, monitorBaseParam.getMonitorIds()).orderByAsc(DataVerify::getTime); - if (StrUtil.isNotBlank(monitorBaseParam.getTargetKey())) { - String[] queryTarget = monitorBaseParam.getTargetKey().split(SEPARATOR); - lambdaQueryWrapper.eq(DataVerify::getIndexCode, queryTarget[0]).eq(DataVerify::getIndexTable, queryTarget[1]); - } - - List dataVerifyList = this.list(lambdaQueryWrapper); - Map> listMap = dataVerifyList.stream().collect(Collectors.groupingBy(DataVerify::getTime, TreeMap::new, - Collectors.toList())); - listMap.forEach((time, timeList) -> { - Map> indexMap = timeList.stream().collect(Collectors.groupingBy(it -> it.getIndexCode() + SEPARATOR + it.getIndexTable() + SEPARATOR + it.getIndexName())); - indexMap.forEach((target, list) -> { - String[] temKey = target.split(SEPARATOR); - PqReasonableRangeDto pqReasonableRangeDto = dtoMap.get(temKey[0] + SEPARATOR + temKey[1]); - String unit; - if (StrUtil.isNotBlank(pqReasonableRangeDto.getUnit())) { - unit = pqReasonableRangeDto.getUnit(); - } else { - unit = ""; - } - - Map> phaseMap = list.stream().collect(Collectors.groupingBy(DataVerify::getPhasicType)); - phaseMap.forEach((phaseKey, valueList) -> { - DetailAbnormalVO.DetailAbnormalInnerVO vo = new DetailAbnormalVO.DetailAbnormalInnerVO(); - vo.setTime(time.format(DateTimeFormatter.ofPattern(DatePattern.NORM_DATETIME_PATTERN))); - vo.setTargetName(temKey[2]); - vo.setTargetKey(temKey[0] + temKey[1]); - vo.setPhaseType(phaseKey); - vo.setRangeDesc(pqReasonableRangeDto.getMinValue() + unit + " ~ " + pqReasonableRangeDto.getMaxValue() + unit); - valueList.forEach(it -> { - switch (it.getValueType()) { - case "AVG": - vo.setAvg(it.getAbnormalValue().toString()); - break; - case "MAX": - vo.setMax(it.getAbnormalValue().toString()); - break; - case "MIN": - vo.setMin(it.getAbnormalValue().toString()); - break; - case "CP95": - vo.setCp95(it.getAbnormalValue().toString()); - break; - } - }); - result.add(vo); - }); - }); - }); - return result; - } - @Override public VerifyMonitorVO getMonitorLimitData(MonitorBaseParam monitorBaseParam) { List monitorIds = commTerminalService.getRunMonitorByDept(monitorBaseParam); diff --git a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/impl/DeviceRunEvaluateServiceImpl.java b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/impl/DeviceRunEvaluateServiceImpl.java index a1c1a0386..6d2cb3dfb 100644 --- a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/impl/DeviceRunEvaluateServiceImpl.java +++ b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/impl/DeviceRunEvaluateServiceImpl.java @@ -29,10 +29,10 @@ import com.njcn.device.pq.pojo.vo.*; import com.njcn.device.pq.service.DeviceRunEvaluateService; import com.njcn.device.pq.service.IPqDataVerifyCountService; import com.njcn.device.rstatintegrity.mapper.RStatIntegrityDMapper; +import com.njcn.device.userledger.service.UserLedgerService; import com.njcn.harmonic.api.RStatLimitRateDClient; import com.njcn.harmonic.pojo.param.RStatLimitQueryParam; import com.njcn.harmonic.pojo.po.day.RStatLimitRateDPO; -import com.njcn.supervision.api.UserLedgerFeignClient; import com.njcn.supervision.pojo.vo.user.NewUserReportVO; import com.njcn.system.api.DicDataFeignClient; import com.njcn.system.enums.DicDataTypeEnum; @@ -64,7 +64,7 @@ public class DeviceRunEvaluateServiceImpl implements DeviceRunEvaluateService { private final RStatOnlinerateDMapper onLineRateDMapper; private final RStatIntegrityDMapper integrityDMapper; private final LineMapper lineMapper; - private final UserLedgerFeignClient userLedgerFeignClient; + private final UserLedgerService userLedgerService; private final DeptLineService deptLineService; private final GeneralDeviceService deviceService; private final OnLineRateMapper onLineRateMapper; @@ -523,7 +523,7 @@ public class DeviceRunEvaluateServiceImpl implements DeviceRunEvaluateService { private Map getUserLedgerByObjIds(List objIds) { - List userReportVOList = userLedgerFeignClient.getUserReportByIds(objIds).getData(); + List userReportVOList = userLedgerService.getUserReportByIds(objIds); return userReportVOList.stream().collect(Collectors.toMap(NewUserReportVO::getId, Function.identity())); } diff --git a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/impl/LineIntegrityDataServiceImpl.java b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/impl/LineIntegrityDataServiceImpl.java index aeecd15e9..0c5278aeb 100644 --- a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/impl/LineIntegrityDataServiceImpl.java +++ b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/impl/LineIntegrityDataServiceImpl.java @@ -3,7 +3,6 @@ package com.njcn.device.pq.service.impl; import cn.hutool.core.collection.CollUtil; import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.date.DateUtil; -import cn.hutool.core.util.NumberUtil; import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.njcn.common.config.GeneralInfo; @@ -28,8 +27,8 @@ import com.njcn.device.pq.pojo.vo.RStatIntegrityVO; import com.njcn.device.pq.service.LineIntegrityDataService; import com.njcn.device.pq.utils.DataStatisticsUtil; import com.njcn.device.rstatintegrity.mapper.RStatIntegrityDMapper; +import com.njcn.device.userledger.service.UserLedgerService; import com.njcn.harmonic.pojo.vo.IntegrityIconVO; -import com.njcn.supervision.api.UserLedgerFeignClient; import com.njcn.supervision.pojo.param.user.UserReportParam; import com.njcn.supervision.pojo.vo.user.UserLedgerVO; import com.njcn.system.pojo.enums.StatisticsEnum; @@ -38,8 +37,6 @@ import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; import org.springframework.util.CollectionUtils; -import java.math.BigDecimal; -import java.math.RoundingMode; import java.text.Collator; import java.util.*; import java.util.function.Function; @@ -59,18 +56,12 @@ import java.util.stream.Stream; public class LineIntegrityDataServiceImpl extends ServiceImpl implements LineIntegrityDataService { private final LineIntegrityDataMapper lineIntegrityDataMapper; - private final AlarmClient alarmClient; - private final GeneralDeviceService generalDeviceService; - private final RStatIntegrityDMapper rStatIntegrityDMapper; - private final GeneralInfo generalInfo; - private final GeneralDeviceInfoClient generalDeviceInfoClient; - - private final UserLedgerFeignClient userLedgerFeignClient; + private final UserLedgerService userLedgerService; /** * 监测点数据完整性 @@ -88,7 +79,7 @@ public class LineIntegrityDataServiceImpl extends ServiceImpl userLedgerVOMap; if (lineIntegrityDataParam.isUserLedger()) { - List userLedgerVOList = userLedgerFeignClient.selectUserList(new UserReportParam()).getData(); + List userLedgerVOList = userLedgerService.selectUserList(new UserReportParam()); userLedgerVOMap = userLedgerVOList.stream().collect(Collectors.toMap(UserLedgerVO::getId, Function.identity())); } else { userLedgerVOMap = new HashMap<>(); 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 7f7b96849..7ffd7db6f 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 @@ -45,7 +45,6 @@ import com.njcn.device.pq.service.IPqDataVerifyBakService; import com.njcn.device.pq.utils.DataLineExcelUtil; import com.njcn.device.rstatintegrity.mapper.RStatIntegrityDMapper; import com.njcn.oss.utils.FileStorageUtil; -import com.njcn.supervision.api.UserLedgerFeignClient; import com.njcn.system.api.DictTreeFeignClient; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; @@ -86,7 +85,6 @@ public class PqDataVerifyBakServiceImpl extends ServiceImpl getLineLedger(RunManageParam runManageParam) { @@ -89,7 +89,7 @@ public class RunManageServiceImpl implements RunManageService { resultList = deviceMapper.getRunManageList(lineIndexes, runManageParam.getComFlag(),Objects.isNull(runManageParam.getRunFlag())?new ArrayList<>():runManageParam.getRunFlag(), Objects.isNull(runManageParam.getSearchValue())?null:runManageParam.getSearchValue()); if(CollUtil.isNotEmpty(resultList)){ List objIds = resultList.stream().map(RunManageVO::getObjId).collect(Collectors.toList()); - Map runManageVOMap = userLedgerFeignClient.getUserReportByIds(objIds).getData().stream().collect(Collectors.toMap(NewUserReportVO::getId,Function.identity())); + Map runManageVOMap = userLedgerService.getUserReportByIds(objIds).stream().collect(Collectors.toMap(NewUserReportVO::getId,Function.identity())); resultList.forEach(it->{ if(StrUtil.isNotBlank(it.getObjId())){ if(runManageVOMap.containsKey(it.getObjId())){ diff --git a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/impl/TerminalTreeServiceImpl.java b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/impl/TerminalTreeServiceImpl.java index ae7a3c7ae..6f3e4b32b 100644 --- a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/impl/TerminalTreeServiceImpl.java +++ b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/impl/TerminalTreeServiceImpl.java @@ -23,14 +23,13 @@ import com.njcn.device.pq.pojo.po.LineDetail; import com.njcn.device.pq.pojo.vo.DeptLineTreeVO; import com.njcn.device.pq.pojo.vo.TerminalTree; import com.njcn.device.pq.service.TerminalTreeService; -import com.njcn.supervision.api.UserLedgerFeignClient; +import com.njcn.device.userledger.service.UserLedgerService; import com.njcn.supervision.pojo.param.user.UserReportParam; import com.njcn.supervision.pojo.vo.user.UserLedgerVO; import com.njcn.system.api.AreaFeignClient; import com.njcn.system.pojo.enums.StatisticsEnum; import com.njcn.system.pojo.po.Area; import com.njcn.user.api.DeptFeignClient; -import com.njcn.user.pojo.po.Dept; import com.njcn.web.utils.RequestUtil; import lombok.AllArgsConstructor; import org.springframework.stereotype.Service; @@ -66,7 +65,7 @@ public class TerminalTreeServiceImpl implements TerminalTreeService { private final TreeMapper treeMapper; - private final UserLedgerFeignClient userLedgerFeignClient; + private final UserLedgerService userLedgerService; /** * 台账页面终端树 @@ -114,7 +113,7 @@ public class TerminalTreeServiceImpl implements TerminalTreeService { UserReportParam userReportParam = new UserReportParam(); - List userReportPOList = userLedgerFeignClient.selectUserList(userReportParam).getData(); + List userReportPOList = userLedgerService.selectUserList(userReportParam); userReportPOList = userReportPOList.stream().filter(it -> StrUtil.isNotBlank(it.getStationId())).collect(Collectors.toList()); Map> userMap = userReportPOList.stream().collect(Collectors.groupingBy(UserLedgerVO::getStationId)); @@ -272,7 +271,7 @@ public class TerminalTreeServiceImpl implements TerminalTreeService { } else { // 获取用户 UserReportParam userReportParam = new UserReportParam(); - List userReportPOList = userLedgerFeignClient.selectUserList(userReportParam).getData(); + List userReportPOList = userLedgerService.selectUserList(userReportParam); userReportPOList = userReportPOList.stream().filter(it -> StrUtil.isNotBlank(it.getStationId())).collect(Collectors.toList()); Map userMap = userReportPOList.stream().collect(Collectors.toMap(UserLedgerVO::getId, Function.identity())); diff --git a/pqs-device/pq-device/pq-device-com/pom.xml b/pqs-device/pq-device/pq-device-com/pom.xml index 32ea6d4d7..803f851e0 100644 --- a/pqs-device/pq-device/pq-device-com/pom.xml +++ b/pqs-device/pq-device/pq-device-com/pom.xml @@ -29,12 +29,7 @@ 1.0.0 compile - - com.njcn - supervision-api - 1.0.0 - compile - + com.njcn common-oss diff --git a/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/common/service/impl/TerminalBaseServiceImpl.java b/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/common/service/impl/TerminalBaseServiceImpl.java index 41e592dd6..de42e5ebc 100644 --- a/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/common/service/impl/TerminalBaseServiceImpl.java +++ b/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/common/service/impl/TerminalBaseServiceImpl.java @@ -61,6 +61,7 @@ import com.njcn.device.pq.utils.DeviceUtil; import com.njcn.device.substation.mapper.SubstationMapper; import com.njcn.device.subvoltage.mapper.VoltageMapper; import com.njcn.device.terminal.mapper.PqsTerminalLogsMapper; +import com.njcn.device.userledger.service.UserLedgerService; import com.njcn.device.utils.ExcelStyleUtil; import com.njcn.message.api.ProduceFeignClient; import com.njcn.message.constant.DeviceRebootType; @@ -73,7 +74,6 @@ import com.njcn.oss.utils.FileStorageUtil; import com.njcn.poi.excel.ExcelUtil; import com.njcn.poi.util.PoiUtil; import com.njcn.redis.utils.RedisUtil; -import com.njcn.supervision.api.UserLedgerFeignClient; import com.njcn.supervision.pojo.vo.user.UserLedgerVO; import com.njcn.system.api.AreaFeignClient; import com.njcn.system.api.DicDataFeignClient; @@ -97,7 +97,6 @@ import org.springframework.util.CollectionUtils; import org.springframework.web.multipart.MultipartFile; import javax.servlet.http.HttpServletResponse; -import java.math.BigDecimal; import java.net.HttpURLConnection; import java.time.LocalDate; import java.time.LocalDateTime; @@ -140,7 +139,7 @@ public class TerminalBaseServiceImpl extends ServiceImpl imple private final NodeDeviceService nodeDeviceService; private final DeviceProcessService deviceProcessService; private final ProduceFeignClient produceFeignClient; - private final UserLedgerFeignClient userLedgerFeignClient; + private final UserLedgerService userLedgerService; @Value("${oracle.isSync}") private Boolean isSync; @@ -989,7 +988,7 @@ public class TerminalBaseServiceImpl extends ServiceImpl imple Line obj; if (level == 700) { obj = new Line(); - UserLedgerVO userLedgerVO = userLedgerFeignClient.selectUserInfo(id).getData(); + UserLedgerVO userLedgerVO = userLedgerService.selectUserInfo(id); if (Objects.nonNull(userLedgerVO)) { obj.setId(userLedgerVO.getId()); obj.setLevel(LineBaseEnum.USER_LEVEL.getCode()); diff --git a/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/line/service/impl/DeptLineServiceImpl.java b/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/line/service/impl/DeptLineServiceImpl.java index 884749014..846fc77f4 100644 --- a/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/line/service/impl/DeptLineServiceImpl.java +++ b/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/line/service/impl/DeptLineServiceImpl.java @@ -19,7 +19,7 @@ import com.njcn.device.pq.pojo.po.DeptLine; import com.njcn.device.pq.pojo.po.LineDetail; import com.njcn.device.pq.pojo.vo.DevDetailVO; import com.njcn.device.pq.pojo.vo.LineDeviceStateVO; -import com.njcn.supervision.api.UserLedgerFeignClient; +import com.njcn.device.userledger.service.UserLedgerService; import com.njcn.supervision.pojo.vo.user.NewUserReportVO; import com.njcn.system.api.DictTreeFeignClient; import com.njcn.system.enums.DicTreeEnum; @@ -27,7 +27,6 @@ import com.njcn.system.pojo.vo.DictTreeVO; import com.njcn.user.api.DeptFeignClient; import com.njcn.user.pojo.dto.DeptDTO; import com.njcn.user.pojo.po.Dept; -import com.njcn.user.pojo.vo.PvTerminalTreeVO; import com.njcn.web.pojo.param.DeptLineParam; import com.njcn.web.utils.WebUtil; import lombok.RequiredArgsConstructor; @@ -52,7 +51,7 @@ public class DeptLineServiceImpl extends ServiceImpl i private final LineMapper lineMapper; private final DictTreeFeignClient dictTreeFeignClient; private final LineDetailMapper detailMapper; - private final UserLedgerFeignClient userLedgerFeignClient; + private final UserLedgerService userLedgerService; @Override @@ -251,7 +250,7 @@ public class DeptLineServiceImpl extends ServiceImpl i .distinct() .collect(Collectors.toList()); if(CollUtil.isNotEmpty(objIds)){ - List data = userLedgerFeignClient.getUserReportByIds(objIds).getData(); + List data = userLedgerService.getUserReportByIds(objIds); Map userMap = data.stream().collect(Collectors.toMap(NewUserReportVO::getId, NewUserReportVO::getProjectName)); for (DevDetailVO lineDeviceByDevId : lineDeviceByDevIds) { if(StrUtil.isNotBlank(lineDeviceByDevId.getObjId())){ diff --git a/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/line/service/impl/LineServiceImpl.java b/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/line/service/impl/LineServiceImpl.java index 76b5f9d18..d0bbd0084 100644 --- a/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/line/service/impl/LineServiceImpl.java +++ b/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/line/service/impl/LineServiceImpl.java @@ -39,11 +39,11 @@ import com.njcn.device.pq.pojo.vo.*; import com.njcn.device.substation.mapper.SubstationMapper; import com.njcn.device.subvoltage.mapper.VoltageMapper; import com.njcn.device.terminal.mapper.TerminalMaintainMapper; +import com.njcn.device.userledger.service.UserLedgerService; import com.njcn.influx.constant.InfluxDbSqlConstant; import com.njcn.influx.imapper.PqsCommunicateMapper; import com.njcn.influx.pojo.po.PqsCommunicate; import com.njcn.influx.query.InfluxQueryWrapper; -import com.njcn.supervision.api.UserLedgerFeignClient; import com.njcn.supervision.pojo.vo.user.NewUserReportVO; import com.njcn.system.api.AreaFeignClient; import com.njcn.system.api.DicDataFeignClient; @@ -106,8 +106,10 @@ public class LineServiceImpl extends ServiceImpl implements Li private final TerminalMaintainMapper terminalMaintainMapper; private final DeptFeignClient deptFeignClient; private final DeptLineService deptLineService; - private final UserLedgerFeignClient userLedgerFeignClient; + private final UserLedgerService userLedgerService; private final PqDevTypeService pqDevTypeService; + + @Override public LineDetailDataVO getLineDetailData(String id) { if (StringUtils.isEmpty(id)) { @@ -744,7 +746,7 @@ public class LineServiceImpl extends ServiceImpl implements Li if (CollUtil.isNotEmpty(userLedgerList)) { List objIds = userLedgerList.stream().map(LineDetail::getObjId).distinct().collect(Collectors.toList()); - List newUserReportVOList = userLedgerFeignClient.getUserReportByIds(objIds).getData(); + List newUserReportVOList = userLedgerService.getUserReportByIds(objIds); Map map = newUserReportVOList.stream().collect(Collectors.toMap(NewUserReportVO::getId, Function.identity())); List dictDataList = dicDataFeignClient.getDicDataByTypeCode(DicDataTypeEnum.DEV_VOLTAGE_STAND.getCode()).getData(); @@ -892,7 +894,7 @@ public class LineServiceImpl extends ServiceImpl implements Li List userIds = resList.stream().map(AreaLineInfoVO::getObjId).filter(StrUtil::isNotBlank).collect(Collectors.toList()); Map userReportVOMap = new HashMap<>(); if (CollUtil.isNotEmpty(userIds)) { - List data = userLedgerFeignClient.getUserReportByIds(userIds).getData(); + List data = userLedgerService.getUserReportByIds(userIds); if (CollUtil.isNotEmpty(data)) { userReportVOMap = data.stream().collect(Collectors.toMap(NewUserReportVO::getId, Function.identity())); } diff --git a/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/controller/UserLedgerController.java b/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/controller/UserLedgerController.java new file mode 100644 index 000000000..b83131d35 --- /dev/null +++ b/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/controller/UserLedgerController.java @@ -0,0 +1,150 @@ +package com.njcn.device.userledger.controller; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +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.device.userledger.service.UserLedgerService; +import com.njcn.supervision.pojo.param.SensitiveUserParam; +import com.njcn.supervision.pojo.param.user.UserReportParam; +import com.njcn.supervision.pojo.po.file.FileUrl; +import com.njcn.supervision.pojo.po.user.UserReportPO; +import com.njcn.supervision.pojo.vo.user.NewUserReportVO; +import com.njcn.supervision.pojo.vo.user.UserLedgerVO; +import com.njcn.supervision.pojo.vo.user.UserReportVO; +import com.njcn.web.controller.BaseController; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiImplicitParam; +import io.swagger.annotations.ApiOperation; +import lombok.AllArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; + +import java.util.ArrayList; +import java.util.List; + +/** + * 干扰源用户管理 + * + * @author qijian + * @version 1.0.0 + * @createTime 2022/11/11 - 9:20 + */ +@Slf4j +@RestController +@RequestMapping("/userReport") +@Api(tags = "干扰源用户管理") +@AllArgsConstructor +public class UserLedgerController extends BaseController { + + private final UserLedgerService userReportPOService; + + + @PostMapping(value = "/selectUserList") + @ApiOperation("查询用户台账") + @OperateInfo(info = LogEnum.BUSINESS_COMMON) + public HttpResult> selectUserList(@RequestBody UserReportParam userReportParam) { + String methodDescribe = getMethodDescribe("selectUserList"); + List b = userReportPOService.selectUserList(userReportParam); + return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, b, methodDescribe); + } + + @GetMapping(value = "/selectUserInfo") + @ApiOperation("查询用户基本详情") + @OperateInfo(info = LogEnum.BUSINESS_COMMON) + public HttpResult selectUserInfo(@RequestParam String id) { + String methodDescribe = getMethodDescribe("selectUserInfo"); + UserLedgerVO b = userReportPOService.selectUserInfo(id); + return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, b, methodDescribe); + } + + + @PostMapping(value = "/bindUserStation") + @ApiOperation("绑定用户电站信息") + @OperateInfo(info = LogEnum.BUSINESS_COMMON) + public HttpResult> bindUserStation(@RequestParam("userId")String userId,@RequestParam("stationId")String stationId) { + String methodDescribe = getMethodDescribe("bindUserStation"); + userReportPOService.bindUserStation(userId,stationId); + return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, null, methodDescribe); + } + + + @PostMapping("/getUserReportByIds") + @OperateInfo(info = LogEnum.BUSINESS_COMMON) + @ApiOperation("根据ids获取非电网侧用户信息") + public HttpResult> getUserReportByIds(@RequestBody List ids) { + String methodDescribe = getMethodDescribe("getUserReportByIds"); + List userReportByIds = userReportPOService.getUserReportByIds(ids); + return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, userReportByIds, methodDescribe); + } + + @OperateInfo(info = LogEnum.BUSINESS_COMMON) + @PostMapping("/getSensitiveUserByDept") + @ApiOperation("根据部门获取敏感用户信息") + @ApiImplicitParam(name = "param", value = "参数", required = true) + public HttpResult> getSensitiveUserByDept(@RequestBody @Validated SensitiveUserParam param) { + String methodDescribe = getMethodDescribe("getSensitiveUserByDept"); + List list = userReportPOService.getSensitiveUserByDept(param); + return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, list, methodDescribe); + } + + @OperateInfo(info = LogEnum.BUSINESS_COMMON) + @PostMapping("/getUserLedgerPage") + @ApiOperation("分页查询干扰源用户台账") + @ApiImplicitParam(name = "userReportQueryParam", value = "参数", required = true) + public HttpResult> getUserLedgerPage(@RequestBody @Validated UserReportParam.UserReportQueryParam userReportQueryParam) { + String methodDescribe = getMethodDescribe("getUserLedgerPage"); + Page out = userReportPOService.getUserLedgerPage(userReportQueryParam); + return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, out, methodDescribe); + } + + @GetMapping("/getById") + @OperateInfo(info = LogEnum.BUSINESS_COMMON) + @ApiOperation("根据id获取用户档案录入的详细数据") + public HttpResult getById(String id) { + String methodDescribe = getMethodDescribe("getById"); + UserReportVO.UserReportListVO userReportVO = userReportPOService.getVOById(id); + return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, userReportVO, methodDescribe); + } + + @OperateInfo(info = LogEnum.BUSINESS_COMMON) + @GetMapping("/getFileById") + @ApiOperation("根据id查询文件信息集合") + public HttpResult> getFileUrlList(String id) { + String methodDescribe = getMethodDescribe("getFileUrlList"); + return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, new ArrayList<>(), methodDescribe); + } + + @OperateInfo(info = LogEnum.BUSINESS_COMMON, operateType = OperateType.ADD) + @PostMapping("/add") + @ApiOperation("新增干扰源用户") + @ApiImplicitParam(name = "userReportParam", value = "实体参数", required = true) + public HttpResult addUserReport(@RequestBody @Validated UserReportParam userReportParam) { + String methodDescribe = getMethodDescribe("addUserReport"); + String userReportId = userReportPOService.addUserReport(userReportParam); + return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, userReportId, methodDescribe); + } + + @PostMapping(value = "/deleteUserReport") + @ApiOperation("干扰源接入功能删除流程") + @OperateInfo(info = LogEnum.BUSINESS_MEDIUM, operateType = OperateType.DELETE) + public HttpResult deleteUserReport(@RequestBody List supervisionId) { + String methodDescribe = getMethodDescribe("deleteUserReport"); + Boolean b = userReportPOService.deleteUserReport(supervisionId); + return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, b, methodDescribe); + } + + @GetMapping("/getUserReportById") + @OperateInfo(info = LogEnum.BUSINESS_COMMON) + @ApiOperation("根据id获取用户档案录入数据") + public HttpResult getUserReportById(String id) { + String methodDescribe = getMethodDescribe("getUserReportById"); + UserReportVO userReportVO = userReportPOService.getUserReportById(id); + return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, userReportVO, methodDescribe); + } + +} diff --git a/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/mapper/UserReportNormalMapper.java b/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/mapper/UserReportNormalMapper.java new file mode 100644 index 000000000..82671effd --- /dev/null +++ b/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/mapper/UserReportNormalMapper.java @@ -0,0 +1,17 @@ +package com.njcn.device.userledger.mapper; + + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.njcn.supervision.pojo.po.user.UserReportNormalPO; + +/** + *

+ * 干扰源用户常态化管理 Mapper 接口 + *

+ * + * @author hongawen + * @since 2024-05-17 + */ +public interface UserReportNormalMapper extends BaseMapper { + +} diff --git a/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/mapper/UserReportPOMapper.java b/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/mapper/UserReportPOMapper.java new file mode 100644 index 000000000..5029b90d3 --- /dev/null +++ b/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/mapper/UserReportPOMapper.java @@ -0,0 +1,24 @@ +package com.njcn.device.userledger.mapper; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.njcn.supervision.pojo.po.user.UserReportPO; +import com.njcn.supervision.pojo.vo.user.UserReportVO; +import org.apache.ibatis.annotations.Param; + +/** + * + * Description: + * Date: 2024/4/25 10:07【需求编号】 + * + * @author clam + * @version V1.0.0 + */ +public interface UserReportPOMapper extends BaseMapper { + + Page page(@Param("page")Page objectPage, @Param("ew") QueryWrapper userReportVOQueryWrapper); + + + UserReportVO getUserReportById(@Param("ew")QueryWrapper userReportVOQueryWrapper); +} \ No newline at end of file diff --git a/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/mapper/UserReportProjectPOMapper.java b/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/mapper/UserReportProjectPOMapper.java new file mode 100644 index 000000000..47b64e5d0 --- /dev/null +++ b/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/mapper/UserReportProjectPOMapper.java @@ -0,0 +1,15 @@ +package com.njcn.device.userledger.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.njcn.supervision.pojo.po.user.UserReportProjectPO; + +/** + * + * Description: + * Date: 2024/4/25 10:08【需求编号】 + * + * @author clam + * @version V1.0.0 + */ +public interface UserReportProjectPOMapper extends BaseMapper { +} \ No newline at end of file diff --git a/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/mapper/UserReportRenewalMapper.java b/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/mapper/UserReportRenewalMapper.java new file mode 100644 index 000000000..b1f88349e --- /dev/null +++ b/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/mapper/UserReportRenewalMapper.java @@ -0,0 +1,16 @@ +package com.njcn.device.userledger.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.njcn.supervision.pojo.po.user.UserReportRenewalPO; + +/** + *

+ * 用户档案信息表 Mapper 接口 + *

+ * + * @author wr + * @since 2024-06-26 + */ +public interface UserReportRenewalMapper extends BaseMapper { + +} diff --git a/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/mapper/UserReportSensitivePOMapper.java b/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/mapper/UserReportSensitivePOMapper.java new file mode 100644 index 000000000..3aa84e040 --- /dev/null +++ b/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/mapper/UserReportSensitivePOMapper.java @@ -0,0 +1,15 @@ +package com.njcn.device.userledger.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.njcn.supervision.pojo.po.user.UserReportSensitivePO; + +/** + * + * Description: + * Date: 2024/4/25 10:09【需求编号】 + * + * @author clam + * @version V1.0.0 + */ +public interface UserReportSensitivePOMapper extends BaseMapper { +} \ No newline at end of file diff --git a/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/mapper/UserReportSubstationPOMapper.java b/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/mapper/UserReportSubstationPOMapper.java new file mode 100644 index 000000000..e73a7b959 --- /dev/null +++ b/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/mapper/UserReportSubstationPOMapper.java @@ -0,0 +1,15 @@ +package com.njcn.device.userledger.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.njcn.supervision.pojo.po.user.UserReportSubstationPO; + +/** + * + * Description: + * Date: 2024/4/25 10:09【需求编号】 + * + * @author clam + * @version V1.0.0 + */ +public interface UserReportSubstationPOMapper extends BaseMapper { +} \ No newline at end of file diff --git a/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/mapper/mapping/UserReportPOMapper.xml b/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/mapper/mapping/UserReportPOMapper.xml new file mode 100644 index 000000000..aebca73b9 --- /dev/null +++ b/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/mapper/mapping/UserReportPOMapper.xml @@ -0,0 +1,61 @@ + + + + + + + + + diff --git a/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/service/IUserReportNormalService.java b/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/service/IUserReportNormalService.java new file mode 100644 index 000000000..d7f25ca15 --- /dev/null +++ b/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/service/IUserReportNormalService.java @@ -0,0 +1,19 @@ +package com.njcn.device.userledger.service; + + +import com.baomidou.mybatisplus.extension.service.IService; +import com.njcn.supervision.pojo.po.user.UserReportNormalPO; + + +/** + *

+ * 干扰源用户常态化管理 服务类 + *

+ * + * @author hongawen + * @since 2024-05-17 + */ +public interface IUserReportNormalService extends IService { + + +} diff --git a/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/service/IUserReportRenewalService.java b/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/service/IUserReportRenewalService.java new file mode 100644 index 000000000..0257a4120 --- /dev/null +++ b/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/service/IUserReportRenewalService.java @@ -0,0 +1,17 @@ +package com.njcn.device.userledger.service; + + +import com.baomidou.mybatisplus.extension.service.IService; +import com.njcn.supervision.pojo.po.user.UserReportRenewalPO; + +/** + *

+ * 用户档案信息表 服务类 + *

+ * + * @author wr + * @since 2024-06-26 + */ +public interface IUserReportRenewalService extends IService { + +} diff --git a/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/service/UserLedgerService.java b/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/service/UserLedgerService.java new file mode 100644 index 000000000..ae74c7fdf --- /dev/null +++ b/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/service/UserLedgerService.java @@ -0,0 +1,93 @@ +package com.njcn.device.userledger.service; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.IService; +import com.njcn.supervision.pojo.param.SensitiveUserParam; +import com.njcn.supervision.pojo.param.user.UserReportParam; +import com.njcn.supervision.pojo.po.user.UserReportPO; +import com.njcn.supervision.pojo.vo.user.NewUserReportVO; +import com.njcn.supervision.pojo.vo.user.UserLedgerVO; +import com.njcn.supervision.pojo.vo.user.UserReportVO; + +import java.util.List; + +/** + * @Description: + * @Author: wr + * @Date: 2026/3/4 9:12 + */ +public interface UserLedgerService extends IService { + + + /** + * 查询用户台账 + * @param userReportParam + * @return + */ + List selectUserList(UserReportParam userReportParam); + + /** + * 查询用户基本详情 + * @param id + * @return + */ + UserLedgerVO selectUserInfo(String id); + + /** + * 绑定用户电站信息 + * @param userId + * @param stationId + * @return + */ + Boolean bindUserStation(String userId,String stationId); + + /** + * 根据ids获取非电网侧用户信息 + * @param ids + * @return + */ + List getUserReportByIds(List ids); + + + /** + * 根据部门获取敏感用户信息 + * @param param + * @return + */ + List getSensitiveUserByDept(SensitiveUserParam param); + + /** + * 分页查询干扰源用户台账 + * @param userReportQueryParam + * @return + */ + Page getUserLedgerPage(UserReportParam.UserReportQueryParam userReportQueryParam); + + /** + * 根据id获取用户档案录入的详细数据 + * @param id + * @return + */ + UserReportVO.UserReportListVO getVOById(String id); + + /** + * 新增干扰源用户 + * @param userReportParam + * @return + */ + String addUserReport(UserReportParam userReportParam); + + /** + * 干扰源接入功能删除流程 + * @param supervisionId + * @return + */ + Boolean deleteUserReport(List supervisionId); + + /** + * 根据id获取用户档案录入数据 + * @param id + * @return + */ + UserReportVO getUserReportById(String id); +} diff --git a/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/service/UserReportProjectPOService.java b/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/service/UserReportProjectPOService.java new file mode 100644 index 000000000..c2c1f5586 --- /dev/null +++ b/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/service/UserReportProjectPOService.java @@ -0,0 +1,17 @@ +package com.njcn.device.userledger.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.njcn.supervision.pojo.po.user.UserReportProjectPO; + +/** + * + * Description: + * Date: 2024/4/25 10:08【需求编号】 + * + * @author clam + * @version V1.0.0 + */ +public interface UserReportProjectPOService extends IService{ + + +} diff --git a/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/service/UserReportSensitivePOService.java b/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/service/UserReportSensitivePOService.java new file mode 100644 index 000000000..f6210cfa1 --- /dev/null +++ b/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/service/UserReportSensitivePOService.java @@ -0,0 +1,17 @@ +package com.njcn.device.userledger.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.njcn.supervision.pojo.po.user.UserReportSensitivePO; + +/** + * + * Description: + * Date: 2024/4/25 10:09【需求编号】 + * + * @author clam + * @version V1.0.0 + */ +public interface UserReportSensitivePOService extends IService{ + + +} diff --git a/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/service/UserReportSubstationPOService.java b/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/service/UserReportSubstationPOService.java new file mode 100644 index 000000000..609f278c4 --- /dev/null +++ b/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/service/UserReportSubstationPOService.java @@ -0,0 +1,17 @@ +package com.njcn.device.userledger.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.njcn.supervision.pojo.po.user.UserReportSubstationPO; + +/** + * + * Description: + * Date: 2024/4/25 10:09【需求编号】 + * + * @author clam + * @version V1.0.0 + */ +public interface UserReportSubstationPOService extends IService{ + + +} diff --git a/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/service/impl/UserLedgerServiceImpl.java b/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/service/impl/UserLedgerServiceImpl.java new file mode 100644 index 000000000..23133b916 --- /dev/null +++ b/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/service/impl/UserLedgerServiceImpl.java @@ -0,0 +1,422 @@ +package com.njcn.device.userledger.service.impl; + +import cn.hutool.core.bean.BeanUtil; +import cn.hutool.core.collection.CollUtil; +import cn.hutool.core.collection.CollectionUtil; +import cn.hutool.core.date.DateUtil; +import cn.hutool.core.util.ObjUtil; +import cn.hutool.core.util.ObjectUtil; +import cn.hutool.core.util.StrUtil; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.njcn.bpm.enums.BpmProcessInstanceStatusEnum; +import com.njcn.bpm.enums.BpmTaskStatusEnum; +import com.njcn.common.pojo.constant.PatternRegex; +import com.njcn.common.pojo.enums.common.DataStateEnum; +import com.njcn.common.pojo.exception.BusinessException; +import com.njcn.device.userledger.mapper.UserReportNormalMapper; +import com.njcn.device.userledger.mapper.UserReportPOMapper; +import com.njcn.device.userledger.service.UserLedgerService; +import com.njcn.device.userledger.service.UserReportProjectPOService; +import com.njcn.device.userledger.service.UserReportSensitivePOService; +import com.njcn.device.userledger.service.UserReportSubstationPOService; +import com.njcn.supervision.enums.FlowStatusEnum; +import com.njcn.supervision.enums.SupervisionResponseEnum; +import com.njcn.supervision.enums.UserNatureEnum; +import com.njcn.supervision.pojo.param.SensitiveUserParam; +import com.njcn.supervision.pojo.param.user.UserReportParam; +import com.njcn.supervision.pojo.po.user.*; +import com.njcn.supervision.pojo.vo.user.NewUserReportVO; +import com.njcn.supervision.pojo.vo.user.UserLedgerVO; +import com.njcn.supervision.pojo.vo.user.UserReportVO; +import com.njcn.user.api.DeptFeignClient; +import com.njcn.user.api.UserFeignClient; +import com.njcn.user.pojo.po.Dept; +import com.njcn.user.pojo.vo.UserVO; +import com.njcn.web.constant.ValidMessage; +import com.njcn.web.factory.PageFactory; +import com.njcn.web.utils.RequestUtil; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.apache.commons.lang3.StringUtils; +import org.springframework.beans.BeanUtils; +import org.springframework.stereotype.Service; + +import java.util.*; +import java.util.regex.Matcher; +import java.util.regex.Pattern; +import java.util.stream.Collectors; +import java.util.stream.Stream; + +/** + * @author wr + * @description + * @date 2026/3/3 16:19 + */ +@Slf4j +@Service +@RequiredArgsConstructor +public class UserLedgerServiceImpl extends ServiceImpl implements UserLedgerService { + + private final DeptFeignClient deptFeignClient; + private final UserReportProjectPOService userReportProjectPOService; + private final UserReportSubstationPOService userReportSubstationPOService; + private final UserReportNormalMapper userReportNormalMapper; + private final UserReportSensitivePOService userReportSensitivePOService; + private final UserFeignClient userFeignClient; + + @Override + public List selectUserList(UserReportParam userReportParam) { + LambdaQueryWrapper lambdaQueryWrapper = new LambdaQueryWrapper<>(); + if (StrUtil.isNotBlank(userReportParam.getCity())) { + lambdaQueryWrapper.in(UserReportPO::getCity, Stream.of(userReportParam.getCity()).collect(Collectors.toList())); + } + if (StrUtil.isNotBlank(userReportParam.getStationId())) { + lambdaQueryWrapper.eq(UserReportPO::getStationId, userReportParam.getStationId()); + } + if (ObjectUtil.isNotNull(userReportParam.getUserType())) { + lambdaQueryWrapper.eq(UserReportPO::getUserType, userReportParam.getUserType()); + } + lambdaQueryWrapper.eq(UserReportPO::getState, DataStateEnum.ENABLE.getCode()); + List list = this.list(lambdaQueryWrapper); + return BeanUtil.copyToList(list, UserLedgerVO.class); + } + + @Override + public UserLedgerVO selectUserInfo(String id) { + LambdaQueryWrapper lambdaQueryWrapper = new LambdaQueryWrapper<>(); + lambdaQueryWrapper.eq(UserReportPO::getId, id).eq(UserReportPO::getState, DataStateEnum.ENABLE.getCode()); + UserReportPO userReportPO = this.getById(id); + if (Objects.nonNull(userReportPO)) { + return BeanUtil.copyProperties(userReportPO, UserLedgerVO.class); + } + return null; + } + + @Override + public Boolean bindUserStation(String userId, String stationId) { + UserReportPO userReportPO = new UserReportPO(); + userReportPO.setId(userId); + userReportPO.setStationId(stationId); + return this.updateById(userReportPO); + } + + @Override + public List getUserReportByIds(List ids) { + List userReportPOS = this.listByIds(ids); + List info = new ArrayList<>(); + for (UserReportPO userReportNormalPO : userReportPOS) { + NewUserReportVO newUserReportVO = new NewUserReportVO(); + + BeanUtil.copyProperties(userReportNormalPO, newUserReportVO); + info.add(newUserReportVO); + } + return info; + } + + @Override + public List getSensitiveUserByDept(SensitiveUserParam param) { + QueryWrapper userReportVOQueryWrapper = new QueryWrapper<>(); + List data = deptFeignClient.getDepSonIdtByDeptId(param.getDeptId()).getData(); + //此处仅查询敏感及重要用户 + userReportVOQueryWrapper.and(wrapper -> + wrapper.in("supervision_user_report.org_id", data) + ) + .eq("supervision_user_report.state", DataStateEnum.ENABLE.getCode()) + .eq("supervision_user_report.user_type", UserNatureEnum.SENSITIVE_USER.getCode()) + .in("supervision_user_report.status", Arrays.asList(FlowStatusEnum.AUDIT.getCode(), FlowStatusEnum.APPROVE.getCode())); + userReportVOQueryWrapper.like(StringUtils.isNotBlank(param.getProjectName()), "supervision_user_report.project_name", param.getProjectName()); + userReportVOQueryWrapper.orderByDesc("supervision_user_report.create_time"); + return this.baseMapper.selectList(userReportVOQueryWrapper); + } + + @Override + public Page getUserLedgerPage(UserReportParam.UserReportQueryParam userReportQueryParam) { + //正则校验 + Pattern pattern = Pattern.compile(PatternRegex.ALL_CHAR_1_20); + Matcher matcher = pattern.matcher(userReportQueryParam.getProjectName()); + if (StringUtils.isNotBlank(userReportQueryParam.getProjectName()) && !matcher.matches()) { + throw new BusinessException(ValidMessage.SEARCH_DATA_ERROR); + } + QueryWrapper userReportVOQueryWrapper = new QueryWrapper<>(); + + //此处仅查询敏感及重要用户 + userReportVOQueryWrapper + .eq("supervision_user_report.state", DataStateEnum.ENABLE.getCode()); + + if (Objects.nonNull(userReportQueryParam)) { + if (StrUtil.isNotBlank(userReportQueryParam.getCity())) { + //查询所有区域下的数据 + userReportVOQueryWrapper.in("supervision_user_report.city", userReportQueryParam.getCity()); + } + if (Objects.nonNull(userReportQueryParam.getDataType())) { + userReportVOQueryWrapper.eq("data_type", userReportQueryParam.getDataType()); + } + userReportVOQueryWrapper.like(StringUtils.isNotBlank(userReportQueryParam.getProjectName()), "supervision_user_report.project_name", userReportQueryParam.getProjectName()); + if (StrUtil.isNotBlank(userReportQueryParam.getSearchBeginTime()) && StrUtil.isNotBlank(userReportQueryParam.getSearchEndTime())) { + userReportVOQueryWrapper.and(wrapper -> wrapper.between("supervision_user_report.report_date", + DateUtil.beginOfDay(DateUtil.parse(userReportQueryParam.getSearchBeginTime())), + DateUtil.endOfDay(DateUtil.parse(userReportQueryParam.getSearchEndTime()))) + .or() + .between("supervision_user_report.expected_production_date", + DateUtil.beginOfDay(DateUtil.parse(userReportQueryParam.getSearchBeginTime())), + DateUtil.endOfDay(DateUtil.parse(userReportQueryParam.getSearchEndTime()))) + ); + } + userReportVOQueryWrapper.orderByDesc("supervision_user_report.Update_Time"); + } + userReportVOQueryWrapper.orderByDesc("supervision_user_report.create_time"); + Page page; + page = this.baseMapper.page(new Page<>(PageFactory.getPageNum(userReportQueryParam), PageFactory.getPageSize(userReportQueryParam)), userReportVOQueryWrapper); + page.getRecords().forEach(temp -> { + Integer needGovernance = 0; + if ( + CollectionUtil.newArrayList( + UserNatureEnum.BUILD_POWER_GRID.getCode(), + UserNatureEnum.EXTEND_POWER_GRID.getCode() + ).contains(temp.getUserType())) { + //电网工程类用户额外数据 + needGovernance = userReportProjectPOService.getById(temp.getId()).getNeedGovernance(); + } else if ( + CollectionUtil.newArrayList( + UserNatureEnum.BUILD_NON_LINEAR_LOAD.getCode(), + UserNatureEnum.EXTEND_NON_LINEAR_LOAD.getCode(), + UserNatureEnum.BUILD_NEW_ENERGY_POWER_STATION.getCode(), + UserNatureEnum.EXTEND_NEW_ENERGY_POWER_STATION.getCode() + ).contains(temp.getUserType())) { + //非线性负荷用户 & 新能源发电站用户 + + needGovernance = userReportSubstationPOService.getById(temp.getId()).getNeedGovernance(); + } else if (UserNatureEnum.SENSITIVE_USER.getCode().equals(temp.getUserType())) { + // 敏感及重要用户 + needGovernance = userReportSensitivePOService.getById(temp.getId()).getNeedGovernance(); + } + temp.setNeedGovernance(needGovernance); + //添加治理评估文件,需先判断入网评估是否审核通过 + boolean type = true; + if (1 == temp.getNeedGovernance()) { + List list = userReportNormalMapper.selectList(new LambdaQueryWrapper() + .eq(UserReportNormalPO::getUserReportId, temp.getId()) + .eq(UserReportNormalPO::getState, DataStateEnum.ENABLE.getCode()) + .ne(UserReportNormalPO::getStatus, BpmTaskStatusEnum.CANCEL.getStatus()) + .eq(UserReportNormalPO::getType, 0) + .orderByDesc(UserReportNormalPO::getCreateTime) + ); + if (CollUtil.isNotEmpty(list)) { + List collect = list.stream().filter(x -> !Objects.equals(x.getStatus(), BpmTaskStatusEnum.APPROVE.getStatus())) + .map(UserReportNormalPO::getId) + .collect(Collectors.toList()); + if (CollUtil.isNotEmpty(collect)) { + type = false; + } + } else { + type = false; + } + } + temp.setType(type); + }); + return page; + } + + @Override + public UserReportVO.UserReportListVO getVOById(String id) { + UserReportVO.UserReportListVO userReportVO = new UserReportVO.UserReportListVO(); + UserReportPO userReportPO = this.baseMapper.selectById(id); + //复制基础信息 + BeanUtil.copyProperties(userReportPO, userReportVO); + //处理特殊字段,用户名、部门名 + if (StrUtil.isNotBlank(userReportPO.getReporter())){ + UserVO userVO = userFeignClient.getUserById(userReportPO.getReporter()).getData(); + if(ObjUtil.isNotNull(userVO)){ + userReportVO.setReporter(userVO.getName()); + + } + } + if (StrUtil.isNotBlank(userReportPO.getReporter())){ + Dept dept = deptFeignClient.getDeptById(userReportPO.getOrgId()).getData(); + if(ObjUtil.isNotNull(dept)){ + userReportVO.setOrgName(dept.getName()); + } + } + /* + 根据用户性质获取自己特有的字段,此处需要特殊处理 + 1、每个附件需要返回文件名称以及可以预览的url + todo...by黄正剑 + */ + if ( + CollectionUtil.newArrayList( + UserNatureEnum.BUILD_POWER_GRID.getCode(), + UserNatureEnum.EXTEND_POWER_GRID.getCode() + ).contains(userReportPO.getUserType())) { + //电网工程类用户额外数据 + UserReportProjectPO byId = userReportProjectPOService.getById(id); + userReportVO.setUserReportProjectPO(byId); + + } else if ( + CollectionUtil.newArrayList( + UserNatureEnum.BUILD_NON_LINEAR_LOAD.getCode(), + UserNatureEnum.EXTEND_NON_LINEAR_LOAD.getCode(), + UserNatureEnum.BUILD_NEW_ENERGY_POWER_STATION.getCode(), + UserNatureEnum.EXTEND_NEW_ENERGY_POWER_STATION.getCode() + ).contains(userReportPO.getUserType())) { + //非线性负荷用户 & 新能源发电站用户 + UserReportSubstationPO byId = userReportSubstationPOService.getById(id); + userReportSubstationPOService.saveOrUpdate(byId); + userReportVO.setUserReportSubstationPO(byId); + } else if (UserNatureEnum.SENSITIVE_USER.getCode().equals(userReportPO.getUserType())) { + // 敏感及重要用户 + UserReportSensitivePO byId = userReportSensitivePOService.getById(id); + userReportVO.setUserReportSensitivePO(byId); + } + List list = userReportNormalMapper.selectList(new LambdaQueryWrapper() + .eq(UserReportNormalPO::getUserReportId, id) + .eq(UserReportNormalPO::getStatus, BpmTaskStatusEnum.APPROVE.getStatus()) + .eq(UserReportNormalPO::getState, DataStateEnum.ENABLE.getCode()) + .orderByDesc(UserReportNormalPO::getCreateTime) + ); + Optional netInReport = list.stream().filter(x -> 0 == x.getType()).map(UserReportNormalPO::getReportUrl).findFirst(); + Optional governReport = list.stream().filter(x -> 1 == x.getType()).map(UserReportNormalPO::getReportUrl).findFirst(); + Optional simulationReport = list.stream().filter(x -> 1 == x.getType()).map(UserReportNormalPO::getSimulationReportUrl).findFirst(); + userReportVO.setNetInReport(Collections.singletonList(netInReport.orElse(null))); + userReportVO.setGovernReport(Collections.singletonList(governReport.orElse(null))); + userReportVO.setSimulationReport(Collections.singletonList(simulationReport.orElse(null))); + return userReportVO; + } + + @Override + public String addUserReport(UserReportParam userReportParam) { + UserReportPO userReportPO = new UserReportPO(); + BeanUtils.copyProperties(userReportParam, userReportPO); + userReportPO.setState(DataStateEnum.ENABLE.getCode()); + if (Objects.equals(userReportParam.getSaveOrCheckflag(), "2")) { + checkProjectName(userReportParam, !StringUtils.isEmpty(userReportParam.getId())); + } + //判断工程名称是否有重复的 + if (Objects.equals(userReportParam.getSaveOrCheckflag(), "1")) { + userReportPO.setStatus(BpmTaskStatusEnum.WAIT.getStatus()); + checkProjectName(userReportParam, !StringUtils.isEmpty(userReportParam.getId())); + } else { + //常态化干扰源用户信息更新的用的 + if (!Objects.equals(userReportParam.getSaveOrCheckflag(), "0")) { + userReportPO.setStatus(BpmTaskStatusEnum.RUNNING.getStatus()); + } + } + if (ObjectUtil.isNotNull(userReportParam.getDataType())) { + userReportPO.setDataType(userReportParam.getDataType()); + if (userReportParam.getDataType() == 1) { + if (UserNatureEnum.SENSITIVE_USER.getCode().equals(userReportParam.getUserType())) { + userReportPO.setStatus(BpmTaskStatusEnum.APPROVE.getStatus()); + } + } + } else { + userReportPO.setDataType(0); + } + this.saveOrUpdate(userReportPO); + userReportPO = this.getById(userReportPO.getId()); + if ( + CollectionUtil.newArrayList( + UserNatureEnum.BUILD_POWER_GRID.getCode(), + UserNatureEnum.EXTEND_POWER_GRID.getCode() + ).contains(userReportPO.getUserType())) { + //电网工程类用户额外数据 + UserReportProjectPO userReportProjectPO = userReportParam.getUserReportProjectPO(); + userReportProjectPO.setId(userReportPO.getId()); + userReportProjectPO.setState(DataStateEnum.ENABLE.getCode()); + userReportProjectPOService.saveOrUpdate(userReportProjectPO); + } else if ( + CollectionUtil.newArrayList( + UserNatureEnum.BUILD_NON_LINEAR_LOAD.getCode(), + UserNatureEnum.EXTEND_NON_LINEAR_LOAD.getCode(), + UserNatureEnum.BUILD_NEW_ENERGY_POWER_STATION.getCode(), + UserNatureEnum.EXTEND_NEW_ENERGY_POWER_STATION.getCode() + ).contains(userReportPO.getUserType())) { + //非线性负荷用户 & 新能源发电站用户 + UserReportSubstationPO userReportSubstationPO = userReportParam.getUserReportSubstationPO(); + userReportSubstationPO.setId(userReportPO.getId()); + userReportSubstationPO.setState(DataStateEnum.ENABLE.getCode()); + userReportSubstationPOService.saveOrUpdate(userReportSubstationPO); + } else if (UserNatureEnum.SENSITIVE_USER.getCode().equals(userReportPO.getUserType())) { + // 敏感及重要用户 + UserReportSensitivePO userReportSensitivePO = userReportParam.getUserReportSensitivePO(); + userReportSensitivePO.setId(userReportPO.getId()); + userReportSensitivePO.setState(DataStateEnum.ENABLE.getCode()); + userReportSensitivePOService.saveOrUpdate(userReportSensitivePO); + } + return userReportPO.getId(); + } + + @Override + public Boolean deleteUserReport(List supervisionId) { + List userReportPOS = this.listByIds(supervisionId); + if (CollUtil.isEmpty(userReportPOS)) { + throw new BusinessException(SupervisionResponseEnum.EXISTENCE_OR_NOT); + } + //先判断是否是删除管理员,如果是就有全部删除权限,否则就只能删除带提交审批的 + List deleteUser = userReportPOS.stream().map(UserReportPO::getCreateBy).distinct().collect(Collectors.toList()); + long statusCount = userReportPOS.stream().filter(x -> !BpmTaskStatusEnum.WAIT.getStatus().equals(x.getStatus())).count(); + //判断是否有权限操作 + if (CollUtil.isEmpty(deleteUser)) { + throw new BusinessException(SupervisionResponseEnum.EXISTENCE_OR_NOT); + } + //如果为空则需要判断信息,先判断全部数据是否都是自己创建的,然后判断是否是都是带提交数据 + if (CollUtil.isEmpty(deleteUser)) { + long count = deleteUser.stream().filter(x -> !RequestUtil.getUserIndex().equals(x)).count(); + if (count > 0) { + throw new BusinessException(SupervisionResponseEnum.NO_POWER); + } else { + if (statusCount > 0) { + throw new BusinessException(SupervisionResponseEnum.DELETE_TO_BE_SUBMITTED); + } + } + } + return this.update(new LambdaUpdateWrapper().set(UserReportPO::getState, DataStateEnum.DELETED.getCode()) + .in(UserReportPO::getId, supervisionId)); + } + + @Override + public UserReportVO getUserReportById(String id) { + QueryWrapper userReportVOQueryWrapper = new QueryWrapper<>(); + userReportVOQueryWrapper.eq("supervision_user_report.id", id); + return this.baseMapper.getUserReportById(userReportVOQueryWrapper); + } + + /** + * 判断工程名称是否重复,如果重复则提示用户XXX已经创建该工程 + * + * @param userReportParam 用户申请数据 + * @param isExcludeSelf 是否排除自己,一般新增不排除,更新时需要排除自己 + */ + protected void checkProjectName(UserReportParam userReportParam, boolean isExcludeSelf) { + if (!StringUtils.isEmpty(userReportParam.getProjectName())) { + LambdaQueryWrapper userReportPOLambdaQueryWrapper = new LambdaQueryWrapper<>(); + userReportPOLambdaQueryWrapper + .eq(UserReportPO::getProjectName, userReportParam.getProjectName()) + .in(UserReportPO::getStatus, CollectionUtil.newArrayList(BpmProcessInstanceStatusEnum.AWAIT.getStatus(), BpmProcessInstanceStatusEnum.RUNNING.getStatus(), BpmProcessInstanceStatusEnum.APPROVE.getStatus())) + .eq(UserReportPO::getState, DataStateEnum.ENABLE.getCode()); + //更新的时候,需排除当前记录 + if (isExcludeSelf) { + if (userReportParam instanceof UserReportParam.UserReportUpdate) { + userReportPOLambdaQueryWrapper.ne(UserReportPO::getId, ((UserReportParam.UserReportUpdate) userReportParam).getId()); + } else { + userReportPOLambdaQueryWrapper.ne(UserReportPO::getId, (userReportParam).getId()); + } + } + List userReportPOList = this.baseMapper.selectList(userReportPOLambdaQueryWrapper); + if (CollectionUtil.isNotEmpty(userReportPOList)) { + //过滤已取消的申请 + userReportPOList = userReportPOList.stream() + .filter(userReportPO -> !userReportPO.getStatus().equals(FlowStatusEnum.CANCEL.getCode())) + .collect(Collectors.toList()); + //如果还存在,则说明有人申请过了 + if (CollectionUtil.isNotEmpty(userReportPOList)) { + UserVO userVO = userFeignClient.getUserById(userReportPOList.get(0).getReporter()).getData(); + throw new BusinessException(userReportParam.getProjectName().concat(",该工程已被:").concat(userVO.getName()).concat("申请")); + } + } + } + + } +} diff --git a/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/service/impl/UserReportNormalServiceImpl.java b/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/service/impl/UserReportNormalServiceImpl.java new file mode 100644 index 000000000..19c1cf317 --- /dev/null +++ b/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/service/impl/UserReportNormalServiceImpl.java @@ -0,0 +1,26 @@ +package com.njcn.device.userledger.service.impl; + + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.njcn.device.userledger.mapper.UserReportNormalMapper; +import com.njcn.device.userledger.service.IUserReportNormalService; +import com.njcn.supervision.pojo.po.user.UserReportNormalPO; +import lombok.RequiredArgsConstructor; +import org.springframework.stereotype.Service; + + +/** + *

+ * 干扰源用户常态化管理 服务实现类 + *

+ * + * @author hongawen + * @since 2024-05-17 + */ +@Service +@RequiredArgsConstructor +public class UserReportNormalServiceImpl extends ServiceImpl implements IUserReportNormalService { + + + +} diff --git a/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/service/impl/UserReportProjectPOServiceImpl.java b/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/service/impl/UserReportProjectPOServiceImpl.java new file mode 100644 index 000000000..d077332a0 --- /dev/null +++ b/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/service/impl/UserReportProjectPOServiceImpl.java @@ -0,0 +1,19 @@ +package com.njcn.device.userledger.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.njcn.device.userledger.mapper.UserReportProjectPOMapper; +import com.njcn.device.userledger.service.UserReportProjectPOService; +import com.njcn.supervision.pojo.po.user.UserReportProjectPO; +import org.springframework.stereotype.Service; +/** + * + * Description: + * Date: 2024/4/25 10:08【需求编号】 + * + * @author clam + * @version V1.0.0 + */ +@Service +public class UserReportProjectPOServiceImpl extends ServiceImpl implements UserReportProjectPOService { + +} diff --git a/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/service/impl/UserReportRenewalServiceImpl.java b/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/service/impl/UserReportRenewalServiceImpl.java new file mode 100644 index 000000000..cfc57eda1 --- /dev/null +++ b/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/service/impl/UserReportRenewalServiceImpl.java @@ -0,0 +1,23 @@ +package com.njcn.device.userledger.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.njcn.device.userledger.mapper.UserReportRenewalMapper; +import com.njcn.device.userledger.service.IUserReportRenewalService; +import com.njcn.supervision.pojo.po.user.UserReportRenewalPO; +import lombok.RequiredArgsConstructor; +import org.springframework.stereotype.Service; + + +/** + *

+ * 用户档案信息表 服务实现类 + *

+ * + * @author wr + * @since 2024-06-26 + */ +@Service +@RequiredArgsConstructor +public class UserReportRenewalServiceImpl extends ServiceImpl implements IUserReportRenewalService { + +} diff --git a/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/service/impl/UserReportSensitivePOServiceImpl.java b/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/service/impl/UserReportSensitivePOServiceImpl.java new file mode 100644 index 000000000..5888232d6 --- /dev/null +++ b/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/service/impl/UserReportSensitivePOServiceImpl.java @@ -0,0 +1,19 @@ +package com.njcn.device.userledger.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.njcn.device.userledger.mapper.UserReportSensitivePOMapper; +import com.njcn.device.userledger.service.UserReportSensitivePOService; +import com.njcn.supervision.pojo.po.user.UserReportSensitivePO; +import org.springframework.stereotype.Service; +/** + * + * Description: + * Date: 2024/4/25 10:09【需求编号】 + * + * @author clam + * @version V1.0.0 + */ +@Service +public class UserReportSensitivePOServiceImpl extends ServiceImpl implements UserReportSensitivePOService { + +} diff --git a/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/service/impl/UserReportSubstationPOServiceImpl.java b/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/service/impl/UserReportSubstationPOServiceImpl.java new file mode 100644 index 000000000..006a93ace --- /dev/null +++ b/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/userledger/service/impl/UserReportSubstationPOServiceImpl.java @@ -0,0 +1,19 @@ +package com.njcn.device.userledger.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.njcn.device.userledger.mapper.UserReportSubstationPOMapper; +import com.njcn.device.userledger.service.UserReportSubstationPOService; +import com.njcn.supervision.pojo.po.user.UserReportSubstationPO; +import org.springframework.stereotype.Service; +/** + * + * Description: + * Date: 2024/4/25 10:09【需求编号】 + * + * @author clam + * @version V1.0.0 + */ +@Service +public class UserReportSubstationPOServiceImpl extends ServiceImpl implements UserReportSubstationPOService { + +} diff --git a/pqs-event/event-boot/src/main/java/com/njcn/event/service/majornetwork/Impl/VoltageRideThroughEventServiceImpl.java b/pqs-event/event-boot/src/main/java/com/njcn/event/service/majornetwork/Impl/VoltageRideThroughEventServiceImpl.java index 64ebc6b8d..cb501c05e 100644 --- a/pqs-event/event-boot/src/main/java/com/njcn/event/service/majornetwork/Impl/VoltageRideThroughEventServiceImpl.java +++ b/pqs-event/event-boot/src/main/java/com/njcn/event/service/majornetwork/Impl/VoltageRideThroughEventServiceImpl.java @@ -5,6 +5,7 @@ import cn.hutool.core.collection.CollUtil; import cn.hutool.core.date.DateUtil; import com.njcn.device.pq.api.DeptLineFeignClient; import com.njcn.device.pq.api.LineFeignClient; +import com.njcn.device.pq.api.UserLedgerFeignClient; import com.njcn.device.pq.pojo.vo.LineDetailDataVO; import com.njcn.event.pojo.param.VoltageRideThroughQueryParam; import com.njcn.event.pojo.po.EventDetail; @@ -14,7 +15,6 @@ import com.njcn.event.common.service.EventDetailService; import com.njcn.event.service.majornetwork.SpThroughService; import com.njcn.event.service.majornetwork.VoltageRideThroughEventService; import com.njcn.event.pojo.param.SpThroughParam; -import com.njcn.supervision.api.UserLedgerFeignClient; import com.njcn.supervision.pojo.vo.user.NewUserReportVO; import com.njcn.system.api.AreaFeignClient; import com.njcn.system.pojo.po.Area; diff --git a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/impl/AnalyzeServiceImpl.java b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/impl/AnalyzeServiceImpl.java index d59a175a0..db90a344a 100644 --- a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/impl/AnalyzeServiceImpl.java +++ b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/impl/AnalyzeServiceImpl.java @@ -13,6 +13,7 @@ import com.google.common.collect.Lists; import com.njcn.common.config.GeneralInfo; import com.njcn.device.pq.api.GeneralDeviceInfoClient; import com.njcn.device.pq.api.LineFeignClient; +import com.njcn.device.pq.api.UserLedgerFeignClient; import com.njcn.device.pq.pojo.dto.GeneralDeviceDTO; import com.njcn.device.pq.pojo.dto.OverLimitLineDTO; import com.njcn.device.pq.pojo.dto.PollutionParamDTO; @@ -36,7 +37,6 @@ import com.njcn.harmonic.pojo.vo.WarningSubstationVO; import com.njcn.harmonic.mapper.RStatLimitRateDMapper; import com.njcn.harmonic.service.IAnalyzeService; import com.njcn.poi.excel.ExcelUtil; -import com.njcn.supervision.api.UserLedgerFeignClient; import com.njcn.supervision.pojo.param.user.UserReportParam; import com.njcn.supervision.pojo.vo.user.UserLedgerVO; import com.njcn.system.api.DicDataFeignClient; @@ -82,7 +82,6 @@ public class AnalyzeServiceImpl implements IAnalyzeService { private final RStatLimitTargetMapper targetMapper; private final EventDetailFeignClient eventDetailFeignClient; private final DicDataFeignClient dicDataFeignClient; - private final UserLedgerFeignClient userLedgerFeignClient; @Override diff --git a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/impl/ComAssessServiceImpl.java b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/impl/ComAssessServiceImpl.java index d985d45e1..3627d2685 100644 --- a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/impl/ComAssessServiceImpl.java +++ b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/impl/ComAssessServiceImpl.java @@ -1,6 +1,5 @@ package com.njcn.harmonic.service.impl; -import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.collection.CollUtil; import cn.hutool.core.date.DateUtil; import cn.hutool.core.util.StrUtil; @@ -13,22 +12,19 @@ import com.njcn.device.pms.pojo.dto.PmsGeneralDeviceDTO; import com.njcn.device.pms.pojo.param.PmsDeviceInfoParam; import com.njcn.device.pq.api.GeneralDeviceInfoClient; import com.njcn.device.pq.api.LineFeignClient; -import com.njcn.device.pq.enums.LineBaseEnum; +import com.njcn.device.pq.api.UserLedgerFeignClient; import com.njcn.device.pq.pojo.dto.GeneralDeviceDTO; import com.njcn.device.biz.pojo.dto.PollutionLineDTO; import com.njcn.device.pq.pojo.dto.PollutionParamDTO; import com.njcn.device.pq.pojo.param.DeviceInfoParam; -import com.njcn.device.pq.pojo.po.Line; import com.njcn.device.pq.pojo.po.LineDetail; import com.njcn.harmonic.mapper.RStatComassesDMapper; import com.njcn.harmonic.pojo.dto.ComAssessDTO; import com.njcn.harmonic.pojo.po.PQSComAssesPO; import com.njcn.harmonic.pojo.po.day.RStatComassesDPO; import com.njcn.harmonic.pojo.vo.ComAssessVO; -import com.njcn.harmonic.pojo.vo.PollutionVO; import com.njcn.harmonic.service.ComAssessService; import com.njcn.harmonic.utils.HarmonicComAssesUtil; -import com.njcn.supervision.api.UserLedgerFeignClient; import com.njcn.supervision.pojo.param.user.UserReportParam; import com.njcn.supervision.pojo.vo.user.UserLedgerVO; import com.njcn.system.api.DicDataFeignClient; diff --git a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/impl/HarmonicServiceImpl.java b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/impl/HarmonicServiceImpl.java index 795ce767d..669e690dd 100644 --- a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/impl/HarmonicServiceImpl.java +++ b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/impl/HarmonicServiceImpl.java @@ -11,12 +11,12 @@ import com.njcn.common.config.GeneralInfo; import com.njcn.device.pq.api.GeneralDeviceInfoClient; import com.njcn.device.pq.api.LineFeignClient; import com.njcn.device.pq.api.SubstationFeignClient; +import com.njcn.device.pq.api.UserLedgerFeignClient; import com.njcn.device.pq.enums.LineBaseEnum; import com.njcn.device.pq.enums.PowerFlagEnum; import com.njcn.device.pq.pojo.dto.GeneralDeviceDTO; import com.njcn.device.biz.pojo.dto.PollutionLineDTO; import com.njcn.device.pq.pojo.dto.PollutionParamDTO; -import com.njcn.device.pq.pojo.po.Line; import com.njcn.device.pq.pojo.po.LineDetail; import com.njcn.device.pq.pojo.vo.LineDeviceStateVO; import com.njcn.harmonic.constant.Param; @@ -27,7 +27,6 @@ import com.njcn.harmonic.pojo.po.LimitTarget; import com.njcn.harmonic.pojo.po.day.RStatLimitTargetDPO; import com.njcn.harmonic.pojo.vo.*; import com.njcn.harmonic.service.IHarmonicService; -import com.njcn.supervision.api.UserLedgerFeignClient; import com.njcn.supervision.pojo.param.user.UserReportParam; import com.njcn.supervision.pojo.vo.user.UserLedgerVO; import com.njcn.system.enums.DicDataEnum; @@ -57,15 +56,10 @@ import java.util.stream.Stream; public class HarmonicServiceImpl implements IHarmonicService { private final GeneralDeviceInfoClient generalDeviceInfoClient; - private final GeneralInfo generalInfo; - private final LineFeignClient lineFeignClient; - private final RStatLimitTargetDMapper targetDMapper; - private final UserLedgerFeignClient userLedgerFeignClient; - private final SubstationFeignClient substationFeignClient; @Override 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 4223ce883..a83de26ac 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 @@ -33,6 +33,7 @@ import com.njcn.device.pms.pojo.po.Monitor; import com.njcn.device.pq.api.GeneralDeviceInfoClient; import com.njcn.device.pq.api.LineFeignClient; import com.njcn.device.pq.api.SubstationFeignClient; +import com.njcn.device.pq.api.UserLedgerFeignClient; import com.njcn.device.pq.enums.LineBaseEnum; import com.njcn.device.pq.enums.PowerFlagEnum; import com.njcn.device.pq.pojo.dto.*; @@ -61,8 +62,6 @@ import com.njcn.harmonic.pojo.vo.SubstationVo; import com.njcn.harmonic.mapper.RStatLimitRateDMapper; import com.njcn.harmonic.service.PollutionSubstationService; import com.njcn.poi.excel.ExcelUtil; -import com.njcn.supervision.api.UserLedgerFeignClient; -import com.njcn.supervision.api.UserReportManageFeignClient; import com.njcn.supervision.pojo.param.SensitiveUserParam; import com.njcn.supervision.pojo.param.user.UserReportParam; import com.njcn.supervision.pojo.po.user.UserReportPO; @@ -133,7 +132,6 @@ public class PollutionSubstationServiceImpl extends ServiceImpl userReportPOList = userReportManageFeignClient.getSensitiveUserByDept(sensitiveUserParam).getData(); + List userReportPOList = userLedgerFeignClient.getSensitiveUserByDept(sensitiveUserParam).getData(); if (CollectionUtil.isNotEmpty(userReportPOList)) { userReportPOList.forEach(item -> { diff --git a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/impl/SteadyExceedRateServiceImpl.java b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/impl/SteadyExceedRateServiceImpl.java index 2ac66c824..85262df81 100644 --- a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/impl/SteadyExceedRateServiceImpl.java +++ b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/impl/SteadyExceedRateServiceImpl.java @@ -9,6 +9,7 @@ import cn.hutool.core.util.NumberUtil; import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.njcn.device.pq.api.GeneralDeviceInfoClient; +import com.njcn.device.pq.api.UserLedgerFeignClient; import com.njcn.device.pq.enums.LineBaseEnum; import com.njcn.device.pq.enums.PowerFlagEnum; import com.njcn.device.pq.pojo.dto.GeneralDeviceDTO; @@ -24,7 +25,6 @@ import com.njcn.harmonic.mapper.RStatLimitRateDMapper; import com.njcn.harmonic.service.SteadyExceedRateService; import com.njcn.harmonic.utils.PubUtils; import com.njcn.influx.pojo.constant.InfluxDBTableConstant; -import com.njcn.supervision.api.UserLedgerFeignClient; import com.njcn.supervision.pojo.param.user.UserReportParam; import com.njcn.supervision.pojo.vo.user.UserLedgerVO; import lombok.AllArgsConstructor; diff --git a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/impl/SteadyQualifyServiceImpl.java b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/impl/SteadyQualifyServiceImpl.java index fd44252e7..ae2c15aa2 100644 --- a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/impl/SteadyQualifyServiceImpl.java +++ b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/impl/SteadyQualifyServiceImpl.java @@ -9,6 +9,7 @@ import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.njcn.device.pq.api.GeneralDeviceInfoClient; import com.njcn.device.pq.api.LineFeignClient; +import com.njcn.device.pq.api.UserLedgerFeignClient; import com.njcn.device.pq.enums.LineBaseEnum; import com.njcn.device.pq.pojo.dto.GeneralDeviceDTO; import com.njcn.device.pq.pojo.param.DeviceInfoParam; @@ -21,7 +22,6 @@ import com.njcn.harmonic.pojo.vo.SteadyQualifyDetailVO; import com.njcn.harmonic.pojo.vo.SteadyQualifyVO; import com.njcn.harmonic.service.SteadyQualifyService; import com.njcn.harmonic.utils.PubUtils; -import com.njcn.supervision.api.UserLedgerFeignClient; import com.njcn.supervision.pojo.param.user.UserReportParam; import com.njcn.supervision.pojo.vo.user.UserLedgerVO; import lombok.AllArgsConstructor; diff --git a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/impl/THDistortionServiceImpl.java b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/impl/THDistortionServiceImpl.java index 1fbd59c5e..2ff97cec5 100644 --- a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/impl/THDistortionServiceImpl.java +++ b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/impl/THDistortionServiceImpl.java @@ -10,6 +10,7 @@ import com.njcn.common.pojo.dto.SimpleDTO; import com.njcn.common.pojo.param.StatisticsBizBaseParam; import com.njcn.device.pq.api.GeneralDeviceInfoClient; import com.njcn.device.pq.api.LineFeignClient; +import com.njcn.device.pq.api.UserLedgerFeignClient; import com.njcn.device.pq.enums.LineBaseEnum; import com.njcn.device.pq.enums.PowerFlagEnum; import com.njcn.device.pq.pojo.dto.GeneralDeviceDTO; @@ -25,7 +26,6 @@ import com.njcn.harmonic.pojo.vo.THDistortionCensusVO; import com.njcn.harmonic.pojo.vo.THDistortionVO; import com.njcn.harmonic.service.THDistortionService; import com.njcn.harmonic.utils.PubUtils; -import com.njcn.supervision.api.UserLedgerFeignClient; import com.njcn.supervision.pojo.param.user.UserReportParam; import com.njcn.supervision.pojo.vo.user.UserLedgerVO; import lombok.AllArgsConstructor; diff --git a/pqs-supervision/supervision-api/src/main/java/com/njcn/supervision/api/UserLedgerFeignClient.java b/pqs-supervision/supervision-api/src/main/java/com/njcn/supervision/api/UserLedgerOldFeignClient.java similarity index 86% rename from pqs-supervision/supervision-api/src/main/java/com/njcn/supervision/api/UserLedgerFeignClient.java rename to pqs-supervision/supervision-api/src/main/java/com/njcn/supervision/api/UserLedgerOldFeignClient.java index a86e0bb25..067cf197f 100644 --- a/pqs-supervision/supervision-api/src/main/java/com/njcn/supervision/api/UserLedgerFeignClient.java +++ b/pqs-supervision/supervision-api/src/main/java/com/njcn/supervision/api/UserLedgerOldFeignClient.java @@ -2,7 +2,7 @@ package com.njcn.supervision.api; import com.njcn.common.pojo.constant.ServerInfo; import com.njcn.common.pojo.response.HttpResult; -import com.njcn.supervision.api.fallback.UserLedgerFeignClientFallbackFactory; +import com.njcn.supervision.api.fallback.UserLedgerOldFeignClientFallbackFactory; import com.njcn.supervision.pojo.param.user.UserReportParam; import com.njcn.supervision.pojo.vo.user.NewUserReportVO; import com.njcn.supervision.pojo.vo.user.UserLedgerVO; @@ -19,8 +19,8 @@ import java.util.List; * 流程实例 Api 接口 * */ -@FeignClient(value = ServerInfo.SUPERVISION, path = "/userReport", fallbackFactory = UserLedgerFeignClientFallbackFactory.class) -public interface UserLedgerFeignClient { +@FeignClient(value = ServerInfo.SUPERVISION, path = "/userReport", fallbackFactory = UserLedgerOldFeignClientFallbackFactory.class) +public interface UserLedgerOldFeignClient { @PostMapping("/selectUserList") diff --git a/pqs-supervision/supervision-api/src/main/java/com/njcn/supervision/api/UserReportManageFeignClient.java b/pqs-supervision/supervision-api/src/main/java/com/njcn/supervision/api/UserReportManageOldFeignClient.java similarity index 81% rename from pqs-supervision/supervision-api/src/main/java/com/njcn/supervision/api/UserReportManageFeignClient.java rename to pqs-supervision/supervision-api/src/main/java/com/njcn/supervision/api/UserReportManageOldFeignClient.java index d93980a2c..e4bf61bfd 100644 --- a/pqs-supervision/supervision-api/src/main/java/com/njcn/supervision/api/UserReportManageFeignClient.java +++ b/pqs-supervision/supervision-api/src/main/java/com/njcn/supervision/api/UserReportManageOldFeignClient.java @@ -2,7 +2,7 @@ package com.njcn.supervision.api; import com.njcn.common.pojo.constant.ServerInfo; import com.njcn.common.pojo.response.HttpResult; -import com.njcn.supervision.api.fallback.UserReportFeignClientFallbackFactory; +import com.njcn.supervision.api.fallback.UserReportOldFeignClientFallbackFactory; import com.njcn.supervision.pojo.param.SensitiveUserParam; import com.njcn.supervision.pojo.po.user.UserReportPO; import io.swagger.annotations.ApiOperation; @@ -18,8 +18,8 @@ import java.util.List; * * @author 徐扬 */ -@FeignClient(value = ServerInfo.SUPERVISION, path = "/userReport", fallbackFactory = UserReportFeignClientFallbackFactory.class) -public interface UserReportManageFeignClient { +@FeignClient(value = ServerInfo.SUPERVISION, path = "/userReport", fallbackFactory = UserReportOldFeignClientFallbackFactory.class) +public interface UserReportManageOldFeignClient { @PostMapping("/getSensitiveUserByDept") diff --git a/pqs-supervision/supervision-api/src/main/java/com/njcn/supervision/api/fallback/UserReportFeignClientFallbackFactory.java b/pqs-supervision/supervision-api/src/main/java/com/njcn/supervision/api/fallback/UserReportOldFeignClientFallbackFactory.java similarity index 81% rename from pqs-supervision/supervision-api/src/main/java/com/njcn/supervision/api/fallback/UserReportFeignClientFallbackFactory.java rename to pqs-supervision/supervision-api/src/main/java/com/njcn/supervision/api/fallback/UserReportOldFeignClientFallbackFactory.java index baa66be57..c03469393 100644 --- a/pqs-supervision/supervision-api/src/main/java/com/njcn/supervision/api/fallback/UserReportFeignClientFallbackFactory.java +++ b/pqs-supervision/supervision-api/src/main/java/com/njcn/supervision/api/fallback/UserReportOldFeignClientFallbackFactory.java @@ -3,7 +3,7 @@ package com.njcn.supervision.api.fallback; import com.njcn.common.pojo.enums.response.CommonResponseEnum; import com.njcn.common.pojo.exception.BusinessException; import com.njcn.common.pojo.response.HttpResult; -import com.njcn.supervision.api.UserReportManageFeignClient; +import com.njcn.supervision.api.UserReportManageOldFeignClient; import com.njcn.supervision.pojo.param.SensitiveUserParam; import com.njcn.supervision.pojo.po.user.UserReportPO; import com.njcn.supervision.utils.SupervisionEnumUtil; @@ -16,9 +16,9 @@ import java.util.List; @Slf4j @Component -public class UserReportFeignClientFallbackFactory implements FallbackFactory { +public class UserReportOldFeignClientFallbackFactory implements FallbackFactory { @Override - public UserReportManageFeignClient create(Throwable throwable) { + public UserReportManageOldFeignClient create(Throwable throwable) { //判断抛出异常是否为解码器抛出的业务异常 Enum exceptionEnum = CommonResponseEnum.SERVICE_FALLBACK; if (throwable.getCause() instanceof BusinessException) { @@ -26,7 +26,7 @@ public class UserReportFeignClientFallbackFactory implements FallbackFactory finalExceptionEnum = exceptionEnum; - return new UserReportManageFeignClient() { + return new UserReportManageOldFeignClient() { @Override public HttpResult> getSensitiveUserByDept(SensitiveUserParam param) {