diff --git a/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/api/line/NormalLimitFeignClient.java b/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/api/line/NormalLimitFeignClient.java deleted file mode 100644 index 585c6a967..000000000 --- a/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/api/line/NormalLimitFeignClient.java +++ /dev/null @@ -1,32 +0,0 @@ -package com.njcn.prepare.harmonic.api.line; - -import com.njcn.common.pojo.constant.ServerInfo; -import com.njcn.common.pojo.response.HttpResult; -import com.njcn.prepare.harmonic.api.line.fallback.NormalFeignClientFallbackFactory; -import com.njcn.prepare.harmonic.pojo.param.LineParam; -import org.springframework.cloud.openfeign.FeignClient; -import org.springframework.validation.annotation.Validated; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; - -/** - * - * @author denghaujun - * @date 2022/10/20 - */ -@FeignClient( - value = ServerInfo.PREPARE_BOOT,//对应模块名 - path = "/normalLimit",//对应controller请求类 - fallbackFactory = NormalFeignClientFallbackFactory.class//服务降级处理类 -) -public interface NormalLimitFeignClient { - - /** - * - * @author denghaujun - * @date 2022/10/19 - */ - @PostMapping("/getNormLimitData") - HttpResult getNormLimitData(@RequestBody @Validated LineParam lineParam) ; - -} diff --git a/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/api/line/fallback/NormalFeignClientFallbackFactory.java b/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/api/line/fallback/NormalFeignClientFallbackFactory.java deleted file mode 100644 index efb18621f..000000000 --- a/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/api/line/fallback/NormalFeignClientFallbackFactory.java +++ /dev/null @@ -1,38 +0,0 @@ -package com.njcn.prepare.harmonic.api.line.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.prepare.harmonic.api.line.NormalLimitFeignClient; -import com.njcn.prepare.harmonic.pojo.param.LineParam; -import com.njcn.prepare.harmonic.utils.PrepareEnumUtil; -import feign.hystrix.FallbackFactory; -import lombok.extern.slf4j.Slf4j; -import org.springframework.stereotype.Component; - -/** - * NormalFeignClientFallbackFactory - */ -@Slf4j -@Component -public class NormalFeignClientFallbackFactory implements FallbackFactory { - - @Override - public NormalLimitFeignClient create(Throwable throwable) { - Enum exceptionEnum = CommonResponseEnum.SERVICE_FALLBACK; - if (throwable.getCause() instanceof BusinessException) { - BusinessException businessException = (BusinessException)throwable.getCause(); - exceptionEnum = PrepareEnumUtil.getExceptionEnum(businessException.getResult()); - } - - Enum finalExceptionEnum = exceptionEnum; - return new NormalLimitFeignClient() { - @Override - public HttpResult getNormLimitData(LineParam lineParam) { - log.error("{}异常,降级处理,异常为:{}", "告警数据: ", throwable.toString()); - throw new BusinessException(finalExceptionEnum); - } - }; - } -} diff --git a/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/api/newalgorithm/ROperatingIndexFeignClient.java b/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/api/newalgorithm/ROperatingIndexFeignClient.java deleted file mode 100644 index e31d57c37..000000000 --- a/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/api/newalgorithm/ROperatingIndexFeignClient.java +++ /dev/null @@ -1,24 +0,0 @@ -package com.njcn.prepare.harmonic.api.newalgorithm; - -import com.njcn.common.pojo.constant.ServerInfo; -import com.njcn.common.pojo.response.HttpResult; -import com.njcn.prepare.harmonic.api.newalgorithm.fallback.ROperatingIndexFeignClientFallbackFactory; -import com.njcn.prepare.harmonic.pojo.param.PrimaryGridDataIntegrityParam; -import com.njcn.prepare.harmonic.pojo.param.PrimaryGridParam; -import org.springframework.cloud.openfeign.FeignClient; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; - -@FeignClient( - value = ServerInfo.PREPARE_BOOT,//对应模块名 - path = "/primaryGridData",//对应controller请求类 - fallbackFactory = ROperatingIndexFeignClientFallbackFactory.class//服务降级处理类 -) -public interface ROperatingIndexFeignClient { - - @PostMapping("primaryGridDataHanlder") - HttpResult primaryGridDataHanlder(@RequestBody PrimaryGridParam primaryGridParam); - - @PostMapping("primaryGridDataIntegrityHanlder") - HttpResult primaryGridDataIntegrityHanlder(@RequestBody PrimaryGridDataIntegrityParam primaryGridDataIntegrityParam); -} diff --git a/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/api/newalgorithm/fallback/ROperatingIndexFeignClientFallbackFactory.java b/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/api/newalgorithm/fallback/ROperatingIndexFeignClientFallbackFactory.java deleted file mode 100644 index 2810716c4..000000000 --- a/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/api/newalgorithm/fallback/ROperatingIndexFeignClientFallbackFactory.java +++ /dev/null @@ -1,41 +0,0 @@ -package com.njcn.prepare.harmonic.api.newalgorithm.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.prepare.harmonic.api.newalgorithm.ROperatingIndexFeignClient; -import com.njcn.prepare.harmonic.pojo.param.PrimaryGridDataIntegrityParam; -import com.njcn.prepare.harmonic.pojo.param.PrimaryGridParam; -import com.njcn.prepare.harmonic.utils.PrepareEnumUtil; -import feign.hystrix.FallbackFactory; -import lombok.extern.slf4j.Slf4j; -import org.springframework.stereotype.Component; - -@Slf4j -@Component -public class ROperatingIndexFeignClientFallbackFactory implements FallbackFactory { - @Override - public ROperatingIndexFeignClient create(Throwable throwable) { - Enum exceptionEnum = CommonResponseEnum.SERVICE_FALLBACK; - if (throwable.getCause() instanceof BusinessException) { - BusinessException businessException = (BusinessException)throwable.getCause(); - exceptionEnum = PrepareEnumUtil.getExceptionEnum(businessException.getResult()); - } - - Enum finalExceptionEnum = exceptionEnum; - return new ROperatingIndexFeignClient() { - - @Override - public HttpResult primaryGridDataHanlder(PrimaryGridParam primaryGridParam) { - log.error("{}异常,降级处理,异常为:{}", "单位标数据质量_统计: ", throwable.toString()); - throw new BusinessException(finalExceptionEnum); - } - - @Override - public HttpResult primaryGridDataIntegrityHanlder(PrimaryGridDataIntegrityParam primaryGridDataIntegrityParam) { - log.error("{}异常,降级处理,异常为:{}", "终端通信管理_日表: ", throwable.toString()); - throw new BusinessException(finalExceptionEnum); - } - }; - } -} diff --git a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/controller/area/PrimaryGridDataController.java b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/controller/area/PrimaryGridDataController.java deleted file mode 100644 index 74f798fe4..000000000 --- a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/controller/area/PrimaryGridDataController.java +++ /dev/null @@ -1,120 +0,0 @@ -package com.njcn.prepare.harmonic.controller.area; - -import com.njcn.common.pojo.annotation.OperateInfo; -import com.njcn.common.pojo.constant.BizParamConstant; -import com.njcn.common.pojo.enums.common.LogEnum; -import com.njcn.common.pojo.enums.response.CommonResponseEnum; -import com.njcn.common.pojo.response.HttpResult; -import com.njcn.common.utils.HttpResultUtil; -import com.njcn.common.utils.NjcnDateUtils; -import com.njcn.device.pms.api.PmsTerminalClient; -import com.njcn.device.pms.pojo.param.PmsBaseParam; -import com.njcn.device.pms.pojo.po.PmsTerminal; -import com.njcn.prepare.harmonic.pojo.param.PrimaryGridDataIntegrityParam; -import com.njcn.prepare.harmonic.pojo.param.PrimaryGridParam; -import com.njcn.prepare.harmonic.service.mysql.area.PrimaryGridDataService; -import com.njcn.user.api.DeptFeignClient; -import com.njcn.user.pojo.vo.PvTerminalTreeVO; -import com.njcn.web.controller.BaseController; -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiImplicitParam; -import io.swagger.annotations.ApiOperation; -import lombok.RequiredArgsConstructor; -import lombok.extern.slf4j.Slf4j; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.util.CollectionUtils; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; - -import java.time.LocalDateTime; -import java.util.ArrayList; -import java.util.List; -import java.util.stream.Collectors; - -/** - * Description:r_operating_index_d - * 接口文档访问地址:http://serverIP:port/swagger-ui.html - * Date: 2022/11/24 14:31【需求编号】 - * - * @author clam - * @version V1.0.0 - */ -@Slf4j -@Api(tags = "主网单位数据统计(r_operating_index_d表数据需要先生成r_stat_abnormal_d,r_mp_integrity_d表)") -@RestController -@RequestMapping("primaryGridData") -@RequiredArgsConstructor -@Deprecated -public class PrimaryGridDataController extends BaseController { - - private @Autowired - PrimaryGridDataService primaryGridDataService; - - private @Autowired - DeptFeignClient deptFeignClient; - - private @Autowired - PmsTerminalClient pmsTerminalClient; - - - @ApiOperation("主网单位数据同步(r_operating_index_d表数据)") - @ApiImplicitParam(value = "primaryGridParam", name = "primaryGridParam", required = true) - @PostMapping("primaryGridDataHanlder") - @OperateInfo(info = LogEnum.BUSINESS_MEDIUM) - public HttpResult primaryGridDataHanlder(@RequestBody PrimaryGridParam primaryGridParam) { - log.info(LocalDateTime.now() + "primaryGridDataHanlder开始执行"); - String methodDescribe = getMethodDescribe("primaryGridDataHanlder"); - List orgIdList; - if (CollectionUtils.isEmpty(primaryGridParam.getOrgIdList())) { - List dept = deptFeignClient.allDeptList().getData(); - orgIdList = dept.stream().map(PvTerminalTreeVO::getId).collect(Collectors.toList()); - } else { - orgIdList = primaryGridParam.getOrgIdList(); - } - primaryGridParam.setOrgIdList(orgIdList); - if (primaryGridParam.getRepairFlag() && Integer.valueOf(BizParamConstant.STAT_BIZ_DAY).equals(primaryGridParam.getType())) { - List timeRange = NjcnDateUtils.findEveryDay(primaryGridParam.getBeginTime(), primaryGridParam.getEndTime()); - for (String item : timeRange) { - log.info(item + "-->开始执行"); - primaryGridParam.setBeginTime(item + " " + "00:00:00"); - primaryGridParam.setEndTime(item + " " + "23:59:59"); - primaryGridParam.setDataDate(item); - primaryGridDataService.primaryGridDataHanlder(primaryGridParam); - } - } else { - primaryGridDataService.primaryGridDataHanlder(primaryGridParam); - } - return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, true, methodDescribe); - - } - - @ApiOperation("主网终端数据完整率月统计") - @ApiImplicitParam(value = "primaryGridDataIntegrityParam", name = "primaryGridDataIntegrityParam", required = true) - @PostMapping("primaryGridDataIntegrityHanlder") - @OperateInfo(info = LogEnum.BUSINESS_MEDIUM) - public HttpResult primaryGridDataIntegrityHanlder(@RequestBody PrimaryGridDataIntegrityParam primaryGridDataIntegrityParam) { - log.info(LocalDateTime.now() + "primaryGridDataIntegrityHanlder开始执行"); - String methodDescribe = getMethodDescribe("primaryGridDataIntegrityHanlder"); - Boolean result = true; - List orgIdList = new ArrayList<>(); - if (CollectionUtils.isEmpty(primaryGridDataIntegrityParam.getDeviceId())) { - /*todo 不知道是否需要补招*/ - List data = pmsTerminalClient.getTerminalSelectList(new PmsBaseParam()).getData(); - orgIdList = data.stream().map(PmsTerminal::getId).collect(Collectors.toList()); - } else { - orgIdList = primaryGridDataIntegrityParam.getDeviceId(); - } - primaryGridDataIntegrityParam.setDeviceId(orgIdList); - - primaryGridDataService.primaryGridDataIntegrityHanlder(primaryGridDataIntegrityParam); - if (result) { - return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, true, methodDescribe); - } else { - return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.FAIL, false, methodDescribe); - } - } - - -} diff --git a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/controller/line/NormalLimitController.java b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/controller/line/NormalLimitController.java deleted file mode 100644 index 150a0c93a..000000000 --- a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/controller/line/NormalLimitController.java +++ /dev/null @@ -1,43 +0,0 @@ -package com.njcn.prepare.harmonic.controller.line; - -import com.njcn.common.pojo.annotation.OperateInfo; -import com.njcn.common.pojo.enums.common.LogEnum; -import com.njcn.common.pojo.enums.response.CommonResponseEnum; -import com.njcn.common.pojo.response.HttpResult; -import com.njcn.common.utils.HttpResultUtil; -import com.njcn.prepare.harmonic.pojo.param.LineParam; -import com.njcn.prepare.harmonic.service.mysql.line.NormalLimitService; -import com.njcn.web.controller.BaseController; -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; -import lombok.AllArgsConstructor; -import lombok.extern.slf4j.Slf4j; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; - -/** - * 用于每天统计前一天异常监测点数据(需要在r_stat_limit_target_d数据后面执行) - * @author denghuajun - * @version 1.0.0 - * @date 2022年10月17日 19:56 - */ -@Slf4j -@RestController -@RequestMapping("/normalLimit") -@Api(tags = "告警数据预处理_mysql") -@AllArgsConstructor -public class NormalLimitController extends BaseController { - - private final NormalLimitService normLimitService; - - @OperateInfo(info = LogEnum.BUSINESS_COMMON) - @PostMapping("/getNormLimitData") - @ApiOperation("监测点告警数据预处理") - public HttpResult getNormLimitData(@RequestBody LineParam lineParam) { - String methodDescribe = getMethodDescribe("getNormLimitData"); - normLimitService.abnormalLineData(lineParam); - return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, null, methodDescribe); - } -} diff --git a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/Impl/area/PrimaryGridDataServiceImpl.java b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/Impl/area/PrimaryGridDataServiceImpl.java deleted file mode 100644 index 0e392eca1..000000000 --- a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/Impl/area/PrimaryGridDataServiceImpl.java +++ /dev/null @@ -1,613 +0,0 @@ -package com.njcn.prepare.harmonic.service.mysql.Impl.area; - -import cn.hutool.core.date.DatePattern; -import cn.hutool.core.date.LocalDateTimeUtil; -import cn.hutool.core.util.StrUtil; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.njcn.common.pojo.exception.BusinessException; -import com.njcn.device.biz.pojo.dto.LineDevGetDTO; -import com.njcn.device.pms.pojo.po.Monitor; -import com.njcn.harmonic.pojo.po.*; -import com.njcn.prepare.harmonic.constant.AlgorithmParam; -import com.njcn.prepare.harmonic.constant.PqsPrepareExceptionEnum; -import com.njcn.prepare.harmonic.mapper.mysql.area.RStatAbnormalDPOMapper; -import com.njcn.prepare.harmonic.pojo.dto.MonitorDataIntegrityDTO; -import com.njcn.prepare.harmonic.pojo.oracle.PqLinedetailPO; -import com.njcn.prepare.harmonic.pojo.param.PrimaryGridDataIntegrityParam; -import com.njcn.prepare.harmonic.pojo.param.PrimaryGridParam; -import com.njcn.prepare.harmonic.service.influxdb.DataVInfluxdbService; -import com.njcn.prepare.harmonic.service.mysql.area.*; -import com.njcn.prepare.harmonic.service.oracle.DataVOraclePOService; -import com.njcn.prepare.harmonic.service.oracle.PqLinedetailPOService; -import com.njcn.redis.utils.RedisUtil; -import com.njcn.system.enums.DicDataEnum; -import com.njcn.system.enums.DicDataTypeEnum; -import lombok.RequiredArgsConstructor; -import lombok.SneakyThrows; -import org.springframework.scheduling.annotation.Async; -import org.springframework.stereotype.Service; -import org.springframework.util.CollectionUtils; -import org.springframework.util.StringUtils; - -import java.math.BigDecimal; -import java.text.SimpleDateFormat; -import java.time.LocalDate; -import java.util.ArrayList; -import java.util.Date; -import java.util.List; -import java.util.Objects; -import java.util.stream.Collectors; - -import static com.njcn.system.pojo.constant.DicDataConstant.NAME_KEY; - -/** - * Description: - * 接口文档访问地址:http://serverIP:port/swagger-ui.html - * Date: 2022/11/25 8:54【需求编号】 - * - * @author clam - * @version V1.0.0 - */ -@Service -@RequiredArgsConstructor -public class PrimaryGridDataServiceImpl implements PrimaryGridDataService { - - private final PmsMonitorPOService pmsMonitorPOService; - - private final PmsTerminalPOService pmsTerminalPOService; - - private final DataVInfluxdbService dataVInfluxdbService; - - private final PqLinedetailPOService pqLinedetailPOService; - - private final DataVOraclePOService dataVOraclePOService; - - private final RMpIntegrityDPOService rMpIntegrityDPOService; - - private final RStatAbnormalDPOMapper rStatAbnormalDPOMapper; - - private final ROperatingIndexDPOService rOperatingIndexDPOService; - - private final ROperatingIndexMPOService rOperatingIndexMPOService; - - private final ROperatingIndexQPOService rOperatingIndexQPOService; - - private final ROperatingIndexYPOService rOperatingIndexYPOService; - - private final RMpDevEvaluateDetailPOService rMpDevEvaluateDetailPOService; - - private final RedisUtil redisUtil; - - - - - /** - * @param primaryGridParam - * @Description: primaryGridDataHanlder - * @Param: [primaryGridParam] - * @return: void - * @Author: clam - * @Date: 2022/11/25 - */ - @Override - @Async("asyncExecutor") - public void primaryGridDataHanlder(PrimaryGridParam primaryGridParam) { - if (Objects.equals(primaryGridParam.getDataSource(), AlgorithmParam.ORACLE_DATA)) { - hanlderOracleData(primaryGridParam); - } else if (Objects.equals(primaryGridParam.getDataSource(), AlgorithmParam.INFLUX_DATA)) { - hanlderInfludxbData(primaryGridParam); - } - - } - - /** - * @param primaryGridDataIntegrityParam - * @Description: 主网终端数据完整率月统计只做月统计,且重mysql查数据不分数据源 - * @Param: [primaryGridDataIntegrityParam] - * @return: void - * @Author: clam - * @Date: 2022/11/30 - */ - @Override - @Async - @SneakyThrows - public void primaryGridDataIntegrityHanlder(PrimaryGridDataIntegrityParam primaryGridDataIntegrityParam) { - List deviceIds = primaryGridDataIntegrityParam.getDeviceId(); - String dataDate = primaryGridDataIntegrityParam.getDataDate(); - List rMpDevEvaluateDetailPOList = new ArrayList<>(); - deviceIds.forEach(deviceId -> { - double dev_data_rate = 0.00; - /*获取终端下的监测点集合*/ - QueryWrapper queryWrapper = new QueryWrapper<>(); - String state = redisUtil.getStringByKey(NAME_KEY + - StrUtil.DASHED + DicDataTypeEnum.LINE_STATE.getCode() + - StrUtil.DASHED + DicDataEnum.RUN.getCode()); - if (StringUtils.isEmpty(state)) { - throw new BusinessException(PqsPrepareExceptionEnum.REDIS_NULL_EXCEPTION); - } - queryWrapper.lambda().eq(Monitor::getTerminalId, deviceId). - eq(Monitor::getMonitorState, state); - List list = pmsMonitorPOService.list(queryWrapper); - List mysqlIndexList = list.stream().map(Monitor::getId).collect(Collectors.toList()); - /*获取检测点的月平均数据完整率*/ - List monitorDataIntegrityDTOList = rMpIntegrityDPOService.calculateMouthDataIntegrity(mysqlIndexList, dataDate); - /*求平均值*/ - if (!CollectionUtils.isEmpty(monitorDataIntegrityDTOList)) { - dev_data_rate = monitorDataIntegrityDTOList.stream().mapToDouble(monitorDataIntegrityDTO -> { - return monitorDataIntegrityDTO.getDataIntegrity().doubleValue(); - }).average().getAsDouble(); - } - RMpDevEvaluateDetailPO rMpDevEvaluateDetailPO = new RMpDevEvaluateDetailPO(); - rMpDevEvaluateDetailPO.setDeviceId(deviceId); - rMpDevEvaluateDetailPO.setDataDate(LocalDateTimeUtil.parseDate(dataDate, DatePattern.NORM_DATE_FORMATTER)); - rMpDevEvaluateDetailPO.setDevDataRate(dev_data_rate); - rMpDevEvaluateDetailPOList.add(rMpDevEvaluateDetailPO); - }); - rMpDevEvaluateDetailPOService.saveOrUpdateBatchByMultiId(rMpDevEvaluateDetailPOList, 500); - } - - /** - * @Description: 处理influxdb数据 todo 本次不做处理 - * @Param: [primaryGridParam] - * @return: void - * @Author: clam - * @Date: 2022/11/25 - */ - private void hanlderInfludxbData(PrimaryGridParam primaryGridParam) { - Integer type = primaryGridParam.getType(); - /*月表,季表,年表都是重日表生成,不区分oralce,influxdb*/ - switch (type) { - case 1: - this.hanlderOracleYear(primaryGridParam); - break; - case 2: - this.hanlderOracleQtr(primaryGridParam); - break; - case 3: - this.hanlderOracleMonth(primaryGridParam); - break; - case 5: - this.hanlderInfluxdbDay(primaryGridParam); - break; - default: - break; - } - } - - @SneakyThrows - private void hanlderInfluxdbDay(PrimaryGridParam primaryGridParam) { - List orgIdList = primaryGridParam.getOrgIdList(); - String dataDate = primaryGridParam.getDataDate(); - List rOperatingIndexDPOList = new ArrayList<>(); - - final Date tempDate = new SimpleDateFormat("yyyy-MM-dd").parse(dataDate); - orgIdList.forEach(orgid -> { - - /*measurement_run_points:在运监测点个数*/ - //获取终端信息,和包含的终端下监测点 - List runTerminalAndLine = pmsTerminalPOService.getRunTerminalAndLine(orgid); - //终端数量 - Integer online_measurement_points = runTerminalAndLine.size(); - /*在运监测终端个数 online_measurement_count*/ - Long online_measurement_count = runTerminalAndLine.stream().filter(x -> x.getComFlag() == 1).collect(Collectors.counting()); - - /*监测终端数量 online_measurement_points*/ - List runMonitor = runTerminalAndLine.stream().flatMap(x -> x.getMonitorIds().stream()).collect(Collectors.toList()); - -// List runMonitor = pmsMonitorPOService.getRunMonitor(orgid); - Integer measurement_run_points = runMonitor.size(); - - - /*主网单位在线监测点数 transit_measurement_points*/ - Integer transit_measurement_points = dataVInfluxdbService.queryTransitMeasurementPoints(runMonitor, primaryGridParam.getDataDate(), "A"); - - /*主网单位有效接入监测点个数 effective_access_measurement_count*/ - Integer effective_access_measurement_count = this.queryEffectiveAccessMeasurementCount(runMonitor, primaryGridParam.getDataDate()); -// List pmsTerminalPOS = pmsTerminalPOService.queryOnlineMeasurementPoints(orgid); - - /*主网单位数据完整率 data_integrity_rate*/ - double data_integrity_rate = 0.00; - List monitorDataIntegrityDTOList = rMpIntegrityDPOService.calculateDataIntegrity(runMonitor, dataDate); - /*求平均值*/ - if (!CollectionUtils.isEmpty(monitorDataIntegrityDTOList)) { - data_integrity_rate = monitorDataIntegrityDTOList.stream().mapToDouble(temp -> { - return temp.getDataIntegrity().doubleValue(); - }).average().getAsDouble(); - } - - /*主网单位数据异常监测点数日统计 is_unusual*/ - Integer is_unusual = this.queryIsUnusualCount(runMonitor, primaryGridParam.getDataDate()); - - ROperatingIndexDPO rOperatingIndexDPO = new ROperatingIndexDPO(); - rOperatingIndexDPO.setOrgNo(orgid); - - rOperatingIndexDPO.setDataDate(LocalDate.parse(primaryGridParam.getDataDate())); - rOperatingIndexDPO.setMeasurementRunPoints(measurement_run_points); - rOperatingIndexDPO.setTransitMeasurementPoints(transit_measurement_points); - rOperatingIndexDPO.setEffectiveAccessMeasurementCount(effective_access_measurement_count); - rOperatingIndexDPO.setOnlineMeasurementPoints(online_measurement_points); - rOperatingIndexDPO.setOnlineMeasurementCount(Math.toIntExact(online_measurement_count)); - rOperatingIndexDPO.setDataIntegrityRate(data_integrity_rate); - rOperatingIndexDPO.setIsUnusual(is_unusual > 0 ? 1 : 0); - rOperatingIndexDPOList.add(rOperatingIndexDPO); - }); - if (!CollectionUtils.isEmpty(rOperatingIndexDPOList)) { - rOperatingIndexDPOService.saveOrUpdateBatchByMultiId(rOperatingIndexDPOList, 30); - } - } - - - /** - * @Description: 处理Oracle数据 - * @Param: [primaryGridParam] - * @return: void - * @Author: clam - * @Date: 2022/11/25 - */ - private void hanlderOracleData(PrimaryGridParam primaryGridParam) { - Integer type = primaryGridParam.getType(); - switch (type) { - case 1: - this.hanlderOracleYear(primaryGridParam); - break; - case 2: - this.hanlderOracleQtr(primaryGridParam); - break; - case 3: - this.hanlderOracleMonth(primaryGridParam); - break; - case 5: - this.hanlderOracleDay(primaryGridParam); - break; - default: - break; - } - - - } - - /** - * @Description: hanlderOracleMonth - * @Param: [primaryGridParam] - * @return: void - * @Author: clam - * @Date: 2022/11/25 - */ - @SneakyThrows - private void hanlderOracleMonth(PrimaryGridParam primaryGridParam) { - - List orgIdList = primaryGridParam.getOrgIdList(); - String beginTime = primaryGridParam.getBeginTime(); - String endTime = primaryGridParam.getEndTime(); - List rOperatingIndexMPOList = new ArrayList<>(); - - orgIdList.forEach(orgid -> { - /*查询day表数据生成月表数据*/ - List list = rOperatingIndexDPOService.queryOneMothData(orgid, beginTime,endTime); - /*求平均值*/ - int measurement_run_points = (int) Math.round(list.stream(). - mapToDouble(temp -> temp.getMeasurementRunPoints()). - average(). - getAsDouble()); - int transit_measurement_points = (int) Math.round(list.stream(). - mapToDouble(temp -> temp.getTransitMeasurementPoints()). - average(). - getAsDouble()); - int effective_access_measurement_count = (int) Math.round(list.stream(). - mapToDouble(temp -> temp.getEffectiveAccessMeasurementCount()). - average(). - getAsDouble()); - int online_measurement_points = (int) Math.round(list.stream(). - mapToDouble(temp -> temp.getOnlineMeasurementPoints()). - average(). - getAsDouble()); - - int online_measurement_count = (int) Math.round(list.stream(). - mapToDouble(temp -> temp.getOnlineMeasurementCount()). - average(). - getAsDouble()); - /*double保留2位小数*/ - Double data_integrity_rate = Math.round(list.stream(). - mapToDouble(temp -> temp.getDataIntegrityRate()). - average(). - getAsDouble() * 100) * 0.01; - /*看day表is_unusual时候存在1存在返回1,数据否异常(0:正常 1:异常)*/ - Integer is_unusual = list.stream(). - map(ROperatingIndexDPO::getIsUnusual). - collect(Collectors.toList()) - .contains(1) ? 1 : 0; - - - ROperatingIndexMPO rOperatingIndexMPO = new ROperatingIndexMPO(); - rOperatingIndexMPO.setOrgNo(orgid); - rOperatingIndexMPO.setDataDate(LocalDate.parse(primaryGridParam.getDataDate())); - rOperatingIndexMPO.setMeasurementRunPoints(measurement_run_points); - rOperatingIndexMPO.setTransitMeasurementPoints(transit_measurement_points); - rOperatingIndexMPO.setEffectiveAccessMeasurementCount(effective_access_measurement_count); - rOperatingIndexMPO.setOnlineMeasurementPoints(online_measurement_points); - rOperatingIndexMPO.setOnlineMeasurementCount(online_measurement_count); - rOperatingIndexMPO.setDataIntegrityRate(data_integrity_rate); - rOperatingIndexMPO.setIsUnusual(is_unusual); - rOperatingIndexMPOList.add(rOperatingIndexMPO); - }); - if (!CollectionUtils.isEmpty(rOperatingIndexMPOList)) { - rOperatingIndexMPOService.saveOrUpdateBatchByMultiId(rOperatingIndexMPOList, 30); - } - } - - /** - * @Description: hanlderOracleDay - * @Param: [primaryGridParam] - * @return: void - * @Author: clam - * @Date: 2022/11/25 - */ - @SneakyThrows - private void hanlderOracleDay(PrimaryGridParam primaryGridParam) { - List orgIdList = primaryGridParam.getOrgIdList(); - String dataDate = primaryGridParam.getDataDate(); - List rOperatingIndexDPOList = new ArrayList<>(); - - final Date tempDate = new SimpleDateFormat("yyyy-MM-dd").parse(dataDate); - - orgIdList.forEach(orgid -> { - - /*measurement_run_points:在运监测点个数*/ - List pmsMonitorPOS = pmsMonitorPOService.qurymeasurementRunPoints(orgid); - Integer measurement_run_points = pmsMonitorPOS.size(); - /*获取mysql与Oracle监测点id对应关系*/ - List mysqlIndexList = pmsMonitorPOS.stream().map(Monitor::getId).collect(Collectors.toList()); - - List pqLinedetailPOS = pqLinedetailPOService.queryOracleIndexIdByMysqlIndexId(mysqlIndexList); - List oracleIndexlist = pqLinedetailPOS.stream().map(PqLinedetailPO::getLineIndex).collect(Collectors.toList()); - - /*主网单位在线监测点数 transit_measurement_points*/ - Integer transit_measurement_points = dataVOraclePOService.queryTransitMeasurementPoints(oracleIndexlist, primaryGridParam.getDataDate()); - - /*主网单位有效接入监测点个数 effective_access_measurement_count*/ - Integer effective_access_measurement_count = this.queryEffectiveAccessMeasurementCount(mysqlIndexList, primaryGridParam.getDataDate()); - - /*监测终端数量 online_measurement_points*/ - List pmsTerminalPOS = pmsTerminalPOService.queryOnlineMeasurementPoints(orgid); - Integer online_measurement_points = pmsTerminalPOS.size(); - - /*在运监测终端个数 online_measurement_count*/ - String state = redisUtil.getStringByKey(NAME_KEY + - StrUtil.DASHED + DicDataTypeEnum.DEV_STATUS.getCode() + - StrUtil.DASHED + DicDataEnum.RUNNING.getCode()); - Integer online_measurement_count = Integer.valueOf(pmsTerminalPOS.stream().filter(temp -> Objects.equals(temp.getTerminalState(), state)).count() + ""); - - /*主网单位数据完整率 data_integrity_rate*/ - double data_integrity_rate = 0.00; - List monitorDataIntegrityDTOList = rMpIntegrityDPOService.calculateDataIntegrity(mysqlIndexList, dataDate); - /*求平均值*/ - if (!CollectionUtils.isEmpty(monitorDataIntegrityDTOList)) { - data_integrity_rate = monitorDataIntegrityDTOList.stream().mapToDouble(temp -> { - return temp.getDataIntegrity().doubleValue(); - }).average().getAsDouble(); - } - - - /*主网单位数据异常监测点数日统计 is_unusual*/ - Integer is_unusual = this.queryIsUnusualCount(mysqlIndexList, primaryGridParam.getDataDate()); - - ROperatingIndexDPO rOperatingIndexDPO = new ROperatingIndexDPO(); - rOperatingIndexDPO.setOrgNo(orgid); - rOperatingIndexDPO.setDataDate(LocalDate.parse(primaryGridParam.getDataDate())); - rOperatingIndexDPO.setMeasurementRunPoints(measurement_run_points); - rOperatingIndexDPO.setTransitMeasurementPoints(transit_measurement_points); - rOperatingIndexDPO.setEffectiveAccessMeasurementCount(effective_access_measurement_count); - rOperatingIndexDPO.setOnlineMeasurementPoints(online_measurement_points); - rOperatingIndexDPO.setOnlineMeasurementCount(online_measurement_count); - rOperatingIndexDPO.setDataIntegrityRate(data_integrity_rate); - rOperatingIndexDPO.setIsUnusual(is_unusual > 0 ? 1 : 0); - rOperatingIndexDPOList.add(rOperatingIndexDPO); - }); - if (!CollectionUtils.isEmpty(rOperatingIndexDPOList)) { - rOperatingIndexDPOService.saveOrUpdateBatchByMultiId(rOperatingIndexDPOList, 30); - } - - } - - /** - * @Description: queryIsUnusualCount :用监测点id在r_stat_abnormal_d表中查找value_alarm为0的监测点个数 - * @Param: [mysqlIndexList, dataDate] - * @return: java.lang.Integer - * @Author: clam - * @Date: 2022/11/28 - */ - private Integer queryIsUnusualCount(List mysqlIndexList, String dataDate) { - - if (CollectionUtils.isEmpty(mysqlIndexList)) { - return 0; - } - - QueryWrapper rStatAbnormalDPOLambdaQueryWrapper = new QueryWrapper(); - rStatAbnormalDPOLambdaQueryWrapper. - in("measurement_point_id", mysqlIndexList). - eq("value_alarm", 0). - eq("DATE_FORMAT( data_date ,'%Y-%m-%d')", dataDate); - Integer integer = rStatAbnormalDPOMapper.selectCount(rStatAbnormalDPOLambdaQueryWrapper); - - return integer; - } - - - /** - * @Description: 主网单位有效接入监测点个数 - * 1.获取pms_monitor表中监测点状态为投运的监测点id列表 - * 2.根据id查询r_mp_integrity_d表中当天各项指标个数,采用以下公式计算数据完整率 - * 3.〖数据完整率〗_日统计=(频率+相电压+线电压+畸变率+不平衡度)/(有效值数据个数*5)*100% - * 判定监测点数据完整率是否大于95% - * 4、根据id查询r_stat_abnormal_d表,value_alarm为1。 - * 5、以上两个条件满足表明该监测点为有效监测点。 - * 6、统计有效监测点个数 - * @Param: [indexlist, dataDate] - * @return: java.lang.String - * @Author: clam - * @Date: 2022/11/25 - */ - private Integer queryEffectiveAccessMeasurementCount(List indexlist, String dataDate) { - - /*获取监测点的数据完整性*/ - List monitorDataIntegrityDTOList = rMpIntegrityDPOService.calculateDataIntegrity(indexlist, dataDate); - /*获取完整率>0.95的监测点id*/ - List collect = monitorDataIntegrityDTOList.stream(). - filter(temp -> temp.getDataIntegrity().compareTo(new BigDecimal(0.95)) == 1 - ).map(MonitorDataIntegrityDTO::getId).collect(Collectors.toList()); - /*获取完整率>0.95条件下value_alarm为1的监测点id*/ - if (CollectionUtils.isEmpty(collect)) { - return 0; - } - QueryWrapper rStatAbnormalDPOLambdaQueryWrapper = new QueryWrapper(); - rStatAbnormalDPOLambdaQueryWrapper.select("measurement_point_id"). - in("measurement_point_id", collect). - eq("value_alarm", 1). - eq("DATE_FORMAT( data_date ,'%Y-%m-%d')", dataDate); - List rStatAbnormalDPOS = rStatAbnormalDPOMapper.selectList(rStatAbnormalDPOLambdaQueryWrapper); - - return rStatAbnormalDPOS.size(); - - } - - - /** - * @Description: hanlderOracleQtr - * @Param: [primaryGridParam] - * @return: void - * @Author: clam - * @Date: 2022/11/25 - */ - @SneakyThrows - private void hanlderOracleQtr(PrimaryGridParam primaryGridParam) { - - List orgIdList = primaryGridParam.getOrgIdList(); - String beginTime = primaryGridParam.getBeginTime(); - String endTime = primaryGridParam.getEndTime(); - List rOperatingIndexQPOList = new ArrayList<>(); - - orgIdList.forEach(orgid -> { - /*查询Mouth表数据生成季表数据*/ - List list = rOperatingIndexMPOService.queryOneQtrData(orgid, beginTime,endTime); - /*求平均值*/ - int measurement_run_points = (int) Math.round(list.stream(). - mapToDouble(temp -> temp.getMeasurementRunPoints()). - average(). - getAsDouble()); - int transit_measurement_points = (int) Math.round(list.stream(). - mapToDouble(temp -> temp.getTransitMeasurementPoints()). - average(). - getAsDouble()); - int effective_access_measurement_count = (int) Math.round(list.stream(). - mapToDouble(temp -> temp.getEffectiveAccessMeasurementCount()). - average(). - getAsDouble()); - int online_measurement_points = (int) Math.round(list.stream(). - mapToDouble(temp -> temp.getOnlineMeasurementPoints()). - average(). - getAsDouble()); - - int online_measurement_count = (int) Math.round(list.stream(). - mapToDouble(temp -> temp.getOnlineMeasurementCount()). - average(). - getAsDouble()); - /*double保留2位小数*/ - Double data_integrity_rate = Math.round(list.stream(). - mapToDouble(temp -> temp.getDataIntegrityRate()). - average(). - getAsDouble() * 100) * 0.01; - /*看day表is_unusual时候存在1存在返回1,数据否异常(0:正常 1:异常)*/ - Integer is_unusual = list.stream(). - map(ROperatingIndexMPO::getIsUnusual). - collect(Collectors.toList()) - .contains(1) ? 1 : 0; - - - ROperatingIndexQPO rOperatingIndexQPO = new ROperatingIndexQPO(); - rOperatingIndexQPO.setOrgNo(orgid); - rOperatingIndexQPO.setDataDate(LocalDate.parse(primaryGridParam.getDataDate())); - rOperatingIndexQPO.setMeasurementRunPoints(measurement_run_points); - rOperatingIndexQPO.setTransitMeasurementPoints(transit_measurement_points); - rOperatingIndexQPO.setEffectiveAccessMeasurementCount(effective_access_measurement_count); - rOperatingIndexQPO.setOnlineMeasurementPoints(online_measurement_points); - rOperatingIndexQPO.setOnlineMeasurementCount(online_measurement_count); - rOperatingIndexQPO.setDataIntegrityRate(data_integrity_rate); - rOperatingIndexQPO.setIsUnusual(is_unusual); - rOperatingIndexQPOList.add(rOperatingIndexQPO); - }); - if (!CollectionUtils.isEmpty(rOperatingIndexQPOList)) { - rOperatingIndexQPOService.saveOrUpdateBatchByMultiId(rOperatingIndexQPOList, 30); - } - } - - /** - * @Description: hanlderOracleYear - * @Param: [primaryGridParam] - * @return: void - * @Author: clam - * @Date: 2022/11/25 - */ - @SneakyThrows - private void hanlderOracleYear(PrimaryGridParam primaryGridParam) { - - List orgIdList = primaryGridParam.getOrgIdList(); - String beginTime = primaryGridParam.getBeginTime(); - String endTime = primaryGridParam.getEndTime(); - List rOperatingIndexYPOList = new ArrayList<>(); - - orgIdList.forEach(orgid -> { - /*查询Mouth表数据生成年表数据*/ - List list = rOperatingIndexMPOService.queryOneYearData(orgid, beginTime,endTime); - /*求平均值*/ - int measurement_run_points = (int) Math.round(list.stream(). - mapToDouble(temp -> temp.getMeasurementRunPoints()). - average(). - getAsDouble()); - int transit_measurement_points = (int) Math.round(list.stream(). - mapToDouble(temp -> temp.getTransitMeasurementPoints()). - average(). - getAsDouble()); - int effective_access_measurement_count = (int) Math.round(list.stream(). - mapToDouble(temp -> temp.getEffectiveAccessMeasurementCount()). - average(). - getAsDouble()); - int online_measurement_points = (int) Math.round(list.stream(). - mapToDouble(temp -> temp.getOnlineMeasurementPoints()). - average(). - getAsDouble()); - - int online_measurement_count = (int) Math.round(list.stream(). - mapToDouble(temp -> temp.getOnlineMeasurementCount()). - average(). - getAsDouble()); - /*double保留2位小数*/ - Double data_integrity_rate = Math.round(list.stream(). - mapToDouble(temp -> temp.getDataIntegrityRate()). - average(). - getAsDouble() * 100) * 0.01; - /*看day表is_unusual时候存在1存在返回1,数据否异常(0:正常 1:异常)*/ - Integer is_unusual = list.stream(). - map(ROperatingIndexMPO::getIsUnusual). - collect(Collectors.toList()) - .contains(1) ? 1 : 0; - - - ROperatingIndexYPO rOperatingIndexYPO = new ROperatingIndexYPO(); - rOperatingIndexYPO.setOrgNo(orgid); - rOperatingIndexYPO.setDataDate(LocalDate.parse(primaryGridParam.getDataDate())); - rOperatingIndexYPO.setMeasurementRunPoints(measurement_run_points); - rOperatingIndexYPO.setTransitMeasurementPoints(transit_measurement_points); - rOperatingIndexYPO.setEffectiveAccessMeasurementCount(effective_access_measurement_count); - rOperatingIndexYPO.setOnlineMeasurementPoints(online_measurement_points); - rOperatingIndexYPO.setOnlineMeasurementCount(online_measurement_count); - rOperatingIndexYPO.setDataIntegrityRate(data_integrity_rate); - rOperatingIndexYPO.setIsUnusual(is_unusual); - rOperatingIndexYPOList.add(rOperatingIndexYPO); - }); - if (!CollectionUtils.isEmpty(rOperatingIndexYPOList)) { - rOperatingIndexYPOService.saveOrUpdateBatchByMultiId(rOperatingIndexYPOList, 30); - } - - } - -} diff --git a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/Impl/line/HarmonicMetricServiceImpl.java b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/Impl/line/HarmonicMetricServiceImpl.java index 2ab6d55e7..60adab4ae 100644 --- a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/Impl/line/HarmonicMetricServiceImpl.java +++ b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/Impl/line/HarmonicMetricServiceImpl.java @@ -2,7 +2,6 @@ package com.njcn.prepare.harmonic.service.mysql.Impl.line; import cn.hutool.core.collection.CollUtil; import cn.hutool.core.date.DateUtil; -import cn.hutool.core.date.TimeInterval; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.github.jeffreyning.mybatisplus.service.MppServiceImpl; import com.njcn.common.pojo.exception.BusinessException; @@ -17,22 +16,16 @@ import com.njcn.influx.pojo.po.DataV; import com.njcn.influx.utils.InfluxDbUtils; import com.njcn.prepare.harmonic.enums.PrepareResponseEnum; import com.njcn.prepare.harmonic.mapper.mysql.day.*; -import com.njcn.prepare.harmonic.mapper.mysql.line.AbnormalMapper; import com.njcn.prepare.harmonic.pojo.bo.CalculatedParam; import com.njcn.prepare.harmonic.pojo.mysql.po.line.MpSurplusAbnormalD; -import com.njcn.prepare.harmonic.pojo.param.LineParam; import com.njcn.prepare.harmonic.service.mysql.line.HarmonicMetricService; import com.njcn.prepare.harmonic.service.mysql.line.NormalLimitService; import com.njcn.user.api.DeptFeignClient; import com.njcn.user.pojo.po.Dept; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; -import org.influxdb.InfluxDB; -import org.influxdb.dto.BatchPoints; -import org.influxdb.dto.Point; import org.influxdb.dto.QueryResult; import org.influxdb.impl.InfluxDBResultMapper; -import org.springframework.scheduling.annotation.Async; import org.springframework.stereotype.Service; import org.springframework.util.CollectionUtils; @@ -40,7 +33,6 @@ import java.math.BigDecimal; import java.time.LocalDateTime; import java.time.format.DateTimeFormatter; import java.util.*; -import java.util.concurrent.TimeUnit; import java.util.function.Function; import java.util.stream.Collectors; diff --git a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/Impl/line/NormalLimitServiceImpl.java b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/Impl/line/NormalLimitServiceImpl.java index 4d9003903..22f652403 100644 --- a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/Impl/line/NormalLimitServiceImpl.java +++ b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/Impl/line/NormalLimitServiceImpl.java @@ -1,34 +1,13 @@ package com.njcn.prepare.harmonic.service.mysql.Impl.line; -import cn.hutool.core.collection.CollUtil; -import cn.hutool.core.date.TimeInterval; -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.github.jeffreyning.mybatisplus.service.MppServiceImpl; -import com.njcn.device.pq.api.GeneralDeviceInfoClient; -import com.njcn.device.pq.api.OverLimitClient; -import com.njcn.harmonic.pojo.po.day.*; -import com.njcn.influx.deprecated.InfluxDBPublicParam; -import com.njcn.prepare.harmonic.mapper.mysql.day.*; import com.njcn.prepare.harmonic.mapper.mysql.line.AbnormalMapper; import com.njcn.prepare.harmonic.pojo.mysql.po.line.MpSurplusAbnormalD; -import com.njcn.prepare.harmonic.pojo.param.LineParam; import com.njcn.prepare.harmonic.service.mysql.line.NormalLimitService; -import com.njcn.user.api.DeptFeignClient; -import com.njcn.user.pojo.po.Dept; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; -import org.springframework.util.CollectionUtils; -import java.math.BigDecimal; -import java.time.LocalDateTime; -import java.time.format.DateTimeFormatter; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import java.util.function.Function; -import java.util.stream.Collectors; /** * @author denghuajun @@ -41,509 +20,7 @@ import java.util.stream.Collectors; @Slf4j public class NormalLimitServiceImpl extends MppServiceImpl implements NormalLimitService { - private final GeneralDeviceInfoClient generalDeviceInfoClient; - private final DeptFeignClient deptFeignClient; - - private final OverLimitClient overLimitClient; - - private final RStatDataHarmRateVDMapper rStatDataHarmRateVDMapper; - - private final RStatDataInHarmVDMapper rStatDataInHarmVDMapper; - - private final RStatDataVDMapper rStatDataVDMapper; - - private final RStatDataIDMapper rStatDataIDMapper; - - private final RStatDataPltDMapper rStatDataPltDMapper; - - - @Override - //@Async("asyncExecutor") - public Boolean abnormalLineData(LineParam lineParam) { - TimeInterval timeInterval = new TimeInterval(); - - List lineIds = new ArrayList<>(); - List all = new ArrayList<>(); - - if (CollectionUtils.isEmpty(lineParam.getLineIds())) { - Dept dept = deptFeignClient.getRootDept().getData(); - lineIds = generalDeviceInfoClient.deptGetRunLine(dept.getId()).getData(); - } else { - //不为空则为补招 - lineIds = lineParam.getLineIds(); - } - if (CollUtil.isNotEmpty(lineIds)) { - List> overLimitMap = overLimitClient.getLimitMapsByLineIds(lineIds).getData(); - Map> ovMap = overLimitMap.stream().collect(Collectors.toMap(item -> item.get("id").toString(), Function.identity())); - - for (String lineIndex : lineIds) { - Boolean flag = false; - //获取当前监测点的限值详情 - if (!ovMap.containsKey(lineIndex)) { - log.error(LocalDateTime.now() + "--监测点<" + lineIndex + ">不存在限值!"); - return false; - } - Map overLimit = ovMap.get(lineIndex); - - //谐波电压 - LambdaQueryWrapper lambdaQueryV = new LambdaQueryWrapper<>(); - lambdaQueryV.eq(RStatDataHarmrateVDPO::getLineId, lineIndex).eq(RStatDataHarmrateVDPO::getTime, lineParam.getDataDate() + InfluxDBPublicParam.START_TIME); - List> harmVMap = rStatDataHarmRateVDMapper.selectMaps(lambdaQueryV); - Map>> tenMap = harmVMap.stream().collect(Collectors.groupingBy(item -> item.get("phaseType").toString())); - - //谐波电流幅值 - LambdaQueryWrapper lambdaQueryI = new LambdaQueryWrapper<>(); - lambdaQueryI.eq(RStatDataIDPO::getLineId, lineIndex).eq(RStatDataIDPO::getTime, lineParam.getDataDate() + InfluxDBPublicParam.START_TIME); - List> harmIMap = rStatDataIDMapper.selectMaps(lambdaQueryI); - Map>> iMap = harmIMap.stream().collect(Collectors.groupingBy(item -> item.get("phaseType").toString())); - - //间谐波电压 - LambdaQueryWrapper lambdaQueryInV = new LambdaQueryWrapper<>(); - lambdaQueryInV.eq(RStatDataInharmVDPO::getLineId, lineIndex).eq(RStatDataInharmVDPO::getTime, lineParam.getDataDate() + InfluxDBPublicParam.START_TIME); - List> harmInVMap = rStatDataInHarmVDMapper.selectMaps(lambdaQueryInV); - Map>> inMap = harmInVMap.stream().collect(Collectors.groupingBy(item -> item.get("phaseType").toString())); - - //三相电压 - LambdaQueryWrapper lambdaQueryDataV = new LambdaQueryWrapper<>(); - lambdaQueryDataV.eq(RStatDataVDPO::getLineId, lineIndex).eq(RStatDataVDPO::getTime, lineParam.getDataDate() + InfluxDBPublicParam.START_TIME); - List rStatDataVDPOList = rStatDataVDMapper.selectList(lambdaQueryDataV); - Map> dataVMap = rStatDataVDPOList.stream().collect(Collectors.groupingBy(RStatDataVDPO::getPhaseType)); - - //电流 - LambdaQueryWrapper lambdaQueryDataI = new LambdaQueryWrapper<>(); - lambdaQueryDataI.eq(RStatDataIDPO::getLineId, lineIndex).eq(RStatDataIDPO::getTime, lineParam.getDataDate() + InfluxDBPublicParam.START_TIME); - List rStatDataIDPOList = rStatDataIDMapper.selectList(lambdaQueryDataI); - Map> dataIMap = rStatDataIDPOList.stream().collect(Collectors.groupingBy(RStatDataIDPO::getPhaseType)); - - //长时闪变 - LambdaQueryWrapper lambdaQueryDataPlt = new LambdaQueryWrapper<>(); - lambdaQueryDataPlt.eq(RStatDataPltDPO::getLineId, lineIndex).eq(RStatDataPltDPO::getTime, lineParam.getDataDate() + InfluxDBPublicParam.START_TIME); - List rStatDataPltDPOList = rStatDataPltDMapper.selectList(lambdaQueryDataPlt); - Map> dataPltMap = rStatDataPltDPOList.stream().collect(Collectors.groupingBy(RStatDataPltDPO::getPhaseType)); - - String phasic = ""; - for (int phase = 1; phase < 5; phase++) { - switch (phase) { - case 1: - phasic = "A"; - break; - case 2: - phasic = "B"; - break; - case 3: - phasic = "C"; - break; - case 4: - phasic = "T"; - break; - } - - MpSurplusAbnormalD mpSurplusAbnormalCp95 = new MpSurplusAbnormalD(); - mpSurplusAbnormalCp95.setPhasicType(phasic); - mpSurplusAbnormalCp95.setValueType("CP95"); - mpSurplusAbnormalCp95.setLineId(lineIndex); - mpSurplusAbnormalCp95.setTimeId(LocalDateTime.parse(lineParam.getDataDate() + InfluxDBPublicParam.START_TIME, DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"))); - - MpSurplusAbnormalD mpSurplusAbnormalAvg = new MpSurplusAbnormalD(); - mpSurplusAbnormalAvg.setPhasicType(phasic); - mpSurplusAbnormalAvg.setValueType("AVG"); - mpSurplusAbnormalAvg.setLineId(lineIndex); - mpSurplusAbnormalAvg.setTimeId(LocalDateTime.parse(lineParam.getDataDate() + InfluxDBPublicParam.START_TIME, DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"))); - - MpSurplusAbnormalD mpSurplusAbnormalMax = new MpSurplusAbnormalD(); - mpSurplusAbnormalMax.setPhasicType(phasic); - mpSurplusAbnormalMax.setValueType("MAX"); - mpSurplusAbnormalMax.setLineId(lineIndex); - mpSurplusAbnormalMax.setTimeId(LocalDateTime.parse(lineParam.getDataDate() + InfluxDBPublicParam.START_TIME, DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"))); - - MpSurplusAbnormalD mpSurplusAbnormalMin = new MpSurplusAbnormalD(); - mpSurplusAbnormalMin.setPhasicType(phasic); - mpSurplusAbnormalMin.setValueType("MIN"); - mpSurplusAbnormalMin.setLineId(lineIndex); - mpSurplusAbnormalMin.setTimeId(LocalDateTime.parse(lineParam.getDataDate() + InfluxDBPublicParam.START_TIME, DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"))); - - if (dataVMap.containsKey(phasic)) { - List mapList = dataVMap.get(phasic); - Map vMap = mapList.stream().collect(Collectors.toMap(RStatDataVDPO::getValueType, Function.identity())); - - //三项电压不平衡度 - if (vMap.get("CP95").getVUnbalance() > (Double) overLimit.get("ubalance")) { - mpSurplusAbnormalCp95.setUbalance(vMap.get("CP95").getVUnbalance().floatValue()); - mpSurplusAbnormalAvg.setUbalance(vMap.get("AVG").getVUnbalance().floatValue()); - mpSurplusAbnormalMin.setUbalance(vMap.get("MIN").getVUnbalance().floatValue()); - mpSurplusAbnormalMax.setUbalance(vMap.get("MAX").getVUnbalance().floatValue()); - flag = true; - } - - //电压畸变 - if (vMap.get("CP95").getVThd() > (Double) overLimit.get("uaberrance")) { - mpSurplusAbnormalCp95.setUaberrance(vMap.get("CP95").getVThd().floatValue()); - mpSurplusAbnormalAvg.setUaberrance(vMap.get("AVG").getVThd().floatValue()); - mpSurplusAbnormalMin.setUaberrance(vMap.get("MIN").getVThd().floatValue()); - mpSurplusAbnormalMax.setUaberrance(vMap.get("MAX").getVThd().floatValue()); - flag = true; - } - - //频率偏差 - if (Math.abs(vMap.get("MAX").getFreqDev()) > (Double) overLimit.get("freq_dev") || Math.abs(vMap.get("MIN").getFreqDev()) > (Double) overLimit.get("freq_dev")) { - mpSurplusAbnormalCp95.setFreq(vMap.get("CP95").getFreqDev().floatValue()); - mpSurplusAbnormalAvg.setFreq(vMap.get("AVG").getFreqDev().floatValue()); - mpSurplusAbnormalMin.setFreq(vMap.get("MIN").getFreqDev().floatValue()); - mpSurplusAbnormalMax.setFreq(vMap.get("MAX").getFreqDev().floatValue()); - flag = true; - } - - //电压上偏差 - if (Math.abs(vMap.get("MAX").getVlDev()) > (Double) overLimit.get("voltage_dev")) { - mpSurplusAbnormalCp95.setVoltageDev(vMap.get("CP95").getVlDev().floatValue()); - mpSurplusAbnormalAvg.setVoltageDev(vMap.get("AVG").getVlDev().floatValue()); - mpSurplusAbnormalMin.setVoltageDev(vMap.get("MIN").getVlDev().floatValue()); - mpSurplusAbnormalMax.setVoltageDev(vMap.get("MAX").getVlDev().floatValue()); - flag = true; - } - - } - - //负序电流 - if (dataIMap.containsKey(phasic)) { - List mapList = dataIMap.get(phasic); - Map inegMap = mapList.stream().collect(Collectors.toMap(RStatDataIDPO::getValueType, Function.identity())); - if (inegMap.get("CP95").getINeg() > (Double) overLimit.get("i_neg")) { - mpSurplusAbnormalCp95.setINeg(inegMap.get("CP95").getINeg().floatValue()); - mpSurplusAbnormalAvg.setINeg(inegMap.get("AVG").getINeg().floatValue()); - mpSurplusAbnormalMin.setINeg(inegMap.get("MIN").getINeg().floatValue()); - mpSurplusAbnormalMax.setINeg(inegMap.get("MAX").getINeg().floatValue()); - flag = true; - } - } - //长时闪变 - if (dataPltMap.containsKey(phasic)) { - List mapList = dataPltMap.get(phasic); - Map pltMap = mapList.stream().collect(Collectors.toMap(RStatDataPltDPO::getValueType, Function.identity())); - if (pltMap.get("MAX").getPlt() > (Double) overLimit.get("flicker")) { - mpSurplusAbnormalCp95.setFlicker(pltMap.get("CP95").getPlt().floatValue()); - mpSurplusAbnormalAvg.setFlicker(pltMap.get("AVG").getPlt().floatValue()); - mpSurplusAbnormalMin.setFlicker(pltMap.get("MIN").getPlt().floatValue()); - mpSurplusAbnormalMax.setFlicker(pltMap.get("MAX").getPlt().floatValue()); - flag = true; - } - } - - - //谐波电压 - dealData(tenMap,phasic,overLimit,flag,mpSurplusAbnormalCp95,mpSurplusAbnormalAvg,mpSurplusAbnormalMax,mpSurplusAbnormalMin,2,26,1,"uharm_","v_"); - - //谐波电流 - dealData(iMap,phasic,overLimit,flag,mpSurplusAbnormalCp95,mpSurplusAbnormalAvg,mpSurplusAbnormalMax,mpSurplusAbnormalMin,2,26,2,"iharm_","i_"); - - //间谐波电压 - dealData(inMap,phasic,overLimit,flag,mpSurplusAbnormalCp95,mpSurplusAbnormalAvg,mpSurplusAbnormalMax,mpSurplusAbnormalMin,1,17,3,"inuharm_","v_"); - - - - - if(flag){ - all.add(mpSurplusAbnormalCp95); - all.add(mpSurplusAbnormalAvg); - all.add(mpSurplusAbnormalMax); - all.add(mpSurplusAbnormalMin); - } - } - } - } - - if (CollUtil.isNotEmpty(all)) { - //入库操作 - this.saveBatch(all,1000); - } - - log.info("运行时长:"+timeInterval.intervalSecond()); - return true; - } - - - /** - * type 1.谐波电压含有率 2.谐波电流幅值 其他.间谐波电流 - * - * @author cdf - * @date 2023/8/22 - */ - private void assPojo(Map map, MpSurplusAbnormalD mpSurplusAbnormalD, Integer type) { - if (type == 1) { - //谐波电压 - map.forEach((key, val) -> { - switch (key) { - case "v_2": - mpSurplusAbnormalD.setUharm2(Float.parseFloat(val.toString())); - break; - case "v_3": - mpSurplusAbnormalD.setUharm3(Float.parseFloat(val.toString())); - break; - case "v_4": - mpSurplusAbnormalD.setUharm4(Float.parseFloat(val.toString())); - break; - case "v_5": - mpSurplusAbnormalD.setUharm5(Float.parseFloat(val.toString())); - break; - case "v_6": - mpSurplusAbnormalD.setUharm6(Float.parseFloat(val.toString())); - break; - case "v_7": - mpSurplusAbnormalD.setUharm7(Float.parseFloat(val.toString())); - break; - case "v_8": - mpSurplusAbnormalD.setUharm8(Float.parseFloat(val.toString())); - break; - case "v_9": - mpSurplusAbnormalD.setUharm9(Float.parseFloat(val.toString())); - break; - case "v_10": - mpSurplusAbnormalD.setUharm10(Float.parseFloat(val.toString())); - break; - case "v_11": - mpSurplusAbnormalD.setUharm11(Float.parseFloat(val.toString())); - break; - case "v_12": - mpSurplusAbnormalD.setUharm12(Float.parseFloat(val.toString())); - break; - case "v_13": - mpSurplusAbnormalD.setUharm13(Float.parseFloat(val.toString())); - break; - case "v_14": - mpSurplusAbnormalD.setUharm14(Float.parseFloat(val.toString())); - break; - case "v_15": - mpSurplusAbnormalD.setUharm15(Float.parseFloat(val.toString())); - break; - case "v_16": - mpSurplusAbnormalD.setUharm16(Float.parseFloat(val.toString())); - break; - case "v_17": - mpSurplusAbnormalD.setUharm17(Float.parseFloat(val.toString())); - break; - case "v_18": - mpSurplusAbnormalD.setUharm18(Float.parseFloat(val.toString())); - break; - case "v_19": - mpSurplusAbnormalD.setUharm19(Float.parseFloat(val.toString())); - break; - case "v_20": - mpSurplusAbnormalD.setUharm20(Float.parseFloat(val.toString())); - break; - case "v_21": - mpSurplusAbnormalD.setUharm21(Float.parseFloat(val.toString())); - break; - case "v_22": - mpSurplusAbnormalD.setUharm22(Float.parseFloat(val.toString())); - break; - case "v_23": - mpSurplusAbnormalD.setUharm23(Float.parseFloat(val.toString())); - break; - case "v_24": - mpSurplusAbnormalD.setUharm24(Float.parseFloat(val.toString())); - break; - case "v_25": - mpSurplusAbnormalD.setUharm25(Float.parseFloat(val.toString())); - break; - case "time": - break; - default: - throw new IllegalStateException("Unexpected value: " + key); - } - - }); - } else if (type == 2) { - //谐波电流 - map.forEach((key, val) -> { - switch (key) { - case "i_2": - mpSurplusAbnormalD.setIharm2(Float.parseFloat(val.toString())); - break; - case "i_3": - mpSurplusAbnormalD.setIharm3(Float.parseFloat(val.toString())); - break; - case "i_4": - mpSurplusAbnormalD.setIharm4(Float.parseFloat(val.toString())); - break; - case "i_5": - mpSurplusAbnormalD.setIharm5(Float.parseFloat(val.toString())); - break; - case "i_6": - mpSurplusAbnormalD.setIharm6(Float.parseFloat(val.toString())); - break; - case "i_7": - mpSurplusAbnormalD.setIharm7(Float.parseFloat(val.toString())); - break; - case "i_8": - mpSurplusAbnormalD.setIharm8(Float.parseFloat(val.toString())); - break; - case "i_9": - mpSurplusAbnormalD.setIharm9(Float.parseFloat(val.toString())); - break; - case "i_10": - mpSurplusAbnormalD.setIharm10(Float.parseFloat(val.toString())); - break; - case "i_11": - mpSurplusAbnormalD.setIharm11(Float.parseFloat(val.toString())); - break; - case "i_12": - mpSurplusAbnormalD.setIharm12(Float.parseFloat(val.toString())); - break; - case "i_13": - mpSurplusAbnormalD.setIharm13(Float.parseFloat(val.toString())); - break; - case "i_14": - mpSurplusAbnormalD.setIharm14(Float.parseFloat(val.toString())); - break; - case "i_15": - mpSurplusAbnormalD.setIharm15(Float.parseFloat(val.toString())); - break; - case "i_16": - mpSurplusAbnormalD.setIharm16(Float.parseFloat(val.toString())); - break; - case "i_17": - mpSurplusAbnormalD.setIharm17(Float.parseFloat(val.toString())); - break; - case "i_18": - mpSurplusAbnormalD.setIharm18(Float.parseFloat(val.toString())); - break; - case "i_19": - mpSurplusAbnormalD.setIharm19(Float.parseFloat(val.toString())); - break; - case "i_20": - mpSurplusAbnormalD.setIharm20(Float.parseFloat(val.toString())); - break; - case "i_21": - mpSurplusAbnormalD.setIharm21(Float.parseFloat(val.toString())); - break; - case "i_22": - mpSurplusAbnormalD.setIharm22(Float.parseFloat(val.toString())); - break; - case "i_23": - mpSurplusAbnormalD.setIharm23(Float.parseFloat(val.toString())); - break; - case "i_24": - mpSurplusAbnormalD.setIharm24(Float.parseFloat(val.toString())); - break; - case "i_25": - mpSurplusAbnormalD.setIharm25(Float.parseFloat(val.toString())); - break; - case "time": - break; - default: - throw new IllegalStateException("Unexpected value: " + key); - } - }); - } else { - //间谐波电压 - map.forEach((key, val) -> { - switch (key) { - case "v_1": - mpSurplusAbnormalD.setInuharm1(Float.parseFloat(val.toString())); - break; - case "v_2": - mpSurplusAbnormalD.setInuharm2(Float.parseFloat(val.toString())); - break; - case "v_3": - mpSurplusAbnormalD.setInuharm3(Float.parseFloat(val.toString())); - break; - case "v_4": - mpSurplusAbnormalD.setInuharm4(Float.parseFloat(val.toString())); - break; - case "v_5": - mpSurplusAbnormalD.setInuharm5(Float.parseFloat(val.toString())); - break; - case "v_6": - mpSurplusAbnormalD.setInuharm6(Float.parseFloat(val.toString())); - break; - case "v_7": - mpSurplusAbnormalD.setInuharm7(Float.parseFloat(val.toString())); - break; - case "v_8": - mpSurplusAbnormalD.setInuharm8(Float.parseFloat(val.toString())); - break; - case "v_9": - mpSurplusAbnormalD.setInuharm9(Float.parseFloat(val.toString())); - break; - case "v_10": - mpSurplusAbnormalD.setInuharm10(Float.parseFloat(val.toString())); - break; - case "v_11": - mpSurplusAbnormalD.setInuharm11(Float.parseFloat(val.toString())); - break; - case "v_12": - mpSurplusAbnormalD.setInuharm12(Float.parseFloat(val.toString())); - break; - case "v_13": - mpSurplusAbnormalD.setInuharm13(Float.parseFloat(val.toString())); - break; - case "v_14": - mpSurplusAbnormalD.setInuharm14(Float.parseFloat(val.toString())); - break; - case "v_15": - mpSurplusAbnormalD.setInuharm15(Float.parseFloat(val.toString())); - break; - case "v_16": - mpSurplusAbnormalD.setInuharm16(Float.parseFloat(val.toString())); - break; - case "time": - break; - default: - throw new IllegalStateException("Unexpected value: " + key); - } - - }); - } - - } - - - - - /** - * - * @author cdf - * @date 2023/8/23 - */ - private void dealData(Map>> inMap, - String phasic,Map overLimit, - Boolean flag,MpSurplusAbnormalD mpSurplusAbnormalCp95,MpSurplusAbnormalD mpSurplusAbnormalAvg,MpSurplusAbnormalD mpSurplusAbnormalMax,MpSurplusAbnormalD mpSurplusAbnormalMin - ,int start,int count,int type,String overTag,String temTag){ - if (inMap.containsKey(phasic)) { - List> mapList = inMap.get(phasic); - - Map> harmMap = mapList.stream().collect(Collectors.toMap(item -> item.get("value_type").toString(), Function.identity())); - - Map mCP95 = harmMap.get("CP95"); - Map mAVG = harmMap.get("AVG"); - Map mMAX = harmMap.get("MAX"); - Map mMIN = harmMap.get("MIN"); - Map moreValueCp95 = new HashMap<>(); - Map moreValueAvg = new HashMap<>(); - Map moreValueMax = new HashMap<>(); - Map moreValueMin = new HashMap<>(); - for (int i = start; i < count; i++) { - BigDecimal hv = (BigDecimal) mCP95.get(temTag + i); - String t = overTag + i; - BigDecimal over = BigDecimal.valueOf((Double) overLimit.get(t)); - if (hv.compareTo(over) > 0) { - moreValueCp95.put(temTag + i, hv.floatValue()); - moreValueAvg.put(temTag + i, mAVG.get(temTag + i)); - moreValueMax.put(temTag + i, mMAX.get(temTag + i)); - moreValueMin.put(temTag + i, mMIN.get(temTag + i)); - } - } - - if (moreValueCp95.size() > 0) { - flag = true; - assPojo(moreValueCp95, mpSurplusAbnormalCp95, type); - assPojo(moreValueAvg, mpSurplusAbnormalAvg, type); - assPojo(moreValueMax, mpSurplusAbnormalMax, type); - assPojo(moreValueMin, mpSurplusAbnormalMin, type); - } - } - } } diff --git a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/area/PrimaryGridDataService.java b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/area/PrimaryGridDataService.java deleted file mode 100644 index 907c88848..000000000 --- a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/area/PrimaryGridDataService.java +++ /dev/null @@ -1,27 +0,0 @@ -package com.njcn.prepare.harmonic.service.mysql.area; - -import com.njcn.prepare.harmonic.pojo.param.PrimaryGridDataIntegrityParam; -import com.njcn.prepare.harmonic.pojo.param.PrimaryGridParam; - -/** - * Description: - * 接口文档访问地址:http://serverIP:port/swagger-ui.html - * Date: 2022/11/25 8:46【需求编号】 - * - * @author clam - * @version V1.0.0 - */ -public interface PrimaryGridDataService { - /** - * @Description: primaryGridDataHanlder - * @Author: clam - * @Date: 2022/11/25 - */ - void primaryGridDataHanlder(PrimaryGridParam primaryGridParam); - /** - * @Description: 主网终端数据完整率月统计 - * @Author: clam - * @Date: 2022/11/30 - */ - void primaryGridDataIntegrityHanlder(PrimaryGridDataIntegrityParam primaryGridDataIntegrityParam); -} diff --git a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/line/NormalLimitService.java b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/line/NormalLimitService.java index 953d8e721..0699237c6 100644 --- a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/line/NormalLimitService.java +++ b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/line/NormalLimitService.java @@ -13,7 +13,4 @@ public interface NormalLimitService extends IMppService { - Boolean abnormalLineData(LineParam lineParam); - - }