diff --git a/pqs-device/common-device-biz/src/main/java/com/njcn/device/biz/commApi/DeptLineGeneralClient.java b/pqs-device/common-device-biz/src/main/java/com/njcn/device/biz/commApi/DeptLineGeneralClient.java new file mode 100644 index 000000000..02fae4087 --- /dev/null +++ b/pqs-device/common-device-biz/src/main/java/com/njcn/device/biz/commApi/DeptLineGeneralClient.java @@ -0,0 +1,36 @@ +package com.njcn.device.biz.commApi; + +import com.njcn.common.pojo.constant.ServerInfo; +import com.njcn.common.pojo.response.HttpResult; +import com.njcn.device.biz.commApi.fallback.DeptLineGeneralClientFallbackFactory; +import com.njcn.device.biz.pojo.dto.DeptGetChildrenDTO; +import com.njcn.device.biz.pojo.param.DeptGetLineParam; +import org.springframework.cloud.openfeign.FeignClient; +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; + +/** + * + * @author cdf + * @date 2023/4/24 + */ +@FeignClient( + value = ServerInfo.DEVICE, + path = "commTerminal", + fallbackFactory = DeptLineGeneralClientFallbackFactory.class) +public interface DeptLineGeneralClient { + + /** + * 通过部门获取所有子集部门所拥有的监测点 + * + * @param deptGetLineParam + * @return 指定的部门监测点信息 + */ + @PostMapping("/deptGetLineIds") + HttpResult> deptGetLineList(@RequestBody DeptGetLineParam deptGetLineParam); + + +} diff --git a/pqs-device/common-device-biz/src/main/java/com/njcn/device/biz/commApi/fallback/DeptLineGeneralClientFallbackFactory.java b/pqs-device/common-device-biz/src/main/java/com/njcn/device/biz/commApi/fallback/DeptLineGeneralClientFallbackFactory.java new file mode 100644 index 000000000..35078a0c3 --- /dev/null +++ b/pqs-device/common-device-biz/src/main/java/com/njcn/device/biz/commApi/fallback/DeptLineGeneralClientFallbackFactory.java @@ -0,0 +1,43 @@ +package com.njcn.device.biz.commApi.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.device.biz.commApi.DeptLineGeneralClient; +import com.njcn.device.biz.pojo.dto.DeptGetChildrenDTO; +import com.njcn.device.biz.pojo.param.DeptGetLineParam; +import com.njcn.device.biz.utils.DeviceEnumUtil; +import feign.hystrix.FallbackFactory; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Component; + +import java.util.List; + +/** + * 告警管理熔断降级 + * @author yzh + * @date 2022/9/19 + */ +@Slf4j +@Component +public class DeptLineGeneralClientFallbackFactory implements FallbackFactory { + @Override + public DeptLineGeneralClient create(Throwable throwable) { + //判断抛出异常是否为解码器抛出的业务异常 + Enum exceptionEnum = CommonResponseEnum.SERVICE_FALLBACK; + if (throwable.getCause() instanceof BusinessException) { + BusinessException businessException = (BusinessException) throwable.getCause(); + exceptionEnum = DeviceEnumUtil.getExceptionEnum(businessException.getResult()); + } + Enum finalExceptionEnum = exceptionEnum; + return new DeptLineGeneralClient() { + @Override + public HttpResult> deptGetLineList(DeptGetLineParam deptGetLineParam) { + log.error("{}异常,降级处理,异常为:{}", "获取终获取告警策略列表", throwable.toString()); + throw new BusinessException(finalExceptionEnum); + } + + }; + } +} + diff --git a/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/enums/DeviceResponseEnum.java b/pqs-device/common-device-biz/src/main/java/com/njcn/device/biz/enums/DeviceResponseEnum.java similarity index 99% rename from pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/enums/DeviceResponseEnum.java rename to pqs-device/common-device-biz/src/main/java/com/njcn/device/biz/enums/DeviceResponseEnum.java index b05750a1c..c6f7588a4 100644 --- a/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/enums/DeviceResponseEnum.java +++ b/pqs-device/common-device-biz/src/main/java/com/njcn/device/biz/enums/DeviceResponseEnum.java @@ -1,4 +1,4 @@ -package com.njcn.device.pq.enums; +package com.njcn.device.biz.enums; import lombok.Getter; diff --git a/pqs-device/common-device-biz/src/main/java/com/njcn/device/biz/pojo/dto/DeptGetChildrenDTO.java b/pqs-device/common-device-biz/src/main/java/com/njcn/device/biz/pojo/dto/DeptGetChildrenDTO.java new file mode 100644 index 000000000..62f728467 --- /dev/null +++ b/pqs-device/common-device-biz/src/main/java/com/njcn/device/biz/pojo/dto/DeptGetChildrenDTO.java @@ -0,0 +1,24 @@ +package com.njcn.device.biz.pojo.dto; + +import lombok.Data; + +import java.util.List; + +/** + * pqs + * + * @author cdf + * @date 2023/4/24 + */ +@Data +public class DeptGetChildrenDTO { + + private String deptId; + + private String deptName; + + private List deptChildren; + + private List lineIds; + +} diff --git a/pqs-device/common-device-biz/src/main/java/com/njcn/device/biz/pojo/param/DeptGetLineParam.java b/pqs-device/common-device-biz/src/main/java/com/njcn/device/biz/pojo/param/DeptGetLineParam.java new file mode 100644 index 000000000..d92bae4fe --- /dev/null +++ b/pqs-device/common-device-biz/src/main/java/com/njcn/device/biz/pojo/param/DeptGetLineParam.java @@ -0,0 +1,28 @@ +package com.njcn.device.biz.pojo.param; + + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.NotBlank; + + +/** + * pqs + * + * @author cdf + * @date 2023/4/24 + */ +@Data +public class DeptGetLineParam { + + @NotBlank(message = "部门id不可为空") + @ApiModelProperty(name = "deptId",value = "部门id") + private String deptId; + + @NotBlank(message = "系统类型不可为空") + @ApiModelProperty(name = "serverName",value = "系统类型 0.event-boot 1.harmonic-boot") + private String serverName; + + +} diff --git a/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/utils/DeviceEnumUtil.java b/pqs-device/common-device-biz/src/main/java/com/njcn/device/biz/utils/DeviceEnumUtil.java similarity index 95% rename from pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/utils/DeviceEnumUtil.java rename to pqs-device/common-device-biz/src/main/java/com/njcn/device/biz/utils/DeviceEnumUtil.java index 75c50a540..447736ca3 100644 --- a/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/utils/DeviceEnumUtil.java +++ b/pqs-device/common-device-biz/src/main/java/com/njcn/device/biz/utils/DeviceEnumUtil.java @@ -1,11 +1,12 @@ -package com.njcn.device.pq.utils; +package com.njcn.device.biz.utils; import cn.hutool.core.util.StrUtil; 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.common.utils.EnumUtils; -import com.njcn.device.pq.enums.DeviceResponseEnum; +import com.njcn.device.biz.enums.DeviceResponseEnum; + import javax.validation.constraints.NotNull; import java.util.Objects; diff --git a/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/api/fallback/AlarmClientFallbackFactory.java b/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/api/fallback/AlarmClientFallbackFactory.java index c3dfeb681..68e95089f 100644 --- a/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/api/fallback/AlarmClientFallbackFactory.java +++ b/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/api/fallback/AlarmClientFallbackFactory.java @@ -5,7 +5,7 @@ import com.njcn.common.pojo.exception.BusinessException; import com.njcn.common.pojo.response.HttpResult; import com.njcn.device.pq.api.AlarmClient; import com.njcn.device.pq.pojo.vo.AlarmStrategyVO; -import com.njcn.device.pq.utils.DeviceEnumUtil; +import com.njcn.device.biz.utils.DeviceEnumUtil; import feign.hystrix.FallbackFactory; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Component; diff --git a/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/api/fallback/DeptLineFeignClientFallbackFactory.java b/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/api/fallback/DeptLineFeignClientFallbackFactory.java index f8deea0f1..c7f43f082 100644 --- a/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/api/fallback/DeptLineFeignClientFallbackFactory.java +++ b/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/api/fallback/DeptLineFeignClientFallbackFactory.java @@ -4,7 +4,7 @@ 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.device.pq.api.DeptLineFeignClient; -import com.njcn.device.pq.utils.DeviceEnumUtil; +import com.njcn.device.biz.utils.DeviceEnumUtil; import feign.hystrix.FallbackFactory; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Component; diff --git a/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/api/fallback/DeviceTreeClientFallbackFactory.java b/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/api/fallback/DeviceTreeClientFallbackFactory.java index 6b528113f..666d389ed 100644 --- a/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/api/fallback/DeviceTreeClientFallbackFactory.java +++ b/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/api/fallback/DeviceTreeClientFallbackFactory.java @@ -5,7 +5,7 @@ import com.njcn.common.pojo.exception.BusinessException; import com.njcn.common.pojo.response.HttpResult; import com.njcn.device.pq.api.DeviceTreeClient; import com.njcn.device.pq.pojo.vo.TerminalTree; -import com.njcn.device.pq.utils.DeviceEnumUtil; +import com.njcn.device.biz.utils.DeviceEnumUtil; import feign.hystrix.FallbackFactory; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Component; diff --git a/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/api/fallback/GeneralDeviceInfoClientFallbackFactory.java b/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/api/fallback/GeneralDeviceInfoClientFallbackFactory.java index e04b521a3..1b06ecc69 100644 --- a/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/api/fallback/GeneralDeviceInfoClientFallbackFactory.java +++ b/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/api/fallback/GeneralDeviceInfoClientFallbackFactory.java @@ -8,9 +8,8 @@ import com.njcn.device.pq.pojo.bo.BaseLineInfo; import com.njcn.device.pq.pojo.dto.GeneralDeviceDTO; import com.njcn.device.pq.pojo.param.DeviceInfoParam; import com.njcn.device.pq.pojo.param.OnlineRateParam; -import com.njcn.device.pq.pojo.po.OnlineRate; import com.njcn.device.pq.pojo.vo.RStatOnlinerateVO; -import com.njcn.device.pq.utils.DeviceEnumUtil; +import com.njcn.device.biz.utils.DeviceEnumUtil; import feign.hystrix.FallbackFactory; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Component; diff --git a/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/api/fallback/LineFeignClientFallbackFactory.java b/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/api/fallback/LineFeignClientFallbackFactory.java index c5632cb20..d717e0865 100644 --- a/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/api/fallback/LineFeignClientFallbackFactory.java +++ b/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/api/fallback/LineFeignClientFallbackFactory.java @@ -11,7 +11,7 @@ import com.njcn.device.pq.pojo.po.Line; import com.njcn.device.pq.pojo.po.LineDetail; import com.njcn.device.pq.pojo.po.Overlimit; import com.njcn.device.pq.pojo.vo.*; -import com.njcn.device.pq.utils.DeviceEnumUtil; +import com.njcn.device.biz.utils.DeviceEnumUtil; import feign.hystrix.FallbackFactory; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Component; diff --git a/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/api/fallback/PqsTerminalLogsClientFallbackFactory.java b/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/api/fallback/PqsTerminalLogsClientFallbackFactory.java index 04f9c02ef..793d5b8a5 100644 --- a/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/api/fallback/PqsTerminalLogsClientFallbackFactory.java +++ b/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/api/fallback/PqsTerminalLogsClientFallbackFactory.java @@ -4,16 +4,12 @@ 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.device.pq.api.PqsTerminalLogsClient; -import com.njcn.device.pq.api.TerminalBaseClient; -import com.njcn.device.pq.pojo.po.Line; import com.njcn.device.pq.pojo.po.PqsTerminalLogs; -import com.njcn.device.pq.utils.DeviceEnumUtil; +import com.njcn.device.biz.utils.DeviceEnumUtil; import feign.hystrix.FallbackFactory; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Component; -import java.util.List; - /** * @author zbj * @version 1.0.0 diff --git a/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/api/fallback/SubstationFeignClientFallbackFactory.java b/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/api/fallback/SubstationFeignClientFallbackFactory.java index 832f5444d..7f668fd9a 100644 --- a/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/api/fallback/SubstationFeignClientFallbackFactory.java +++ b/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/api/fallback/SubstationFeignClientFallbackFactory.java @@ -5,7 +5,7 @@ import com.njcn.common.pojo.exception.BusinessException; import com.njcn.common.pojo.response.HttpResult; import com.njcn.device.pq.api.SubstationFeignClient; import com.njcn.device.pq.pojo.dto.SubstationDTO; -import com.njcn.device.pq.utils.DeviceEnumUtil; +import com.njcn.device.biz.utils.DeviceEnumUtil; import feign.hystrix.FallbackFactory; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Component; diff --git a/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/api/fallback/TerminalBaseClientFallbackFactory.java b/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/api/fallback/TerminalBaseClientFallbackFactory.java index 2d9e97d68..019b6215b 100644 --- a/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/api/fallback/TerminalBaseClientFallbackFactory.java +++ b/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/api/fallback/TerminalBaseClientFallbackFactory.java @@ -5,8 +5,7 @@ import com.njcn.common.pojo.exception.BusinessException; import com.njcn.common.pojo.response.HttpResult; import com.njcn.device.pq.api.TerminalBaseClient; import com.njcn.device.pq.pojo.po.Line; -import com.njcn.device.pq.pojo.vo.TerminalBaseVO; -import com.njcn.device.pq.utils.DeviceEnumUtil; +import com.njcn.device.biz.utils.DeviceEnumUtil; import feign.hystrix.FallbackFactory; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Component; diff --git a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/controller/CommTerminalController.java b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/controller/CommTerminalController.java new file mode 100644 index 000000000..6f4849770 --- /dev/null +++ b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/controller/CommTerminalController.java @@ -0,0 +1,119 @@ +package com.njcn.device.pq.controller; + +import cn.hutool.core.collection.CollectionUtil; +import cn.hutool.core.date.TimeInterval; +import com.njcn.common.pojo.enums.common.ServerEnum; +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.common.utils.EnumUtils; +import com.njcn.common.utils.HttpResultUtil; +import com.njcn.device.biz.pojo.dto.DeptGetChildrenDTO; +import com.njcn.device.biz.pojo.param.DeptGetLineParam; +import com.njcn.device.pq.service.DeptLineService; +import com.njcn.user.api.DeptFeignClient; +import com.njcn.user.pojo.dto.DeptDTO; +import com.njcn.web.controller.BaseController; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiImplicitParam; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import java.util.ArrayList; +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; +import java.util.stream.Stream; + +/** + * pqs + * + * @author cdf + * @date 2023/4/24 + */ +@RestController +@RequestMapping("commTerminal") +@RequiredArgsConstructor +@Slf4j +@Api(tags = "通用台账-所有子孙部门以及监测点") +public class CommTerminalController extends BaseController { + + private final DeptFeignClient deptFeignClient; + + private final DeptLineService deptLineService; + + + /** + * 通过部门获取所有子集部门所拥有的监测点 + * + * @author cdf + * @date 2023/4/24 + */ + @PostMapping("deptGetLineIds") + @ApiImplicitParam(name = "deptGetLineParam", value = "请求体", required = true) + public HttpResult> deptGetLineList(@RequestBody @Validated DeptGetLineParam deptGetLineParam) { + TimeInterval timer = new TimeInterval(); + String methodDescribe = getMethodDescribe("deptGetLineList"); + List all = new ArrayList<>(); + List deptDTOList = deptFeignClient.getDeptDescendantIndexes(deptGetLineParam.getDeptId(), Stream.of(0, 1).collect(Collectors.toList())).getData(); + getAllChildren(deptGetLineParam.getDeptId(), deptDTOList, all); + Map> map = deptLineService.getLineByDeptRelation(filterDataType(deptGetLineParam.getServerName())); + all.forEach(item -> { + List itemDeptChildren = item.getDeptChildren(); + if (CollectionUtil.isNotEmpty(itemDeptChildren)) { + List lineIds = new ArrayList<>(); + itemDeptChildren.forEach(i -> { + if (map.containsKey(i)) { + lineIds.addAll(map.get(i)); + } + }); + item.setLineIds(lineIds); + } + }); + log.info("运行时长" + timer.intervalRestart()); + return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, all, methodDescribe); + } + + + /** + * 获取指定部门所有子孙部门id + * + * @author cdf + * @date 2023/4/24 + */ + private void getAllChildren(String deptId, List deptAllList, List res) { + deptAllList.stream().filter(item -> item.getPid().equals(deptId)).forEach(it -> { + List deptChildren = deptAllList.stream().filter(deptDTO -> deptDTO.getPids().contains(it.getId())).map(DeptDTO::getId).collect(Collectors.toList()); + deptChildren.add(it.getId()); + DeptGetChildrenDTO generalDeviceDTO = new DeptGetChildrenDTO(); + generalDeviceDTO.setDeptId(it.getId()); + generalDeviceDTO.setDeptName(it.getName()); + generalDeviceDTO.setDeptChildren(deptChildren); + res.add(generalDeviceDTO); + getAllChildren(it.getId(), deptAllList, res); + }); + } + + + /** + * 筛选数据类型 + */ + private Integer filterDataType(String serverName) { + ServerEnum serverEnum = EnumUtils.getServerEnumByName(serverName); + switch (serverEnum) { + case EVENT: + return 0; + case HARMONIC: + return 1; + default: + throw new BusinessException(CommonResponseEnum.INVALID_PARAMETER); + } + + } + +} diff --git a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/controller/LineController.java b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/controller/LineController.java index 3e9a1f5bf..28eb84336 100644 --- a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/controller/LineController.java +++ b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/controller/LineController.java @@ -7,7 +7,7 @@ import com.njcn.common.pojo.exception.BusinessException; import com.njcn.common.pojo.response.HttpResult; import com.njcn.common.utils.HttpResultUtil; import com.njcn.common.utils.LogUtil; -import com.njcn.device.pq.enums.DeviceResponseEnum; +import com.njcn.device.biz.enums.DeviceResponseEnum; import com.njcn.device.pq.mapper.*; import com.njcn.device.pq.pojo.dto.*; import com.njcn.device.pq.pojo.param.DeviceInfoParam; @@ -16,8 +16,6 @@ import com.njcn.device.pq.pojo.param.OnlineRateParam; import com.njcn.device.pq.pojo.po.*; import com.njcn.device.pq.pojo.vo.*; import com.njcn.device.pq.service.LineService; -import com.njcn.device.pq.service.impl.GeneralDeviceService; -import com.njcn.user.api.DeptFeignClient; import com.njcn.web.controller.BaseController; import io.swagger.annotations.*; import lombok.RequiredArgsConstructor; diff --git a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/controller/TerminalBaseController.java b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/controller/TerminalBaseController.java index 2a13de6c4..94c74813f 100644 --- a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/controller/TerminalBaseController.java +++ b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/controller/TerminalBaseController.java @@ -12,7 +12,7 @@ import com.njcn.common.pojo.exception.BusinessException; import com.njcn.common.pojo.response.HttpResult; import com.njcn.common.utils.HttpResultUtil; import com.njcn.common.utils.LogUtil; -import com.njcn.device.pq.enums.DeviceResponseEnum; +import com.njcn.device.biz.enums.DeviceResponseEnum; import com.njcn.device.pq.mapper.LineDetailMapper; import com.njcn.device.pq.mapper.LineMapper; import com.njcn.device.pq.mapper.OverlimitMapper; @@ -45,7 +45,6 @@ import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; import springfox.documentation.annotations.ApiIgnore; -import javax.annotation.Resource; import javax.servlet.http.HttpServletResponse; import javax.validation.Valid; import java.util.ArrayList; diff --git a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/DeptLineService.java b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/DeptLineService.java index f5643ebee..5b068a6f0 100644 --- a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/DeptLineService.java +++ b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/DeptLineService.java @@ -53,12 +53,15 @@ public interface DeptLineService extends IService { * @date 2022/1/25 9:28 */ List getLineByDeptId(String id); - /** + /** * @Description: 获取部门和监测点的关系(分稳态暂态) - * @Param: [devDataType] - * @return: java.util.Map> + * @Param: [devDataType] + * @return: java.util.Map> * @Author: clam - * @Date: 2022/10/19 - */ + * @Date: 2022/10/19 + */ Map> getLineByDeptRelation(Integer devDataType); + + + } diff --git a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/impl/AlarmStrategyServiceImpl.java b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/impl/AlarmStrategyServiceImpl.java index d332bb319..268eebd9a 100644 --- a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/impl/AlarmStrategyServiceImpl.java +++ b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/impl/AlarmStrategyServiceImpl.java @@ -4,7 +4,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.njcn.common.pojo.enums.common.DataStateEnum; import com.njcn.common.pojo.exception.BusinessException; -import com.njcn.device.pq.enums.DeviceResponseEnum; +import com.njcn.device.biz.enums.DeviceResponseEnum; import com.njcn.device.pq.mapper.AlarmStrategyMapper; import com.njcn.device.pq.pojo.param.AlarmStrategyParam; import com.njcn.device.pq.pojo.po.AlarmStrategy; diff --git a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/impl/DeptLineServiceImpl.java b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/impl/DeptLineServiceImpl.java index 7fde625c7..770ac049a 100644 --- a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/impl/DeptLineServiceImpl.java +++ b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/impl/DeptLineServiceImpl.java @@ -81,13 +81,8 @@ public class DeptLineServiceImpl extends ServiceImpl i */ @Override public Map> getLineByDeptRelation(Integer devDataType) { - - Map> map = new HashMap<> (); - List deptLines = deptLineMapper.getLineByDeptRelation(devDataType); - Map> collect = deptLines.stream ( ).collect (Collectors.groupingBy (DeptLine::getId, Collectors.mapping (DeptLine::getLineId,Collectors.toList ()))); - - return collect; + return deptLines.stream ( ).collect (Collectors.groupingBy (DeptLine::getId, Collectors.mapping (DeptLine::getLineId,Collectors.toList ()))); } diff --git a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/impl/FlowMealServiceImpl.java b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/impl/FlowMealServiceImpl.java index cb4479e53..eff124aae 100644 --- a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/impl/FlowMealServiceImpl.java +++ b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/impl/FlowMealServiceImpl.java @@ -4,7 +4,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.njcn.common.pojo.enums.common.DataStateEnum; import com.njcn.common.pojo.exception.BusinessException; -import com.njcn.device.pq.enums.DeviceResponseEnum; +import com.njcn.device.biz.enums.DeviceResponseEnum; import com.njcn.device.pq.mapper.FlowMealMapper; import com.njcn.device.pq.mapper.RateOfFlowMapper; import com.njcn.device.pq.pojo.param.FlowMealParam; diff --git a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/impl/FlowStrategyServiceImpl.java b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/impl/FlowStrategyServiceImpl.java index cf4d36688..d7c96e3fd 100644 --- a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/impl/FlowStrategyServiceImpl.java +++ b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/impl/FlowStrategyServiceImpl.java @@ -4,7 +4,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.njcn.common.pojo.enums.common.DataStateEnum; import com.njcn.common.pojo.exception.BusinessException; -import com.njcn.device.pq.enums.DeviceResponseEnum; +import com.njcn.device.biz.enums.DeviceResponseEnum; import com.njcn.device.pq.mapper.FlowStrategyDicMapper; import com.njcn.device.pq.mapper.FlowStrategyMapper; import com.njcn.device.pq.mapper.RateOfFlowMapper; 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 928286c62..201bba1c0 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 @@ -9,7 +9,7 @@ import com.njcn.common.config.GeneralInfo; import com.njcn.common.pojo.exception.BusinessException; import com.njcn.device.pq.api.AlarmClient; import com.njcn.device.pq.api.GeneralDeviceInfoClient; -import com.njcn.device.pq.enums.DeviceResponseEnum; +import com.njcn.device.biz.enums.DeviceResponseEnum; import com.njcn.device.pq.enums.LineBaseEnum; import com.njcn.device.pq.mapper.LineIntegrityDataMapper; import com.njcn.device.pq.mapper.RStatIntegrityDMapper; @@ -21,17 +21,13 @@ import com.njcn.device.pq.pojo.param.OnlineRateParam; import com.njcn.device.pq.pojo.po.LineDataIntegrity; import com.njcn.device.pq.pojo.vo.AlarmStrategyVO; import com.njcn.device.pq.pojo.vo.LineIntegrityDataVO; -import com.njcn.device.pq.pojo.vo.LineIntegrityDataVO; 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.harmonic.pojo.vo.IntegrityIconVO; import com.njcn.influxdb.param.InfluxDBPublicParam; -import com.njcn.influxdb.utils.InfluxDBCommUtils; import com.njcn.influxdb.utils.InfluxDbUtils; -import com.njcn.system.enums.DicDataTypeEnum; import com.njcn.system.pojo.enums.StatisticsEnum; -import com.njcn.system.pojo.po.DictData; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.influxdb.dto.QueryResult; @@ -43,7 +39,6 @@ import java.math.BigDecimal; import java.math.RoundingMode; import java.text.Collator; import java.util.*; -import java.util.function.Function; import java.util.stream.Collectors; import java.util.stream.Stream; @@ -129,7 +124,7 @@ public class LineIntegrityDataServiceImpl extends ServiceImpl percentageOfCompleteDatas = rStatIntegrityDMapper.getLineIntegrityRate(generalDeviceDTO.getLineIndexes(),lineIntegrityDataParam.getSearchBeginTime(), lineIntegrityDataParam.getSearchEndTime()); - + for (LineIntegrityDataVO lineDataIntegrity : lineList) { boolean flag = false; for (LineDataIntegrity lineData : percentageOfCompleteDatas) { @@ -188,7 +183,7 @@ public class LineIntegrityDataServiceImpl extends ServiceImpl list = pollutionService.getLineRank(param); return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, list, methodDescribe); - } + }*/ @OperateInfo(info = LogEnum.BUSINESS_COMMON) @PostMapping("/deptSubRelations") diff --git a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/IPollutionService.java b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/IPollutionService.java index 42c9f7248..82591c8e7 100644 --- a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/IPollutionService.java +++ b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/IPollutionService.java @@ -49,5 +49,5 @@ public interface IPollutionService { * @author xy * @date 2022/2/22 10:04 */ - List getLineRank(HarmonicPublicParam param); + // List getLineRank(HarmonicPublicParam param); } diff --git a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/impl/PollutionServiceImpl.java b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/impl/PollutionServiceImpl.java index 5da8ae909..1cf1df280 100644 --- a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/impl/PollutionServiceImpl.java +++ b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/impl/PollutionServiceImpl.java @@ -175,7 +175,7 @@ public class PollutionServiceImpl implements IPollutionService { return list.stream().sorted(Comparator.comparing(PollutionLineDTO::getData).reversed().thenComparing(PollutionLineDTO::getName)).collect(Collectors.toList()); } */ - @Override + /* @Override public List getLineRank(HarmonicPublicParam harmonicPublicParam) { harmonicPublicParam.setServerName(generalInfo.getMicroServiceName()); List list = new ArrayList<>(); @@ -206,7 +206,7 @@ public class PollutionServiceImpl implements IPollutionService { return list.subList(Param.DOWN_LIMIT, Param.UP_LIMIT); } return list; - } + }*/ /** diff --git a/pqs-job/job-executor/src/main/java/com/njcn/executor/handler/DayJob.java b/pqs-job/job-executor/src/main/java/com/njcn/executor/handler/DayJob.java deleted file mode 100644 index e10178fd5..000000000 --- a/pqs-job/job-executor/src/main/java/com/njcn/executor/handler/DayJob.java +++ /dev/null @@ -1,2482 +0,0 @@ -//package com.njcn.executor.handler; -// -//import com.njcn.common.pojo.constant.PatternRegex; -//import com.njcn.device.pq.api.LineFeignClient; -//import com.njcn.executor.pojo.vo.*; -//import com.njcn.influxdb.config.InfluxDbConfig; -//import com.njcn.influxdb.param.InfluxDBPublicParam; -//import com.njcn.influxdb.utils.InfluxDbUtils; -//import com.xxl.job.core.context.XxlJobHelper; -//import com.xxl.job.core.handler.annotation.XxlJob; -//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.stereotype.Component; -//import org.springframework.util.CollectionUtils; -//import org.springframework.util.StringUtils; -// -//import java.text.ParseException; -//import java.text.SimpleDateFormat; -//import java.util.*; -//import java.util.concurrent.TimeUnit; -//import java.util.regex.Pattern; -// -///** -// * 类的介绍: -// * -// * @author xuyang -// * @version 1.0.0 -// * @createTime 2022/5/10 14:10 -// */ -//@Slf4j -//@Component -//@AllArgsConstructor -//public class DayJob { -// -// private final InfluxDbUtils influxDbUtils; -// -// private final LineFeignClient lineFeignClient; -// -// private final InfluxDbConfig influxDbConfig; -// -// @XxlJob("dayJobHandler") -// public void getDayData() throws ParseException { -// List paramList = new ArrayList<>(); -// List lineList = new ArrayList<>(); -// String command = XxlJobHelper.getJobParam(); -// SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); -// Calendar calendar = Calendar.getInstance(); -// calendar.set(calendar.get(Calendar.YEAR), calendar.get(Calendar.MONTH), calendar.get(Calendar.DAY_OF_MONTH)-1, 0, 0, 0); -// calendar.set(Calendar.MILLISECOND, 0); -// Calendar calendar2 = Calendar.getInstance(); -// calendar2.set(calendar2.get(Calendar.YEAR), calendar2.get(Calendar.MONTH), calendar2.get(Calendar.DAY_OF_MONTH)-1, 23, 59, 59); -// calendar2.set(Calendar.MILLISECOND, 0); -// String startTime = format.format(calendar.getTime()); -// String endTime = format.format(calendar2.getTime()); -// if (!StringUtils.isEmpty(command)){ -// paramList = Arrays.asList(command.split(",")); -// startTime = paramList.get(0); -// endTime = paramList.get(1); -// lineList = paramList.subList(2,paramList.size()); -// if (CollectionUtils.isEmpty(lineList)){ -// log.info("补招传入的参数,未传监测点id"); -// lineList = lineFeignClient.getLineList().getData(); -// } -// boolean s1 = Pattern.matches(PatternRegex.TIME_FORMAT,startTime); -// boolean e1 = Pattern.matches(PatternRegex.TIME_FORMAT,endTime); -// if (!s1 || !e1){ -// log.error("补招时间格式错误"); -// return; -// } else { -// startTime = startTime + " 00:00:00"; -// endTime = endTime + " 23:59:59"; -// } -// } else { -// lineList = lineFeignClient.getLineList().getData(); -// } -// long diff,diffDays,a,b = 0; -// Date d1 = format.parse(startTime); -// Date d2 = format.parse(endTime); -// diff = d2.getTime() - d1.getTime(); -// diffDays = diff / (24 * 60 * 60 * 1000-1000); -// int days = (int) diffDays; -// for (int i = 1; i <= days; i++) { -// a = d1.getTime() + (long)(i-1)*(24 * 60 * 60) * 1000; -// b = d1.getTime() + (long)i*(24 * 60 * 60) * 1000-1000; -// startTime = format.format(a); -// endTime = format.format(b); -// //生成dayV表 -// List dataV = getDataV(lineList,startTime,endTime); -// if (!CollectionUtils.isEmpty(dataV)){ -// insertDayV(dataV,a); -// } -// //生成dayI表 -// List dataI = getDataI(lineList,startTime,endTime); -// if (!CollectionUtils.isEmpty(dataI)){ -// insertDayI(dataI,a); -// } -// //生成dayFlicker表 -// List dataFlicker = getDataFlicker(lineList,startTime,endTime); -// if (!CollectionUtils.isEmpty(dataFlicker)){ -// insertDayFlicker(dataFlicker,a); -// } -// //生成dayFluc表 -// List dataFluc = getDataFluc(lineList,startTime,endTime); -// if (!CollectionUtils.isEmpty(dataFluc)){ -// insertDayFluc(dataFluc,a); -// } -// //生成dayHarmphasicI表 -// List dataHarmphasicI = getDataHarmphasicI(lineList,startTime,endTime); -// if (!CollectionUtils.isEmpty(dataHarmphasicI)){ -// insertDayHarmphasicI(dataHarmphasicI,a); -// } -// //生成dayHarmphasicV表 -// List dataHarmphasicV = getDataHarmphasicV(lineList,startTime,endTime); -// if (!CollectionUtils.isEmpty(dataHarmphasicV)){ -// insertDayHarmphasicV(dataHarmphasicV,a); -// } -// //生成dayHarmPowerP表 -// List dataHarmPowerP = getDataHarmPowerP(lineList,startTime,endTime); -// if (!CollectionUtils.isEmpty(dataHarmPowerP)){ -// insertDayHarmPowerP(dataHarmPowerP,a); -// } -// //生成dayHarmPowerQ表 -// List dataHarmPowerQ = getDataHarmPowerQ(lineList,startTime,endTime); -// if (!CollectionUtils.isEmpty(dataHarmPowerQ)){ -// insertDayHarmPowerQ(dataHarmPowerQ,a); -// } -// //生成dayHarmPowerS表 -// List dataHarmPowerS = getDataHarmPowerS(lineList,startTime,endTime); -// if (!CollectionUtils.isEmpty(dataHarmPowerS)){ -// insertDayHarmPowerS(dataHarmPowerS,a); -// } -// //生成dayHarmRateI -// List dataHarmRateI = getDataHarmRateI(lineList,startTime,endTime); -// if (!CollectionUtils.isEmpty(dataHarmRateI)){ -// insertDayHarmRateI(dataHarmRateI,a); -// } -// //生成dayHarmRateV -// List dataHarmRateV = getDataHarmRateV(lineList,startTime,endTime); -// if (!CollectionUtils.isEmpty(dataHarmRateV)){ -// insertDayHarmRateV(dataHarmRateV,a); -// } -// //生成dayInHarmI -// List dataInHarmI = getDataInHarmI(lineList,startTime,endTime); -// if (!CollectionUtils.isEmpty(dataInHarmI)){ -// insertDayInHarmI(dataInHarmI,a); -// } -// //生成dayInHarmV -// List dataInHarmV = getDataInHarmV(lineList,startTime,endTime); -// if (!CollectionUtils.isEmpty(dataInHarmV)){ -// insertDayInHarmV(dataInHarmV,a); -// } -// //生成dayInHarmRateI -// List dataInHarmRateI = getDataInHarmRateI(lineList,startTime,endTime); -// if (!CollectionUtils.isEmpty(dataInHarmRateI)){ -// insertDayInHarmRateI(dataInHarmRateI,a); -// } -// //生成dayInHarmRateV -// List dataInHarmRateV = getDataInHarmRateV(lineList,startTime,endTime); -// if (!CollectionUtils.isEmpty(dataInHarmRateV)){ -// insertDayInHarmRateV(dataInHarmRateV,a); -// } -// //生成dayPlt -// List dataPlt = getDataPlt(lineList,startTime,endTime); -// if (!CollectionUtils.isEmpty(dataPlt)){ -// insertDayPlt(dataPlt,a); -// } -// } -// } -// -// /** -// * 功能描述:获取dataV数据 -// * @author xy -// * @param lineList 监测点集合 -// * @param startTime 起始时间 -// * @param endTime 结束时间 -// * @date 2022/5/10 14:56 -// * @return List -// */ -// public List getDataV(List lineList, String startTime, String endTime){ -// List result = new ArrayList<>(); -// StringBuilder stringBuilder = lineStringBuilder(lineList); -// //最小值 -// StringBuilder stringBuilder1 = new StringBuilder(); -// StringBuilder stringBuilder2 = new StringBuilder(); -// stringBuilder1.append("min(freq) AS freq,min(freq_dev) AS freq_dev,min(rms) AS rms,min(rms_lvr) AS rms_lvr,min(v_neg) AS v_neg,min(v_pos) AS v_pos,min(v_thd) AS v_thd,min(v_unbalance) AS v_unbalance,min(v_zero) AS v_zero,min(vl_dev) AS vl_dev,min(vu_dev) AS vu_dev,"); -// for (int i = 1; i <=50 ; i++) { -// if (i==50){ -// stringBuilder1.append("min(v_").append(i).append(") AS v_").append(i); -// } else { -// stringBuilder1.append("min(v_").append(i).append(") AS v_").append(i).append(","); -// } -// } -// stringBuilder2.append(InfluxDBPublicParam.TIME + " >= '").append(startTime).append("' and ").append(InfluxDBPublicParam.TIME).append(" <= '").append(endTime).append("' and value_type = 'MIN' group by line_id,phasic_type,value_type,quality_flag ").append(InfluxDBPublicParam.TIME_ZONE); -// String sql1 = "select "+stringBuilder1+" from "+ InfluxDBPublicParam.DATA_V+" where "+stringBuilder+stringBuilder2; -// QueryResult sqlResult1 = influxDbUtils.query(sql1); -// InfluxDBResultMapper resultMapper1 = new InfluxDBResultMapper(); -// List list1 = resultMapper1.toPOJO(sqlResult1, DataV.class); -// //最大值 -// StringBuilder stringBuilder3 = new StringBuilder(); -// StringBuilder stringBuilder4 = new StringBuilder(); -// stringBuilder3.append("max(freq) AS freq,max(freq_dev) AS freq_dev,max(rms) AS rms,max(rms_lvr) AS rms_lvr,max(v_neg) AS v_neg,max(v_pos) AS v_pos,max(v_thd) AS v_thd,max(v_unbalance) AS v_unbalance,max(v_zero) AS v_zero,max(vl_dev) AS vl_dev,max(vu_dev) AS vu_dev,"); -// for (int i = 1; i <=50 ; i++) { -// if (i==50){ -// stringBuilder3.append("max(v_").append(i).append(") AS v_").append(i); -// } else { -// stringBuilder3.append("max(v_").append(i).append(") AS v_").append(i).append(","); -// } -// } -// stringBuilder4.append(InfluxDBPublicParam.TIME + " >= '").append(startTime).append("' and ").append(InfluxDBPublicParam.TIME).append(" <= '").append(endTime).append("' and value_type = 'MAX' group by line_id,phasic_type,value_type,quality_flag ").append(InfluxDBPublicParam.TIME_ZONE); -// String sql2 = "select "+stringBuilder3+" from "+ InfluxDBPublicParam.DATA_V+" where "+stringBuilder+stringBuilder4; -// QueryResult sqlResult2 = influxDbUtils.query(sql2); -// InfluxDBResultMapper resultMapper2 = new InfluxDBResultMapper(); -// List list2 = resultMapper2.toPOJO(sqlResult2, DataV.class); -// //平均值 -// StringBuilder stringBuilder5 = new StringBuilder(); -// StringBuilder stringBuilder6 = new StringBuilder(); -// stringBuilder5.append("mean(freq) AS freq,mean(freq_dev) AS freq_dev,mean(rms) AS rms,mean(rms_lvr) AS rms_lvr,mean(v_neg) AS v_neg,mean(v_pos) AS v_pos,mean(v_thd) AS v_thd,mean(v_unbalance) AS v_unbalance,mean(v_zero) AS v_zero,mean(vl_dev) AS vl_dev,mean(vu_dev) AS vu_dev,"); -// for (int i = 1; i <=50 ; i++) { -// if (i==50){ -// stringBuilder5.append("mean(v_").append(i).append(") AS v_").append(i); -// } else { -// stringBuilder5.append("mean(v_").append(i).append(") AS v_").append(i).append(","); -// } -// } -// stringBuilder6.append(InfluxDBPublicParam.TIME + " >= '").append(startTime).append("' and ").append(InfluxDBPublicParam.TIME).append(" <= '").append(endTime).append("' and value_type = 'AVG' group by line_id,phasic_type,value_type,quality_flag ").append(InfluxDBPublicParam.TIME_ZONE); -// String sql3 = "select "+stringBuilder5+" from "+ InfluxDBPublicParam.DATA_V+" where "+stringBuilder+stringBuilder6; -// QueryResult sqlResult3 = influxDbUtils.query(sql3); -// InfluxDBResultMapper resultMapper3 = new InfluxDBResultMapper(); -// List list3 = resultMapper3.toPOJO(sqlResult3, DataV.class); -// //CP95值 -// StringBuilder stringBuilder7 = new StringBuilder(); -// StringBuilder stringBuilder8 = new StringBuilder(); -// stringBuilder7.append("percentile(freq,95) AS freq,percentile(freq_dev,95) AS freq_dev,percentile(rms,95) AS rms,percentile(rms_lvr,95) AS rms_lvr,percentile(v_neg,95) AS v_neg,percentile(v_pos,95) AS v_pos,percentile(v_thd,95) AS v_thd,percentile(v_unbalance,95) AS v_unbalance,percentile(v_zero,95) AS v_zero,percentile(vl_dev,95) AS vl_dev,percentile(vu_dev,95) AS vu_dev,"); -// for (int i = 1; i <=50 ; i++) { -// if (i==50){ -// stringBuilder7.append("percentile(v_").append(i).append(",95) AS v_").append(i); -// } else { -// stringBuilder7.append("percentile(v_").append(i).append(",95) AS v_").append(i).append(","); -// } -// } -// stringBuilder8.append(InfluxDBPublicParam.TIME + " >= '").append(startTime).append("' and ").append(InfluxDBPublicParam.TIME).append(" <= '").append(endTime).append("' and value_type = 'AVG' group by line_id,phasic_type,value_type,quality_flag ").append(InfluxDBPublicParam.TIME_ZONE); -// String sql4 = "select "+stringBuilder7+" from "+ InfluxDBPublicParam.DATA_V+" where "+stringBuilder+stringBuilder8; -// QueryResult sqlResult4 = influxDbUtils.query(sql4); -// InfluxDBResultMapper resultMapper4 = new InfluxDBResultMapper(); -// List list4 = resultMapper4.toPOJO(sqlResult4, DataV.class); -// list4.forEach(item->{ -// item.setValueType("CP95"); -// }); -// result.addAll(list1); -// result.addAll(list2); -// result.addAll(list3); -// result.addAll(list4); -// return result; -// } -// -// /** -// * 功能描述:插入dayV表数据 -// * @author xy -// * @param list dataV集合 -// * @param time 时间戳 -// * @date 2022/5/11 14:55 -// */ -// private void insertDayV(List list, long time){ -// List records = new ArrayList<>(); -// list.forEach(item->{ -// Map tags = new HashMap<>(); -// Map fields = new HashMap<>(); -// tags.put("line_id",item.getLineId()); -// tags.put("phasic_type",item.getPhaseType()); -// tags.put("quality_flag",item.getQualityFlag()); -// tags.put("value_type",item.getValueType()); -// fields.put("freq",item.getFreq()); -// fields.put("freq_dev",item.getFreqDev()); -// fields.put("rms",item.getRms()); -// fields.put("rms_lvr",item.getRmsLvr()); -// fields.put("v_neg",item.getVNeg()); -// fields.put("v_pos",item.getVPos()); -// fields.put("v_thd",item.getVThd()); -// fields.put("v_unbalance",item.getVUnbalance()); -// fields.put("v_zero",item.getVZero()); -// fields.put("vl_dev",item.getVlDev()); -// fields.put("vu_dev",item.getVuDev()); -// fields.put("v_1",item.getV1()); -// fields.put("v_2",item.getV2()); -// fields.put("v_3",item.getV3()); -// fields.put("v_4",item.getV4()); -// fields.put("v_5",item.getV5()); -// fields.put("v_6",item.getV6()); -// fields.put("v_7",item.getV7()); -// fields.put("v_8",item.getV8()); -// fields.put("v_9",item.getV9()); -// fields.put("v_10",item.getV10()); -// fields.put("v_11",item.getV11()); -// fields.put("v_12",item.getV12()); -// fields.put("v_13",item.getV13()); -// fields.put("v_14",item.getV14()); -// fields.put("v_15",item.getV15()); -// fields.put("v_16",item.getV16()); -// fields.put("v_17",item.getV17()); -// fields.put("v_18",item.getV18()); -// fields.put("v_19",item.getV19()); -// fields.put("v_20",item.getV20()); -// fields.put("v_21",item.getV21()); -// fields.put("v_22",item.getV22()); -// fields.put("v_23",item.getV23()); -// fields.put("v_24",item.getV24()); -// fields.put("v_25",item.getV25()); -// fields.put("v_26",item.getV26()); -// fields.put("v_27",item.getV27()); -// fields.put("v_28",item.getV28()); -// fields.put("v_29",item.getV29()); -// fields.put("v_30",item.getV30()); -// fields.put("v_31",item.getV31()); -// fields.put("v_32",item.getV32()); -// fields.put("v_33",item.getV33()); -// fields.put("v_34",item.getV34()); -// fields.put("v_35",item.getV35()); -// fields.put("v_36",item.getV36()); -// fields.put("v_37",item.getV37()); -// fields.put("v_38",item.getV38()); -// fields.put("v_39",item.getV39()); -// fields.put("v_40",item.getV40()); -// fields.put("v_41",item.getV41()); -// fields.put("v_42",item.getV42()); -// fields.put("v_43",item.getV43()); -// fields.put("v_44",item.getV44()); -// fields.put("v_45",item.getV45()); -// fields.put("v_46",item.getV46()); -// fields.put("v_47",item.getV47()); -// fields.put("v_48",item.getV48()); -// fields.put("v_49",item.getV49()); -// fields.put("v_50",item.getV50()); -// Point point = influxDbUtils.pointBuilder(InfluxDBPublicParam.DAY_V, time, TimeUnit.MILLISECONDS, tags, fields); -// BatchPoints batchPoints = BatchPoints.database(influxDbConfig.getDatabase()).tag(InfluxDBPublicParam.LINE_ID, item.getLineId()).tag(InfluxDBPublicParam.PHASIC_TYPE,item.getPhaseType()).tag(InfluxDBPublicParam.QUALITY_FLAG,item.getQualityFlag()).tag(InfluxDBPublicParam.VALUE_TYPE,item.getValueType()).retentionPolicy("").consistency(InfluxDB.ConsistencyLevel.ALL).build(); -// batchPoints.point(point); -// records.add(batchPoints.lineProtocol()); -// }); -// influxDbUtils.batchInsert(influxDbConfig.getDatabase(),"", InfluxDB.ConsistencyLevel.ALL, records); -// } -// -// -// /** -// * 功能描述:获取dataI数据 -// * @author xy -// * @param lineList 监测点集合 -// * @param startTime 起始时间 -// * @param endTime 结束时间 -// * @date 2022/5/10 14:56 -// * @return List -// */ -// public List getDataI(List lineList, String startTime, String endTime){ -// List result = new ArrayList<>(); -// StringBuilder stringBuilder = lineStringBuilder(lineList); -// //最小值 -// StringBuilder stringBuilder1 = new StringBuilder(); -// StringBuilder stringBuilder2 = new StringBuilder(); -// stringBuilder1.append("min(rms) AS rms,min(i_neg) AS i_neg,min(i_pos) AS i_pos,min(i_thd) AS i_thd,min(i_unbalance) AS i_unbalance,min(i_zero) AS i_zero,"); -// for (int i = 1; i <=50 ; i++) { -// if (i==50){ -// stringBuilder1.append("min(i_").append(i).append(") AS i_").append(i); -// } else { -// stringBuilder1.append("min(i_").append(i).append(") AS i_").append(i).append(","); -// } -// } -// stringBuilder2.append(InfluxDBPublicParam.TIME + " >= '").append(startTime).append("' and ").append(InfluxDBPublicParam.TIME).append(" <= '").append(endTime).append("' and value_type = 'MIN' group by line_id,phasic_type,value_type,quality_flag ").append(InfluxDBPublicParam.TIME_ZONE); -// String sql1 = "select "+stringBuilder1+" from "+ InfluxDBPublicParam.DATA_I+" where "+stringBuilder+stringBuilder2; -// QueryResult sqlResult1 = influxDbUtils.query(sql1); -// InfluxDBResultMapper resultMapper1 = new InfluxDBResultMapper(); -// List list1 = resultMapper1.toPOJO(sqlResult1, DataI.class); -// //最大值 -// StringBuilder stringBuilder3 = new StringBuilder(); -// StringBuilder stringBuilder4 = new StringBuilder(); -// stringBuilder3.append("max(rms) AS rms,max(i_neg) AS i_neg,max(i_pos) AS i_pos,max(i_thd) AS i_thd,max(i_unbalance) AS i_unbalance,max(i_zero) AS i_zero,"); -// for (int i = 1; i <=50 ; i++) { -// if (i==50){ -// stringBuilder3.append("max(i_").append(i).append(") AS i_").append(i); -// } else { -// stringBuilder3.append("max(i_").append(i).append(") AS i_").append(i).append(","); -// } -// } -// stringBuilder4.append(InfluxDBPublicParam.TIME + " >= '").append(startTime).append("' and ").append(InfluxDBPublicParam.TIME).append(" <= '").append(endTime).append("' and value_type = 'MAX' group by line_id,phasic_type,value_type,quality_flag ").append(InfluxDBPublicParam.TIME_ZONE); -// String sql2 = "select "+stringBuilder3+" from "+ InfluxDBPublicParam.DATA_I+" where "+stringBuilder+stringBuilder4; -// QueryResult sqlResult2 = influxDbUtils.query(sql2); -// InfluxDBResultMapper resultMapper2 = new InfluxDBResultMapper(); -// List list2 = resultMapper2.toPOJO(sqlResult2, DataI.class); -// //平均值 -// StringBuilder stringBuilder5 = new StringBuilder(); -// StringBuilder stringBuilder6 = new StringBuilder(); -// stringBuilder5.append("mean(rms) AS rms,mean(i_neg) AS i_neg,mean(i_pos) AS i_pos,mean(i_thd) AS i_thd,mean(i_unbalance) AS i_unbalance,mean(i_zero) AS i_zero,"); -// for (int i = 1; i <=50 ; i++) { -// if (i==50){ -// stringBuilder5.append("mean(i_").append(i).append(") AS i_").append(i); -// } else { -// stringBuilder5.append("mean(i_").append(i).append(") AS i_").append(i).append(","); -// } -// } -// stringBuilder6.append(InfluxDBPublicParam.TIME + " >= '").append(startTime).append("' and ").append(InfluxDBPublicParam.TIME).append(" <= '").append(endTime).append("' and value_type = 'AVG' group by line_id,phasic_type,value_type,quality_flag ").append(InfluxDBPublicParam.TIME_ZONE); -// String sql3 = "select "+stringBuilder5+" from "+ InfluxDBPublicParam.DATA_I+" where "+stringBuilder+stringBuilder6; -// QueryResult sqlResult3 = influxDbUtils.query(sql3); -// InfluxDBResultMapper resultMapper3 = new InfluxDBResultMapper(); -// List list3 = resultMapper3.toPOJO(sqlResult3, DataI.class); -// //CP95值 -// StringBuilder stringBuilder7 = new StringBuilder(); -// StringBuilder stringBuilder8 = new StringBuilder(); -// stringBuilder7.append("percentile(rms,95) AS rms,percentile(i_neg,95) AS i_neg,percentile(i_pos,95) AS i_pos,percentile(i_thd,95) AS i_thd,percentile(i_unbalance,95) AS i_unbalance,percentile(i_zero,95) AS i_zero,"); -// for (int i = 1; i <=50 ; i++) { -// if (i==50){ -// stringBuilder7.append("percentile(i_").append(i).append(",95) AS i_").append(i); -// } else { -// stringBuilder7.append("percentile(i_").append(i).append(",95) AS i_").append(i).append(","); -// } -// } -// stringBuilder8.append(InfluxDBPublicParam.TIME + " >= '").append(startTime).append("' and ").append(InfluxDBPublicParam.TIME).append(" <= '").append(endTime).append("' and value_type = 'AVG' group by line_id,phasic_type,value_type,quality_flag ").append(InfluxDBPublicParam.TIME_ZONE); -// String sql4 = "select "+stringBuilder7+" from "+ InfluxDBPublicParam.DATA_I+" where "+stringBuilder+stringBuilder8; -// QueryResult sqlResult4 = influxDbUtils.query(sql4); -// InfluxDBResultMapper resultMapper4 = new InfluxDBResultMapper(); -// List list4 = resultMapper4.toPOJO(sqlResult4, DataI.class); -// list4.forEach(item->{ -// item.setValueType("CP95"); -// }); -// result.addAll(list1); -// result.addAll(list2); -// result.addAll(list3); -// result.addAll(list4); -// return result; -// } -// -// /** -// * 功能描述:插入dayI表数据 -// * @author xy -// * @param list dataI集合 -// * @param time 时间戳 -// * @date 2022/5/11 14:55 -// */ -// private void insertDayI(List list, long time){ -// List records = new ArrayList<>(); -// list.forEach(item->{ -// Map tags = new HashMap<>(); -// Map fields = new HashMap<>(); -// tags.put("line_id",item.getLineId()); -// tags.put("phasic_type",item.getPhaseType()); -// tags.put("quality_flag",item.getQualityFlag()); -// tags.put("value_type",item.getValueType()); -// fields.put("rms",item.getRms()); -// fields.put("i_neg",item.getINeg()); -// fields.put("i_pos",item.getIPos()); -// fields.put("i_thd",item.getIThd()); -// fields.put("i_unbalance",item.getIUnbalance()); -// fields.put("i_zero",item.getIZero()); -// fields.put("i_1",item.getI1()); -// fields.put("i_2",item.getI2()); -// fields.put("i_3",item.getI3()); -// fields.put("i_4",item.getI4()); -// fields.put("i_5",item.getI5()); -// fields.put("i_6",item.getI6()); -// fields.put("i_7",item.getI7()); -// fields.put("i_8",item.getI8()); -// fields.put("i_9",item.getI9()); -// fields.put("i_10",item.getI10()); -// fields.put("i_11",item.getI11()); -// fields.put("i_12",item.getI12()); -// fields.put("i_13",item.getI13()); -// fields.put("i_14",item.getI14()); -// fields.put("i_15",item.getI15()); -// fields.put("i_16",item.getI16()); -// fields.put("i_17",item.getI17()); -// fields.put("i_18",item.getI18()); -// fields.put("i_19",item.getI19()); -// fields.put("i_20",item.getI20()); -// fields.put("i_21",item.getI21()); -// fields.put("i_22",item.getI22()); -// fields.put("i_23",item.getI23()); -// fields.put("i_24",item.getI24()); -// fields.put("i_25",item.getI25()); -// fields.put("i_26",item.getI26()); -// fields.put("i_27",item.getI27()); -// fields.put("i_28",item.getI28()); -// fields.put("i_29",item.getI29()); -// fields.put("i_30",item.getI30()); -// fields.put("i_31",item.getI31()); -// fields.put("i_32",item.getI32()); -// fields.put("i_33",item.getI33()); -// fields.put("i_34",item.getI34()); -// fields.put("i_35",item.getI35()); -// fields.put("i_36",item.getI36()); -// fields.put("i_37",item.getI37()); -// fields.put("i_38",item.getI38()); -// fields.put("i_39",item.getI39()); -// fields.put("i_40",item.getI40()); -// fields.put("i_41",item.getI41()); -// fields.put("i_42",item.getI42()); -// fields.put("i_43",item.getI43()); -// fields.put("i_44",item.getI44()); -// fields.put("i_45",item.getI45()); -// fields.put("i_46",item.getI46()); -// fields.put("i_47",item.getI47()); -// fields.put("i_48",item.getI48()); -// fields.put("i_49",item.getI49()); -// fields.put("i_50",item.getI50()); -// Point point = influxDbUtils.pointBuilder(InfluxDBPublicParam.DAY_I, time, TimeUnit.MILLISECONDS, tags, fields); -// BatchPoints batchPoints = BatchPoints.database(influxDbConfig.getDatabase()).tag(InfluxDBPublicParam.LINE_ID, item.getLineId()).tag(InfluxDBPublicParam.PHASIC_TYPE,item.getPhaseType()).tag(InfluxDBPublicParam.QUALITY_FLAG,item.getQualityFlag()).tag(InfluxDBPublicParam.VALUE_TYPE,item.getValueType()).retentionPolicy("").consistency(InfluxDB.ConsistencyLevel.ALL).build(); -// batchPoints.point(point); -// records.add(batchPoints.lineProtocol()); -// }); -// influxDbUtils.batchInsert(influxDbConfig.getDatabase(),"", InfluxDB.ConsistencyLevel.ALL, records); -// } -// -// -// /** -// * 功能描述:获取dataFlicker数据 -// * @author xy -// * @param startTime 起始时间 -// * @param endTime 结束时间 -// * @date 2022/5/10 14:56 -// * @return List -// */ -// public List getDataFlicker(List lineList, String startTime, String endTime){ -// List result = new ArrayList<>(); -// StringBuilder stringBuilder = lineStringBuilder(lineList); -// //最小值 -// String sql1 = "select min(fluc) AS fluc,min(plt) AS plt,min(pst) AS pst from "+ InfluxDBPublicParam.DATA_FLICKER+" where "+stringBuilder+" time >= '" + startTime + "' and time <= '" + endTime + "' group by line_id,phasic_type,quality_flag "+ InfluxDBPublicParam.TIME_ZONE; -// QueryResult sqlResult1 = influxDbUtils.query(sql1); -// InfluxDBResultMapper resultMapper1 = new InfluxDBResultMapper(); -// List list1 = resultMapper1.toPOJO(sqlResult1, DataFlicker.class); -// list1.forEach(item->{ -// item.setValueType("MIN"); -// }); -// //最大值 -// String sql2 = "select max(fluc) AS fluc,max(plt) AS plt,max(pst) AS pst from "+ InfluxDBPublicParam.DATA_FLICKER+" where "+stringBuilder+" time >= '" + startTime + "' and time <= '" + endTime + "' group by line_id,phasic_type,quality_flag "+ InfluxDBPublicParam.TIME_ZONE; -// QueryResult sqlResult2 = influxDbUtils.query(sql2); -// InfluxDBResultMapper resultMapper2 = new InfluxDBResultMapper(); -// List list2 = resultMapper2.toPOJO(sqlResult2, DataFlicker.class); -// list2.forEach(item->{ -// item.setValueType("MAX"); -// }); -// //平均值 -// String sql3 = "select mean(fluc) AS fluc,mean(plt) AS plt,mean(pst) AS pst from "+ InfluxDBPublicParam.DATA_FLICKER+" where "+stringBuilder+" time >= '" + startTime + "' and time <= '" + endTime + "' group by line_id,phasic_type,quality_flag "+ InfluxDBPublicParam.TIME_ZONE; -// QueryResult sqlResult3 = influxDbUtils.query(sql3); -// InfluxDBResultMapper resultMapper3= new InfluxDBResultMapper(); -// List list3 = resultMapper3.toPOJO(sqlResult3, DataFlicker.class); -// list3.forEach(item->{ -// item.setValueType("AVG"); -// }); -// //CP95值 -// String sql4 = "select percentile(fluc,95) AS fluc,percentile(plt,95) AS plt,percentile(pst,95) AS pst from "+ InfluxDBPublicParam.DATA_FLICKER+" where "+stringBuilder+" time >= '" + startTime + "' and time <= '" + endTime + "' group by line_id,phasic_type,quality_flag "+ InfluxDBPublicParam.TIME_ZONE;; -// QueryResult sqlResult4 = influxDbUtils.query(sql4); -// InfluxDBResultMapper resultMapper4= new InfluxDBResultMapper(); -// List list4 = resultMapper4.toPOJO(sqlResult4, DataFlicker.class); -// list4.forEach(item->{ -// item.setValueType("CP95"); -// }); -// result.addAll(list1); -// result.addAll(list2); -// result.addAll(list3); -// result.addAll(list4); -// return result; -// } -// -// /** -// * 功能描述:插入dayFlicker表数据 -// * @author xy -// * @param list dataFlicker集合 -// * @param time 时间戳 -// * @date 2022/5/11 14:55 -// */ -// private void insertDayFlicker(List list, long time){ -// List records = new ArrayList<>(); -// list.forEach(item->{ -// Map tags = new HashMap<>(); -// Map fields = new HashMap<>(); -// tags.put("line_id",item.getLineId()); -// tags.put("phasic_type",item.getPhaseType()); -// tags.put("quality_flag",item.getQualityFlag()); -// tags.put("value_type",item.getValueType()); -// fields.put("fluc",item.getFluc()); -// fields.put("plt",item.getPlt()); -// fields.put("pst",item.getPst()); -// Point point = influxDbUtils.pointBuilder(InfluxDBPublicParam.DAY_FLICKER, time, TimeUnit.MILLISECONDS, tags, fields); -// BatchPoints batchPoints = BatchPoints.database(influxDbConfig.getDatabase()).tag(InfluxDBPublicParam.LINE_ID, item.getLineId()).tag(InfluxDBPublicParam.PHASIC_TYPE,item.getPhaseType()).tag(InfluxDBPublicParam.QUALITY_FLAG,item.getQualityFlag()).tag(InfluxDBPublicParam.VALUE_TYPE,item.getValueType()).retentionPolicy("").consistency(InfluxDB.ConsistencyLevel.ALL).build(); -// batchPoints.point(point); -// records.add(batchPoints.lineProtocol()); -// }); -// influxDbUtils.batchInsert(influxDbConfig.getDatabase(),"", InfluxDB.ConsistencyLevel.ALL, records); -// } -// -// -// /** -// * 功能描述:获取dataFluc数据 -// * @author xy -// * @param startTime 起始时间 -// * @param endTime 结束时间 -// * @date 2022/5/10 14:56 -// * @return List -// */ -// public List getDataFluc(List lineList, String startTime, String endTime){ -// List result = new ArrayList<>(); -// StringBuilder stringBuilder = lineStringBuilder(lineList); -// //最小值 -// String sql1 = "select min(fluc) AS fluc,min(fluccf) AS fluccf from "+ InfluxDBPublicParam.DATA_FLUC+" where "+stringBuilder+" time >= '" + startTime + "' and time <= '" + endTime + "' group by line_id,phasic_type,quality_flag "+ InfluxDBPublicParam.TIME_ZONE; -// QueryResult sqlResult1 = influxDbUtils.query(sql1); -// InfluxDBResultMapper resultMapper1 = new InfluxDBResultMapper(); -// List list1 = resultMapper1.toPOJO(sqlResult1, DataFluc.class); -// list1.forEach(item->{ -// item.setValueType("MIN"); -// }); -// //最大值 -// String sql2 = "select max(fluc) AS fluc,max(fluccf) AS fluccf from "+ InfluxDBPublicParam.DATA_FLUC+" where "+stringBuilder+" time >= '" + startTime + "' and time <= '" + endTime + "' group by line_id,phasic_type,quality_flag "+ InfluxDBPublicParam.TIME_ZONE; -// QueryResult sqlResult2 = influxDbUtils.query(sql2); -// InfluxDBResultMapper resultMapper2 = new InfluxDBResultMapper(); -// List list2 = resultMapper2.toPOJO(sqlResult2, DataFluc.class); -// list2.forEach(item->{ -// item.setValueType("MAX"); -// }); -// //平均值 -// String sql3 = "select mean(fluc) AS fluc,mean(fluccf) AS fluccf from "+ InfluxDBPublicParam.DATA_FLUC+" where "+stringBuilder+" time >= '" + startTime + "' and time <= '" + endTime + "' group by line_id,phasic_type,quality_flag "+ InfluxDBPublicParam.TIME_ZONE; -// QueryResult sqlResult3 = influxDbUtils.query(sql3); -// InfluxDBResultMapper resultMapper3= new InfluxDBResultMapper(); -// List list3 = resultMapper3.toPOJO(sqlResult3, DataFluc.class); -// list3.forEach(item->{ -// item.setValueType("AVG"); -// }); -// //CP95值 -// String sql4 = "select percentile(fluc,95) AS fluc,percentile(fluccf,95) AS fluccf from "+ InfluxDBPublicParam.DATA_FLUC+" where "+stringBuilder+" time >= '" + startTime + "' and time <= '" + endTime + "' group by line_id,phasic_type,quality_flag "+ InfluxDBPublicParam.TIME_ZONE; -// QueryResult sqlResult4 = influxDbUtils.query(sql4); -// InfluxDBResultMapper resultMapper4= new InfluxDBResultMapper(); -// List list4 = resultMapper4.toPOJO(sqlResult4, DataFluc.class); -// list4.forEach(item->{ -// item.setValueType("CP95"); -// }); -// result.addAll(list1); -// result.addAll(list2); -// result.addAll(list3); -// result.addAll(list4); -// return result; -// } -// -// /** -// * 功能描述:插入dayFluc表数据 -// * @author xy -// * @param list dataFluc集合 -// * @param time 时间戳 -// * @date 2022/5/12 8:55 -// */ -// private void insertDayFluc(List list, long time){ -// List records = new ArrayList<>(); -// list.forEach(item->{ -// Map tags = new HashMap<>(); -// Map fields = new HashMap<>(); -// tags.put("line_id",item.getLineId()); -// tags.put("phasic_type",item.getPhaseType()); -// tags.put("quality_flag",item.getQualityFlag()); -// tags.put("value_type",item.getValueType()); -// fields.put("fluc",item.getFluc()); -// fields.put("fluccf",item.getFluccf()); -// Point point = influxDbUtils.pointBuilder(InfluxDBPublicParam.DAY_FLUC, time, TimeUnit.MILLISECONDS, tags, fields); -// BatchPoints batchPoints = BatchPoints.database(influxDbConfig.getDatabase()).tag(InfluxDBPublicParam.LINE_ID, item.getLineId()).tag(InfluxDBPublicParam.PHASIC_TYPE,item.getPhaseType()).tag(InfluxDBPublicParam.QUALITY_FLAG,item.getQualityFlag()).tag(InfluxDBPublicParam.VALUE_TYPE,item.getValueType()).retentionPolicy("").consistency(InfluxDB.ConsistencyLevel.ALL).build(); -// batchPoints.point(point); -// records.add(batchPoints.lineProtocol()); -// }); -// influxDbUtils.batchInsert(influxDbConfig.getDatabase(),"", InfluxDB.ConsistencyLevel.ALL, records); -// } -// -// -// /** -// * 功能描述:获取data_harmphasic_i数据 -// * @author xy -// * @param startTime 起始时间 -// * @param endTime 结束时间 -// * @date 2022/5/10 14:56 -// * @return List -// */ -// public List getDataHarmphasicI(List lineList, String startTime, String endTime){ -// List result = new ArrayList<>(); -// StringBuilder stringBuilder = lineStringBuilder(lineList); -// //最小值 -// StringBuilder stringBuilder1 = new StringBuilder(); -// StringBuilder stringBuilder2 = new StringBuilder(); -// for (int i = 1; i <=50 ; i++) { -// if (i==50){ -// stringBuilder1.append("min(i_").append(i).append(") AS i_").append(i); -// } else { -// stringBuilder1.append("min(i_").append(i).append(") AS i_").append(i).append(","); -// } -// } -// stringBuilder2.append(InfluxDBPublicParam.TIME + " >= '").append(startTime).append("' and ").append(InfluxDBPublicParam.TIME).append(" <= '").append(endTime).append("' and value_type = 'MIN' group by line_id,phasic_type,value_type,quality_flag ").append(InfluxDBPublicParam.TIME_ZONE); -// String sql1 = "select "+stringBuilder1+" from "+ InfluxDBPublicParam.DATA_HARM_PHASIC_I+" where "+stringBuilder+stringBuilder2; -// QueryResult sqlResult1 = influxDbUtils.query(sql1); -// InfluxDBResultMapper resultMapper1 = new InfluxDBResultMapper(); -// List list1 = resultMapper1.toPOJO(sqlResult1, DataHarmPhasicI.class); -// //最大值 -// StringBuilder stringBuilder3 = new StringBuilder(); -// StringBuilder stringBuilder4 = new StringBuilder(); -// for (int i = 1; i <=50 ; i++) { -// if (i==50){ -// stringBuilder3.append("max(i_").append(i).append(") AS i_").append(i); -// } else { -// stringBuilder3.append("max(i_").append(i).append(") AS i_").append(i).append(","); -// } -// } -// stringBuilder4.append(InfluxDBPublicParam.TIME + " >= '").append(startTime).append("' and ").append(InfluxDBPublicParam.TIME).append(" <= '").append(endTime).append("' and value_type = 'MAX' group by line_id,phasic_type,value_type,quality_flag ").append(InfluxDBPublicParam.TIME_ZONE); -// String sql2 = "select "+stringBuilder3+" from "+ InfluxDBPublicParam.DATA_HARM_PHASIC_I+" where "+stringBuilder+stringBuilder4; -// QueryResult sqlResult2 = influxDbUtils.query(sql2); -// InfluxDBResultMapper resultMapper2 = new InfluxDBResultMapper(); -// List list2 = resultMapper2.toPOJO(sqlResult2, DataHarmPhasicI.class); -// //平均值 -// StringBuilder stringBuilder5 = new StringBuilder(); -// StringBuilder stringBuilder6 = new StringBuilder(); -// for (int i = 1; i <=50 ; i++) { -// if (i==50){ -// stringBuilder5.append("mean(i_").append(i).append(") AS i_").append(i); -// } else { -// stringBuilder5.append("mean(i_").append(i).append(") AS i_").append(i).append(","); -// } -// } -// stringBuilder6.append(InfluxDBPublicParam.TIME + " >= '").append(startTime).append("' and ").append(InfluxDBPublicParam.TIME).append(" <= '").append(endTime).append("' and value_type = 'AVG' group by line_id,phasic_type,value_type,quality_flag ").append(InfluxDBPublicParam.TIME_ZONE); -// String sql3 = "select "+stringBuilder5+" from "+ InfluxDBPublicParam.DATA_HARM_PHASIC_I+" where "+stringBuilder+stringBuilder6; -// QueryResult sqlResult3 = influxDbUtils.query(sql3); -// InfluxDBResultMapper resultMapper3 = new InfluxDBResultMapper(); -// List list3 = resultMapper3.toPOJO(sqlResult3, DataHarmPhasicI.class); -// //CP95值 -// StringBuilder stringBuilder7 = new StringBuilder(); -// StringBuilder stringBuilder8 = new StringBuilder(); -// for (int i = 1; i <=50 ; i++) { -// if (i==50){ -// stringBuilder7.append("percentile(i_").append(i).append(",95) AS i_").append(i); -// } else { -// stringBuilder7.append("percentile(i_").append(i).append(",95) AS i_").append(i).append(","); -// } -// } -// stringBuilder8.append(InfluxDBPublicParam.TIME + " >= '").append(startTime).append("' and ").append(InfluxDBPublicParam.TIME).append(" <= '").append(endTime).append("' and value_type = 'AVG' group by line_id,phasic_type,value_type,quality_flag ").append(InfluxDBPublicParam.TIME_ZONE); -// String sql4 = "select "+stringBuilder7+" from "+ InfluxDBPublicParam.DATA_HARM_PHASIC_I+" where "+stringBuilder+stringBuilder8; -// QueryResult sqlResult4 = influxDbUtils.query(sql4); -// InfluxDBResultMapper resultMapper4 = new InfluxDBResultMapper(); -// List list4 = resultMapper4.toPOJO(sqlResult4, DataHarmPhasicI.class); -// list4.forEach(item->{ -// item.setValueType("CP95"); -// }); -// result.addAll(list1); -// result.addAll(list2); -// result.addAll(list3); -// result.addAll(list4); -// return result; -// } -// -// /** -// * 功能描述:插入day_harmphasic_i表数据 -// * @author xy -// * @param list data_harmphasic_i表数据 -// * @param time 时间戳 -// * @date 2022/5/12 8:55 -// */ -// private void insertDayHarmphasicI(List list, long time){ -// List records = new ArrayList<>(); -// list.forEach(item->{ -// Map tags = new HashMap<>(); -// Map fields = new HashMap<>(); -// tags.put("line_id",item.getLineId()); -// tags.put("phasic_type",item.getPhaseType()); -// tags.put("quality_flag",item.getQualityFlag()); -// tags.put("value_type",item.getValueType()); -// fields.put("i_1",item.getI1()); -// fields.put("i_2",item.getI2()); -// fields.put("i_3",item.getI3()); -// fields.put("i_4",item.getI4()); -// fields.put("i_5",item.getI5()); -// fields.put("i_6",item.getI6()); -// fields.put("i_7",item.getI7()); -// fields.put("i_8",item.getI8()); -// fields.put("i_9",item.getI9()); -// fields.put("i_10",item.getI10()); -// fields.put("i_11",item.getI11()); -// fields.put("i_12",item.getI12()); -// fields.put("i_13",item.getI13()); -// fields.put("i_14",item.getI14()); -// fields.put("i_15",item.getI15()); -// fields.put("i_16",item.getI16()); -// fields.put("i_17",item.getI17()); -// fields.put("i_18",item.getI18()); -// fields.put("i_19",item.getI19()); -// fields.put("i_20",item.getI20()); -// fields.put("i_21",item.getI21()); -// fields.put("i_22",item.getI22()); -// fields.put("i_23",item.getI23()); -// fields.put("i_24",item.getI24()); -// fields.put("i_25",item.getI25()); -// fields.put("i_26",item.getI26()); -// fields.put("i_27",item.getI27()); -// fields.put("i_28",item.getI28()); -// fields.put("i_29",item.getI29()); -// fields.put("i_30",item.getI30()); -// fields.put("i_31",item.getI31()); -// fields.put("i_32",item.getI32()); -// fields.put("i_33",item.getI33()); -// fields.put("i_34",item.getI34()); -// fields.put("i_35",item.getI35()); -// fields.put("i_36",item.getI36()); -// fields.put("i_37",item.getI37()); -// fields.put("i_38",item.getI38()); -// fields.put("i_39",item.getI39()); -// fields.put("i_40",item.getI40()); -// fields.put("i_41",item.getI41()); -// fields.put("i_42",item.getI42()); -// fields.put("i_43",item.getI43()); -// fields.put("i_44",item.getI44()); -// fields.put("i_45",item.getI45()); -// fields.put("i_46",item.getI46()); -// fields.put("i_47",item.getI47()); -// fields.put("i_48",item.getI48()); -// fields.put("i_49",item.getI49()); -// fields.put("i_50",item.getI50()); -// Point point = influxDbUtils.pointBuilder(InfluxDBPublicParam.DAY_HARM_PHASIC_I, time, TimeUnit.MILLISECONDS, tags, fields); -// BatchPoints batchPoints = BatchPoints.database(influxDbConfig.getDatabase()).tag(InfluxDBPublicParam.LINE_ID, item.getLineId()).tag(InfluxDBPublicParam.PHASIC_TYPE,item.getPhaseType()).tag(InfluxDBPublicParam.QUALITY_FLAG,item.getQualityFlag()).tag(InfluxDBPublicParam.VALUE_TYPE,item.getValueType()).retentionPolicy("").consistency(InfluxDB.ConsistencyLevel.ALL).build(); -// batchPoints.point(point); -// records.add(batchPoints.lineProtocol()); -// }); -// influxDbUtils.batchInsert(influxDbConfig.getDatabase(),"", InfluxDB.ConsistencyLevel.ALL, records); -// } -// -// /** -// * 功能描述:获取data_harmphasic_v数据 -// * @author xy -// * @param startTime 起始时间 -// * @param endTime 结束时间 -// * @date 2022/5/10 14:56 -// * @return List -// */ -// public List getDataHarmphasicV(List lineList, String startTime, String endTime){ -// List result = new ArrayList<>(); -// StringBuilder stringBuilder = lineStringBuilder(lineList); -// //最小值 -// StringBuilder stringBuilder1 = new StringBuilder(); -// StringBuilder stringBuilder2 = new StringBuilder(); -// for (int i = 1; i <=50 ; i++) { -// if (i==50){ -// stringBuilder1.append("min(v_").append(i).append(") AS v_").append(i); -// } else { -// stringBuilder1.append("min(v_").append(i).append(") AS v_").append(i).append(","); -// } -// } -// stringBuilder2.append(InfluxDBPublicParam.TIME + " >= '").append(startTime).append("' and ").append(InfluxDBPublicParam.TIME).append(" <= '").append(endTime).append("' and value_type = 'MIN' group by line_id,phasic_type,value_type,quality_flag ").append(InfluxDBPublicParam.TIME_ZONE); -// String sql1 = "select "+stringBuilder1+" from "+ InfluxDBPublicParam.DATA_HARM_PHASIC_V+" where "+stringBuilder+stringBuilder2; -// QueryResult sqlResult1 = influxDbUtils.query(sql1); -// InfluxDBResultMapper resultMapper1 = new InfluxDBResultMapper(); -// List list1 = resultMapper1.toPOJO(sqlResult1, DataHarmPhasicV.class); -// //最大值 -// StringBuilder stringBuilder3 = new StringBuilder(); -// StringBuilder stringBuilder4 = new StringBuilder(); -// for (int i = 1; i <=50 ; i++) { -// if (i==50){ -// stringBuilder3.append("max(v_").append(i).append(") AS v_").append(i); -// } else { -// stringBuilder3.append("max(v_").append(i).append(") AS v_").append(i).append(","); -// } -// } -// stringBuilder4.append(InfluxDBPublicParam.TIME + " >= '").append(startTime).append("' and ").append(InfluxDBPublicParam.TIME).append(" <= '").append(endTime).append("' and value_type = 'MAX' group by line_id,phasic_type,value_type,quality_flag ").append(InfluxDBPublicParam.TIME_ZONE); -// String sql2 = "select "+stringBuilder3+" from "+ InfluxDBPublicParam.DATA_HARM_PHASIC_V+" where "+stringBuilder+stringBuilder4; -// QueryResult sqlResult2 = influxDbUtils.query(sql2); -// InfluxDBResultMapper resultMapper2 = new InfluxDBResultMapper(); -// List list2 = resultMapper2.toPOJO(sqlResult2, DataHarmPhasicV.class); -// //平均值 -// StringBuilder stringBuilder5 = new StringBuilder(); -// StringBuilder stringBuilder6 = new StringBuilder(); -// for (int i = 1; i <=50 ; i++) { -// if (i==50){ -// stringBuilder5.append("mean(v_").append(i).append(") AS v_").append(i); -// } else { -// stringBuilder5.append("mean(v_").append(i).append(") AS v_").append(i).append(","); -// } -// } -// stringBuilder6.append(InfluxDBPublicParam.TIME + " >= '").append(startTime).append("' and ").append(InfluxDBPublicParam.TIME).append(" <= '").append(endTime).append("' and value_type = 'AVG' group by line_id,phasic_type,value_type,quality_flag ").append(InfluxDBPublicParam.TIME_ZONE); -// String sql3 = "select "+stringBuilder5+" from "+ InfluxDBPublicParam.DATA_HARM_PHASIC_V+" where "+stringBuilder+stringBuilder6; -// QueryResult sqlResult3 = influxDbUtils.query(sql3); -// InfluxDBResultMapper resultMapper3 = new InfluxDBResultMapper(); -// List list3 = resultMapper3.toPOJO(sqlResult3, DataHarmPhasicV.class); -// //CP95值 -// StringBuilder stringBuilder7 = new StringBuilder(); -// StringBuilder stringBuilder8 = new StringBuilder(); -// for (int i = 1; i <=50 ; i++) { -// if (i==50){ -// stringBuilder7.append("percentile(v_").append(i).append(",95) AS v_").append(i); -// } else { -// stringBuilder7.append("percentile(v_").append(i).append(",95) AS v_").append(i).append(","); -// } -// } -// stringBuilder8.append(InfluxDBPublicParam.TIME + " >= '").append(startTime).append("' and ").append(InfluxDBPublicParam.TIME).append(" <= '").append(endTime).append("' and value_type = 'AVG' group by line_id,phasic_type,value_type,quality_flag ").append(InfluxDBPublicParam.TIME_ZONE); -// String sql4 = "select "+stringBuilder7+" from "+ InfluxDBPublicParam.DATA_HARM_PHASIC_V+" where "+stringBuilder+stringBuilder8; -// QueryResult sqlResult4 = influxDbUtils.query(sql4); -// InfluxDBResultMapper resultMapper4 = new InfluxDBResultMapper(); -// List list4 = resultMapper4.toPOJO(sqlResult4, DataHarmPhasicV.class); -// list4.forEach(item->{ -// item.setValueType("CP95"); -// }); -// result.addAll(list1); -// result.addAll(list2); -// result.addAll(list3); -// result.addAll(list4); -// return result; -// } -// -// /** -// * 功能描述:插入day_harmphasic_V表数据 -// * @author xy -// * @param list data_harmphasic_V表数据 -// * @param time 时间戳 -// * @date 2022/5/12 8:55 -// */ -// private void insertDayHarmphasicV(List list, long time){ -// List records = new ArrayList<>(); -// list.forEach(item->{ -// Map tags = new HashMap<>(); -// Map fields = new HashMap<>(); -// tags.put("line_id",item.getLineId()); -// tags.put("phasic_type",item.getPhaseType()); -// tags.put("quality_flag",item.getQualityFlag()); -// tags.put("value_type",item.getValueType()); -// fields.put("v_1",item.getV1()); -// fields.put("v_2",item.getV2()); -// fields.put("v_3",item.getV3()); -// fields.put("v_4",item.getV4()); -// fields.put("v_5",item.getV5()); -// fields.put("v_6",item.getV6()); -// fields.put("v_7",item.getV7()); -// fields.put("v_8",item.getV8()); -// fields.put("v_9",item.getV9()); -// fields.put("v_10",item.getV10()); -// fields.put("v_11",item.getV11()); -// fields.put("v_12",item.getV12()); -// fields.put("v_13",item.getV13()); -// fields.put("v_14",item.getV14()); -// fields.put("v_15",item.getV15()); -// fields.put("v_16",item.getV16()); -// fields.put("v_17",item.getV17()); -// fields.put("v_18",item.getV18()); -// fields.put("v_19",item.getV19()); -// fields.put("v_20",item.getV20()); -// fields.put("v_21",item.getV21()); -// fields.put("v_22",item.getV22()); -// fields.put("v_23",item.getV23()); -// fields.put("v_24",item.getV24()); -// fields.put("v_25",item.getV25()); -// fields.put("v_26",item.getV26()); -// fields.put("v_27",item.getV27()); -// fields.put("v_28",item.getV28()); -// fields.put("v_29",item.getV29()); -// fields.put("v_30",item.getV30()); -// fields.put("v_31",item.getV31()); -// fields.put("v_32",item.getV32()); -// fields.put("v_33",item.getV33()); -// fields.put("v_34",item.getV34()); -// fields.put("v_35",item.getV35()); -// fields.put("v_36",item.getV36()); -// fields.put("v_37",item.getV37()); -// fields.put("v_38",item.getV38()); -// fields.put("v_39",item.getV39()); -// fields.put("v_40",item.getV40()); -// fields.put("v_41",item.getV41()); -// fields.put("v_42",item.getV42()); -// fields.put("v_43",item.getV43()); -// fields.put("v_44",item.getV44()); -// fields.put("v_45",item.getV45()); -// fields.put("v_46",item.getV46()); -// fields.put("v_47",item.getV47()); -// fields.put("v_48",item.getV48()); -// fields.put("v_49",item.getV49()); -// fields.put("v_50",item.getV50()); -// Point point = influxDbUtils.pointBuilder(InfluxDBPublicParam.DAY_HARM_PHASIC_V, time, TimeUnit.MILLISECONDS, tags, fields); -// BatchPoints batchPoints = BatchPoints.database(influxDbConfig.getDatabase()).tag(InfluxDBPublicParam.LINE_ID, item.getLineId()).tag(InfluxDBPublicParam.PHASIC_TYPE,item.getPhaseType()).tag(InfluxDBPublicParam.QUALITY_FLAG,item.getQualityFlag()).tag(InfluxDBPublicParam.VALUE_TYPE,item.getValueType()).retentionPolicy("").consistency(InfluxDB.ConsistencyLevel.ALL).build(); -// batchPoints.point(point); -// records.add(batchPoints.lineProtocol()); -// }); -// influxDbUtils.batchInsert(influxDbConfig.getDatabase(),"", InfluxDB.ConsistencyLevel.ALL, records); -// } -// -// /** -// * 功能描述:获取data_harmpower_p数据 -// * @author xy -// * @param startTime 起始时间 -// * @param endTime 结束时间 -// * @date 2022/5/10 14:56 -// * @return List -// */ -// public List getDataHarmPowerP(List lineList, String startTime, String endTime){ -// List result = new ArrayList<>(); -// StringBuilder stringBuilder = lineStringBuilder(lineList); -// //最小值 -// StringBuilder stringBuilder1 = new StringBuilder(); -// StringBuilder stringBuilder2 = new StringBuilder(); -// stringBuilder1.append("min(p) AS p,min(df) AS df,min(pf) AS pf,"); -// for (int i = 1; i <=50 ; i++) { -// if (i==50){ -// stringBuilder1.append("min(p_").append(i).append(") AS p_").append(i); -// } else { -// stringBuilder1.append("min(p_").append(i).append(") AS p_").append(i).append(","); -// } -// } -// stringBuilder2.append(InfluxDBPublicParam.TIME + " >= '").append(startTime).append("' and ").append(InfluxDBPublicParam.TIME).append(" <= '").append(endTime).append("' and value_type = 'MIN' group by line_id,phasic_type,value_type,quality_flag ").append(InfluxDBPublicParam.TIME_ZONE); -// String sql1 = "select "+stringBuilder1+" from "+ InfluxDBPublicParam.DATA_HARM_POWER_P+" where "+stringBuilder+stringBuilder2; -// QueryResult sqlResult1 = influxDbUtils.query(sql1); -// InfluxDBResultMapper resultMapper1 = new InfluxDBResultMapper(); -// List list1 = resultMapper1.toPOJO(sqlResult1, DataHarmPowerP.class); -// //最大值 -// StringBuilder stringBuilder3 = new StringBuilder(); -// StringBuilder stringBuilder4 = new StringBuilder(); -// stringBuilder3.append("max(p) AS p,max(df) AS df,max(pf) AS pf,"); -// for (int i = 1; i <=50 ; i++) { -// if (i==50){ -// stringBuilder3.append("max(p_").append(i).append(") AS p_").append(i); -// } else { -// stringBuilder3.append("max(p_").append(i).append(") AS p_").append(i).append(","); -// } -// } -// stringBuilder4.append(InfluxDBPublicParam.TIME + " >= '").append(startTime).append("' and ").append(InfluxDBPublicParam.TIME).append(" <= '").append(endTime).append("' and value_type = 'MAX' group by line_id,phasic_type,value_type,quality_flag ").append(InfluxDBPublicParam.TIME_ZONE); -// String sql2 = "select "+stringBuilder3+" from "+ InfluxDBPublicParam.DATA_HARM_POWER_P+" where "+stringBuilder+stringBuilder4; -// QueryResult sqlResult2 = influxDbUtils.query(sql2); -// InfluxDBResultMapper resultMapper2 = new InfluxDBResultMapper(); -// List list2 = resultMapper2.toPOJO(sqlResult2, DataHarmPowerP.class); -// //平均值 -// StringBuilder stringBuilder5 = new StringBuilder(); -// StringBuilder stringBuilder6 = new StringBuilder(); -// stringBuilder5.append("mean(p) AS p,mean(df) AS df,mean(pf) AS pf,"); -// for (int i = 1; i <=50 ; i++) { -// if (i==50){ -// stringBuilder5.append("mean(p_").append(i).append(") AS p_").append(i); -// } else { -// stringBuilder5.append("mean(p_").append(i).append(") AS p_").append(i).append(","); -// } -// } -// stringBuilder6.append(InfluxDBPublicParam.TIME + " >= '").append(startTime).append("' and ").append(InfluxDBPublicParam.TIME).append(" <= '").append(endTime).append("' and value_type = 'AVG' group by line_id,phasic_type,value_type,quality_flag ").append(InfluxDBPublicParam.TIME_ZONE); -// String sql3 = "select "+stringBuilder5+" from "+ InfluxDBPublicParam.DATA_HARM_POWER_P+" where "+stringBuilder+stringBuilder6; -// QueryResult sqlResult3 = influxDbUtils.query(sql3); -// InfluxDBResultMapper resultMapper3 = new InfluxDBResultMapper(); -// List list3 = resultMapper3.toPOJO(sqlResult3, DataHarmPowerP.class); -// //CP95值 -// StringBuilder stringBuilder7 = new StringBuilder(); -// StringBuilder stringBuilder8 = new StringBuilder(); -// stringBuilder7.append("percentile(p,95) AS p,percentile(df,95) AS df,percentile(pf,95) AS pf,"); -// for (int i = 1; i <=50 ; i++) { -// if (i==50){ -// stringBuilder7.append("percentile(p_").append(i).append(",95) AS p_").append(i); -// } else { -// stringBuilder7.append("percentile(p_").append(i).append(",95) AS p_").append(i).append(","); -// } -// } -// stringBuilder8.append(InfluxDBPublicParam.TIME + " >= '").append(startTime).append("' and ").append(InfluxDBPublicParam.TIME).append(" <= '").append(endTime).append("' and value_type = 'AVG' group by line_id,phasic_type,value_type,quality_flag ").append(InfluxDBPublicParam.TIME_ZONE); -// String sql4 = "select "+stringBuilder7+" from "+ InfluxDBPublicParam.DATA_HARM_POWER_P+" where "+stringBuilder+stringBuilder8; -// QueryResult sqlResult4 = influxDbUtils.query(sql4); -// InfluxDBResultMapper resultMapper4 = new InfluxDBResultMapper(); -// List list4 = resultMapper4.toPOJO(sqlResult4, DataHarmPowerP.class); -// list4.forEach(item->{ -// item.setValueType("CP95"); -// }); -// result.addAll(list1); -// result.addAll(list2); -// result.addAll(list3); -// result.addAll(list4); -// return result; -// } -// -// /** -// * 功能描述:插入day_harmpower_p表数据 -// * @author xy -// * @param list data_harmpower_p表数据 -// * @param time 时间戳 -// * @date 2022/5/12 8:55 -// */ -// private void insertDayHarmPowerP(List list, long time){ -// List records = new ArrayList<>(); -// list.forEach(item->{ -// Map tags = new HashMap<>(); -// Map fields = new HashMap<>(); -// tags.put("line_id",item.getLineId()); -// tags.put("phasic_type",item.getPhaseType()); -// tags.put("quality_flag",item.getQualityFlag()); -// tags.put("value_type",item.getValueType()); -// fields.put("df",item.getDf()); -// fields.put("pf",item.getPf()); -// fields.put("p",item.getP()); -// fields.put("p_1",item.getP1()); -// fields.put("p_2",item.getP2()); -// fields.put("p_3",item.getP3()); -// fields.put("p_4",item.getP4()); -// fields.put("p_5",item.getP5()); -// fields.put("p_6",item.getP6()); -// fields.put("p_7",item.getP7()); -// fields.put("p_8",item.getP8()); -// fields.put("p_9",item.getP9()); -// fields.put("p_10",item.getP10()); -// fields.put("p_11",item.getP11()); -// fields.put("p_12",item.getP12()); -// fields.put("p_13",item.getP13()); -// fields.put("p_14",item.getP14()); -// fields.put("p_15",item.getP15()); -// fields.put("p_16",item.getP16()); -// fields.put("p_17",item.getP17()); -// fields.put("p_18",item.getP18()); -// fields.put("p_19",item.getP19()); -// fields.put("p_20",item.getP20()); -// fields.put("p_21",item.getP21()); -// fields.put("p_22",item.getP22()); -// fields.put("p_23",item.getP23()); -// fields.put("p_24",item.getP24()); -// fields.put("p_25",item.getP25()); -// fields.put("p_26",item.getP26()); -// fields.put("p_27",item.getP27()); -// fields.put("p_28",item.getP28()); -// fields.put("p_29",item.getP29()); -// fields.put("p_30",item.getP30()); -// fields.put("p_31",item.getP31()); -// fields.put("p_32",item.getP32()); -// fields.put("p_33",item.getP33()); -// fields.put("p_34",item.getP34()); -// fields.put("p_35",item.getP35()); -// fields.put("p_36",item.getP36()); -// fields.put("p_37",item.getP37()); -// fields.put("p_38",item.getP38()); -// fields.put("p_39",item.getP39()); -// fields.put("p_40",item.getP40()); -// fields.put("p_41",item.getP41()); -// fields.put("p_42",item.getP42()); -// fields.put("p_43",item.getP43()); -// fields.put("p_44",item.getP44()); -// fields.put("p_45",item.getP45()); -// fields.put("p_46",item.getP46()); -// fields.put("p_47",item.getP47()); -// fields.put("p_48",item.getP48()); -// fields.put("p_49",item.getP49()); -// fields.put("p_50",item.getP50()); -// Point point = influxDbUtils.pointBuilder(InfluxDBPublicParam.DAY_HARM_POWER_P, time, TimeUnit.MILLISECONDS, tags, fields); -// BatchPoints batchPoints = BatchPoints.database(influxDbConfig.getDatabase()).tag(InfluxDBPublicParam.LINE_ID, item.getLineId()).tag(InfluxDBPublicParam.PHASIC_TYPE,item.getPhaseType()).tag(InfluxDBPublicParam.QUALITY_FLAG,item.getQualityFlag()).tag(InfluxDBPublicParam.VALUE_TYPE,item.getValueType()).retentionPolicy("").consistency(InfluxDB.ConsistencyLevel.ALL).build(); -// batchPoints.point(point); -// records.add(batchPoints.lineProtocol()); -// }); -// influxDbUtils.batchInsert(influxDbConfig.getDatabase(),"", InfluxDB.ConsistencyLevel.ALL, records); -// } -// -// -// /** -// * 功能描述:获取data_harmpower_q数据 -// * @author xy -// * @param startTime 起始时间 -// * @param endTime 结束时间 -// * @date 2022/5/10 14:56 -// * @return List -// */ -// public List getDataHarmPowerQ(List lineList, String startTime, String endTime){ -// List result = new ArrayList<>(); -// StringBuilder stringBuilder = lineStringBuilder(lineList); -// //最小值 -// StringBuilder stringBuilder1 = new StringBuilder(); -// StringBuilder stringBuilder2 = new StringBuilder(); -// stringBuilder1.append("min(q) AS q,"); -// for (int i = 1; i <=50 ; i++) { -// if (i==50){ -// stringBuilder1.append("min(q_").append(i).append(") AS q_").append(i); -// } else { -// stringBuilder1.append("min(q_").append(i).append(") AS q_").append(i).append(","); -// } -// } -// stringBuilder2.append(InfluxDBPublicParam.TIME + " >= '").append(startTime).append("' and ").append(InfluxDBPublicParam.TIME).append(" <= '").append(endTime).append("' and value_type = 'MIN' group by line_id,phasic_type,value_type,quality_flag ").append(InfluxDBPublicParam.TIME_ZONE); -// String sql1 = "select "+stringBuilder1+" from "+ InfluxDBPublicParam.DATA_HARM_POWER_Q+" where "+stringBuilder+stringBuilder2; -// QueryResult sqlResult1 = influxDbUtils.query(sql1); -// InfluxDBResultMapper resultMapper1 = new InfluxDBResultMapper(); -// List list1 = resultMapper1.toPOJO(sqlResult1, DataHarmPowerQ.class); -// //最大值 -// StringBuilder stringBuilder3 = new StringBuilder(); -// StringBuilder stringBuilder4 = new StringBuilder(); -// stringBuilder3.append("max(q) AS q,"); -// for (int i = 1; i <=50 ; i++) { -// if (i==50){ -// stringBuilder3.append("max(q_").append(i).append(") AS q_").append(i); -// } else { -// stringBuilder3.append("max(q_").append(i).append(") AS q_").append(i).append(","); -// } -// } -// stringBuilder4.append(InfluxDBPublicParam.TIME + " >= '").append(startTime).append("' and ").append(InfluxDBPublicParam.TIME).append(" <= '").append(endTime).append("' and value_type = 'MAX' group by line_id,phasic_type,value_type,quality_flag ").append(InfluxDBPublicParam.TIME_ZONE); -// String sql2 = "select "+stringBuilder3+" from "+ InfluxDBPublicParam.DATA_HARM_POWER_Q+" where "+stringBuilder+stringBuilder4; -// QueryResult sqlResult2 = influxDbUtils.query(sql2); -// InfluxDBResultMapper resultMapper2 = new InfluxDBResultMapper(); -// List list2 = resultMapper2.toPOJO(sqlResult2, DataHarmPowerQ.class); -// //平均值 -// StringBuilder stringBuilder5 = new StringBuilder(); -// StringBuilder stringBuilder6 = new StringBuilder(); -// stringBuilder5.append("mean(q) AS q,"); -// for (int i = 1; i <=50 ; i++) { -// if (i==50){ -// stringBuilder5.append("mean(q_").append(i).append(") AS q_").append(i); -// } else { -// stringBuilder5.append("mean(q_").append(i).append(") AS q_").append(i).append(","); -// } -// } -// stringBuilder6.append(InfluxDBPublicParam.TIME + " >= '").append(startTime).append("' and ").append(InfluxDBPublicParam.TIME).append(" <= '").append(endTime).append("' and value_type = 'AVG' group by line_id,phasic_type,value_type,quality_flag ").append(InfluxDBPublicParam.TIME_ZONE); -// String sql3 = "select "+stringBuilder5+" from "+ InfluxDBPublicParam.DATA_HARM_POWER_Q+" where "+stringBuilder+stringBuilder6; -// QueryResult sqlResult3 = influxDbUtils.query(sql3); -// InfluxDBResultMapper resultMapper3 = new InfluxDBResultMapper(); -// List list3 = resultMapper3.toPOJO(sqlResult3, DataHarmPowerQ.class); -// //CP95值 -// StringBuilder stringBuilder7 = new StringBuilder(); -// StringBuilder stringBuilder8 = new StringBuilder(); -// stringBuilder7.append("percentile(q,95) AS q,"); -// for (int i = 1; i <=50 ; i++) { -// if (i==50){ -// stringBuilder7.append("percentile(q_").append(i).append(",95) AS q_").append(i); -// } else { -// stringBuilder7.append("percentile(q_").append(i).append(",95) AS q_").append(i).append(","); -// } -// } -// stringBuilder8.append(InfluxDBPublicParam.TIME + " >= '").append(startTime).append("' and ").append(InfluxDBPublicParam.TIME).append(" <= '").append(endTime).append("' and value_type = 'AVG' group by line_id,phasic_type,value_type,quality_flag ").append(InfluxDBPublicParam.TIME_ZONE); -// String sql4 = "select "+stringBuilder7+" from "+ InfluxDBPublicParam.DATA_HARM_POWER_Q+" where "+stringBuilder+stringBuilder8; -// QueryResult sqlResult4 = influxDbUtils.query(sql4); -// InfluxDBResultMapper resultMapper4 = new InfluxDBResultMapper(); -// List list4 = resultMapper4.toPOJO(sqlResult4, DataHarmPowerQ.class); -// list4.forEach(item->{ -// item.setValueType("CP95"); -// }); -// result.addAll(list1); -// result.addAll(list2); -// result.addAll(list3); -// result.addAll(list4); -// return result; -// } -// -// /** -// * 功能描述:插入day_harmpower_q表数据 -// * @author xy -// * @param list data_harmpower_q表数据 -// * @param time 时间戳 -// * @date 2022/5/12 8:55 -// */ -// private void insertDayHarmPowerQ(List list, long time){ -// List records = new ArrayList<>(); -// list.forEach(item->{ -// Map tags = new HashMap<>(); -// Map fields = new HashMap<>(); -// tags.put("line_id",item.getLineId()); -// tags.put("phasic_type",item.getPhaseType()); -// tags.put("quality_flag",item.getQualityFlag()); -// tags.put("value_type",item.getValueType()); -// fields.put("q",item.getQ()); -// fields.put("q_1",item.getQ1()); -// fields.put("q_2",item.getQ2()); -// fields.put("q_3",item.getQ3()); -// fields.put("q_4",item.getQ4()); -// fields.put("q_5",item.getQ5()); -// fields.put("q_6",item.getQ6()); -// fields.put("q_7",item.getQ7()); -// fields.put("q_8",item.getQ8()); -// fields.put("q_9",item.getQ9()); -// fields.put("q_10",item.getQ10()); -// fields.put("q_11",item.getQ11()); -// fields.put("q_12",item.getQ12()); -// fields.put("q_13",item.getQ13()); -// fields.put("q_14",item.getQ14()); -// fields.put("q_15",item.getQ15()); -// fields.put("q_16",item.getQ16()); -// fields.put("q_17",item.getQ17()); -// fields.put("q_18",item.getQ18()); -// fields.put("q_19",item.getQ19()); -// fields.put("q_20",item.getQ20()); -// fields.put("q_21",item.getQ21()); -// fields.put("q_22",item.getQ22()); -// fields.put("q_23",item.getQ23()); -// fields.put("q_24",item.getQ24()); -// fields.put("q_25",item.getQ25()); -// fields.put("q_26",item.getQ26()); -// fields.put("q_27",item.getQ27()); -// fields.put("q_28",item.getQ28()); -// fields.put("q_29",item.getQ29()); -// fields.put("q_30",item.getQ30()); -// fields.put("q_31",item.getQ31()); -// fields.put("q_32",item.getQ32()); -// fields.put("q_33",item.getQ33()); -// fields.put("q_34",item.getQ34()); -// fields.put("q_35",item.getQ35()); -// fields.put("q_36",item.getQ36()); -// fields.put("q_37",item.getQ37()); -// fields.put("q_38",item.getQ38()); -// fields.put("q_39",item.getQ39()); -// fields.put("q_40",item.getQ40()); -// fields.put("q_41",item.getQ41()); -// fields.put("q_42",item.getQ42()); -// fields.put("q_43",item.getQ43()); -// fields.put("q_44",item.getQ44()); -// fields.put("q_45",item.getQ45()); -// fields.put("q_46",item.getQ46()); -// fields.put("q_47",item.getQ47()); -// fields.put("q_48",item.getQ48()); -// fields.put("q_49",item.getQ49()); -// fields.put("q_50",item.getQ50()); -// Point point = influxDbUtils.pointBuilder(InfluxDBPublicParam.DAY_HARM_POWER_Q, time, TimeUnit.MILLISECONDS, tags, fields); -// BatchPoints batchPoints = BatchPoints.database(influxDbConfig.getDatabase()).tag(InfluxDBPublicParam.LINE_ID, item.getLineId()).tag(InfluxDBPublicParam.PHASIC_TYPE,item.getPhaseType()).tag(InfluxDBPublicParam.QUALITY_FLAG,item.getQualityFlag()).tag(InfluxDBPublicParam.VALUE_TYPE,item.getValueType()).retentionPolicy("").consistency(InfluxDB.ConsistencyLevel.ALL).build(); -// batchPoints.point(point); -// records.add(batchPoints.lineProtocol()); -// }); -// influxDbUtils.batchInsert(influxDbConfig.getDatabase(),"", InfluxDB.ConsistencyLevel.ALL, records); -// } -// -// /** -// * 功能描述:获取data_harmpower_s数据 -// * @author xy -// * @param startTime 起始时间 -// * @param endTime 结束时间 -// * @date 2022/5/10 14:56 -// * @return List -// */ -// public List getDataHarmPowerS(List lineList, String startTime, String endTime){ -// List result = new ArrayList<>(); -// StringBuilder stringBuilder = lineStringBuilder(lineList); -// //最小值 -// StringBuilder stringBuilder1 = new StringBuilder(); -// StringBuilder stringBuilder2 = new StringBuilder(); -// stringBuilder1.append("min(s) AS s,"); -// for (int i = 1; i <=50 ; i++) { -// if (i==50){ -// stringBuilder1.append("min(s_").append(i).append(") AS s_").append(i); -// } else { -// stringBuilder1.append("min(s_").append(i).append(") AS s_").append(i).append(","); -// } -// } -// stringBuilder2.append(InfluxDBPublicParam.TIME + " >= '").append(startTime).append("' and ").append(InfluxDBPublicParam.TIME).append(" <= '").append(endTime).append("' and value_type = 'MIN' group by line_id,phasic_type,value_type,quality_flag ").append(InfluxDBPublicParam.TIME_ZONE); -// String sql1 = "select "+stringBuilder1+" from "+ InfluxDBPublicParam.DATA_HARM_POWER_S+" where "+stringBuilder+stringBuilder2; -// QueryResult sqlResult1 = influxDbUtils.query(sql1); -// InfluxDBResultMapper resultMapper1 = new InfluxDBResultMapper(); -// List list1 = resultMapper1.toPOJO(sqlResult1, DataHarmPowerS.class); -// //最大值 -// StringBuilder stringBuilder3 = new StringBuilder(); -// StringBuilder stringBuilder4 = new StringBuilder(); -// stringBuilder3.append("max(s) AS s,"); -// for (int i = 1; i <=50 ; i++) { -// if (i==50){ -// stringBuilder3.append("max(s_").append(i).append(") AS s_").append(i); -// } else { -// stringBuilder3.append("max(s_").append(i).append(") AS s_").append(i).append(","); -// } -// } -// stringBuilder4.append(InfluxDBPublicParam.TIME + " >= '").append(startTime).append("' and ").append(InfluxDBPublicParam.TIME).append(" <= '").append(endTime).append("' and value_type = 'MAX' group by line_id,phasic_type,value_type,quality_flag ").append(InfluxDBPublicParam.TIME_ZONE); -// String sql2 = "select "+stringBuilder3+" from "+ InfluxDBPublicParam.DATA_HARM_POWER_S+" where "+stringBuilder+stringBuilder4; -// QueryResult sqlResult2 = influxDbUtils.query(sql2); -// InfluxDBResultMapper resultMapper2 = new InfluxDBResultMapper(); -// List list2 = resultMapper2.toPOJO(sqlResult2, DataHarmPowerS.class); -// //平均值 -// StringBuilder stringBuilder5 = new StringBuilder(); -// StringBuilder stringBuilder6 = new StringBuilder(); -// stringBuilder5.append("mean(s) AS s,"); -// for (int i = 1; i <=50 ; i++) { -// if (i==50){ -// stringBuilder5.append("mean(s_").append(i).append(") AS s_").append(i); -// } else { -// stringBuilder5.append("mean(s_").append(i).append(") AS s_").append(i).append(","); -// } -// } -// stringBuilder6.append(InfluxDBPublicParam.TIME + " >= '").append(startTime).append("' and ").append(InfluxDBPublicParam.TIME).append(" <= '").append(endTime).append("' and value_type = 'AVG' group by line_id,phasic_type,value_type,quality_flag ").append(InfluxDBPublicParam.TIME_ZONE); -// String sql3 = "select "+stringBuilder5+" from "+ InfluxDBPublicParam.DATA_HARM_POWER_S+" where "+stringBuilder+stringBuilder6; -// QueryResult sqlResult3 = influxDbUtils.query(sql3); -// InfluxDBResultMapper resultMapper3 = new InfluxDBResultMapper(); -// List list3 = resultMapper3.toPOJO(sqlResult3, DataHarmPowerS.class); -// //CP95值 -// StringBuilder stringBuilder7 = new StringBuilder(); -// StringBuilder stringBuilder8 = new StringBuilder(); -// stringBuilder7.append("percentile(s,95) AS s,"); -// for (int i = 1; i <=50 ; i++) { -// if (i==50){ -// stringBuilder7.append("percentile(s_").append(i).append(",95) AS s_").append(i); -// } else { -// stringBuilder7.append("percentile(s_").append(i).append(",95) AS s_").append(i).append(","); -// } -// } -// stringBuilder8.append(InfluxDBPublicParam.TIME + " >= '").append(startTime).append("' and ").append(InfluxDBPublicParam.TIME).append(" <= '").append(endTime).append("' and value_type = 'AVG' group by line_id,phasic_type,value_type,quality_flag ").append(InfluxDBPublicParam.TIME_ZONE); -// String sql4 = "select "+stringBuilder7+" from "+ InfluxDBPublicParam.DATA_HARM_POWER_S+" where "+stringBuilder+stringBuilder8; -// QueryResult sqlResult4 = influxDbUtils.query(sql4); -// InfluxDBResultMapper resultMapper4 = new InfluxDBResultMapper(); -// List list4 = resultMapper4.toPOJO(sqlResult4, DataHarmPowerS.class); -// list4.forEach(item->{ -// item.setValueType("CP95"); -// }); -// result.addAll(list1); -// result.addAll(list2); -// result.addAll(list3); -// result.addAll(list4); -// return result; -// } -// -// /** -// * 功能描述:插入day_harmpower_q表数据 -// * @author xy -// * @param list data_harmpower_q表数据 -// * @param time 时间戳 -// * @date 2022/5/12 8:55 -// */ -// private void insertDayHarmPowerS(List list, long time){ -// List records = new ArrayList<>(); -// list.forEach(item->{ -// Map tags = new HashMap<>(); -// Map fields = new HashMap<>(); -// tags.put("line_id",item.getLineId()); -// tags.put("phasic_type",item.getPhaseType()); -// tags.put("quality_flag",item.getQualityFlag()); -// tags.put("value_type",item.getValueType()); -// fields.put("s",item.getS()); -// fields.put("s_1",item.getS1()); -// fields.put("s_2",item.getS2()); -// fields.put("s_3",item.getS3()); -// fields.put("s_4",item.getS4()); -// fields.put("s_5",item.getS5()); -// fields.put("s_6",item.getS6()); -// fields.put("s_7",item.getS7()); -// fields.put("s_8",item.getS8()); -// fields.put("s_9",item.getS9()); -// fields.put("s_10",item.getS10()); -// fields.put("s_11",item.getS11()); -// fields.put("s_12",item.getS12()); -// fields.put("s_13",item.getS13()); -// fields.put("s_14",item.getS14()); -// fields.put("s_15",item.getS15()); -// fields.put("s_16",item.getS16()); -// fields.put("s_17",item.getS17()); -// fields.put("s_18",item.getS18()); -// fields.put("s_19",item.getS19()); -// fields.put("s_20",item.getS20()); -// fields.put("s_21",item.getS21()); -// fields.put("s_22",item.getS22()); -// fields.put("s_23",item.getS23()); -// fields.put("s_24",item.getS24()); -// fields.put("s_25",item.getS25()); -// fields.put("s_26",item.getS26()); -// fields.put("s_27",item.getS27()); -// fields.put("s_28",item.getS28()); -// fields.put("s_29",item.getS29()); -// fields.put("s_30",item.getS30()); -// fields.put("s_31",item.getS31()); -// fields.put("s_32",item.getS32()); -// fields.put("s_33",item.getS33()); -// fields.put("s_34",item.getS34()); -// fields.put("s_35",item.getS35()); -// fields.put("s_36",item.getS36()); -// fields.put("s_37",item.getS37()); -// fields.put("s_38",item.getS38()); -// fields.put("s_39",item.getS39()); -// fields.put("s_40",item.getS40()); -// fields.put("s_41",item.getS41()); -// fields.put("s_42",item.getS42()); -// fields.put("s_43",item.getS43()); -// fields.put("s_44",item.getS44()); -// fields.put("s_45",item.getS45()); -// fields.put("s_46",item.getS46()); -// fields.put("s_47",item.getS47()); -// fields.put("s_48",item.getS48()); -// fields.put("s_49",item.getS49()); -// fields.put("s_50",item.getS50()); -// Point point = influxDbUtils.pointBuilder(InfluxDBPublicParam.DAY_HARM_POWER_S, time, TimeUnit.MILLISECONDS, tags, fields); -// BatchPoints batchPoints = BatchPoints.database(influxDbConfig.getDatabase()).tag(InfluxDBPublicParam.LINE_ID, item.getLineId()).tag(InfluxDBPublicParam.PHASIC_TYPE,item.getPhaseType()).tag(InfluxDBPublicParam.QUALITY_FLAG,item.getQualityFlag()).tag(InfluxDBPublicParam.VALUE_TYPE,item.getValueType()).retentionPolicy("").consistency(InfluxDB.ConsistencyLevel.ALL).build(); -// batchPoints.point(point); -// records.add(batchPoints.lineProtocol()); -// }); -// influxDbUtils.batchInsert(influxDbConfig.getDatabase(),"", InfluxDB.ConsistencyLevel.ALL, records); -// } -// -// /** -// * 功能描述:获取data_harmrate_i数据 -// * @author xy -// * @param startTime 起始时间 -// * @param endTime 结束时间 -// * @date 2022/5/10 14:56 -// * @return List -// */ -// public List getDataHarmRateI(List lineList, String startTime, String endTime){ -// List result = new ArrayList<>(); -// StringBuilder stringBuilder = lineStringBuilder(lineList); -// //最小值 -// StringBuilder stringBuilder1 = new StringBuilder(); -// StringBuilder stringBuilder2 = new StringBuilder(); -// for (int i = 1; i <=50 ; i++) { -// if (i==50){ -// stringBuilder1.append("min(i_").append(i).append(") AS i_").append(i); -// } else { -// stringBuilder1.append("min(i_").append(i).append(") AS i_").append(i).append(","); -// } -// } -// stringBuilder2.append(InfluxDBPublicParam.TIME + " >= '").append(startTime).append("' and ").append(InfluxDBPublicParam.TIME).append(" <= '").append(endTime).append("' and value_type = 'MIN' group by line_id,phasic_type,value_type,quality_flag ").append(InfluxDBPublicParam.TIME_ZONE); -// String sql1 = "select "+stringBuilder1+" from "+ InfluxDBPublicParam.DATA_HARM_RATE_I+" where "+stringBuilder+stringBuilder2; -// QueryResult sqlResult1 = influxDbUtils.query(sql1); -// InfluxDBResultMapper resultMapper1 = new InfluxDBResultMapper(); -// List list1 = resultMapper1.toPOJO(sqlResult1, DataHarmRateI.class); -// //最大值 -// StringBuilder stringBuilder3 = new StringBuilder(); -// StringBuilder stringBuilder4 = new StringBuilder(); -// for (int i = 1; i <=50 ; i++) { -// if (i==50){ -// stringBuilder3.append("max(i_").append(i).append(") AS i_").append(i); -// } else { -// stringBuilder3.append("max(i_").append(i).append(") AS i_").append(i).append(","); -// } -// } -// stringBuilder4.append(InfluxDBPublicParam.TIME + " >= '").append(startTime).append("' and ").append(InfluxDBPublicParam.TIME).append(" <= '").append(endTime).append("' and value_type = 'MAX' group by line_id,phasic_type,value_type,quality_flag ").append(InfluxDBPublicParam.TIME_ZONE); -// String sql2 = "select "+stringBuilder3+" from "+ InfluxDBPublicParam.DATA_HARM_RATE_I+" where "+stringBuilder+stringBuilder4; -// QueryResult sqlResult2 = influxDbUtils.query(sql2); -// InfluxDBResultMapper resultMapper2 = new InfluxDBResultMapper(); -// List list2 = resultMapper2.toPOJO(sqlResult2, DataHarmRateI.class); -// //平均值 -// StringBuilder stringBuilder5 = new StringBuilder(); -// StringBuilder stringBuilder6 = new StringBuilder(); -// for (int i = 1; i <=50 ; i++) { -// if (i==50){ -// stringBuilder5.append("mean(i_").append(i).append(") AS i_").append(i); -// } else { -// stringBuilder5.append("mean(i_").append(i).append(") AS i_").append(i).append(","); -// } -// } -// stringBuilder6.append(InfluxDBPublicParam.TIME + " >= '").append(startTime).append("' and ").append(InfluxDBPublicParam.TIME).append(" <= '").append(endTime).append("' and value_type = 'AVG' group by line_id,phasic_type,value_type,quality_flag ").append(InfluxDBPublicParam.TIME_ZONE); -// String sql3 = "select "+stringBuilder5+" from "+ InfluxDBPublicParam.DATA_HARM_RATE_I+" where "+stringBuilder+stringBuilder6; -// QueryResult sqlResult3 = influxDbUtils.query(sql3); -// InfluxDBResultMapper resultMapper3 = new InfluxDBResultMapper(); -// List list3 = resultMapper3.toPOJO(sqlResult3, DataHarmRateI.class); -// //CP95值 -// StringBuilder stringBuilder7 = new StringBuilder(); -// StringBuilder stringBuilder8 = new StringBuilder(); -// for (int i = 1; i <=50 ; i++) { -// if (i==50){ -// stringBuilder7.append("percentile(i_").append(i).append(",95) AS i_").append(i); -// } else { -// stringBuilder7.append("percentile(i_").append(i).append(",95) AS i_").append(i).append(","); -// } -// } -// stringBuilder8.append(InfluxDBPublicParam.TIME + " >= '").append(startTime).append("' and ").append(InfluxDBPublicParam.TIME).append(" <= '").append(endTime).append("' and value_type = 'AVG' group by line_id,phasic_type,value_type,quality_flag ").append(InfluxDBPublicParam.TIME_ZONE); -// String sql4 = "select "+stringBuilder7+" from "+ InfluxDBPublicParam.DATA_HARM_RATE_I+" where "+stringBuilder+stringBuilder8; -// QueryResult sqlResult4 = influxDbUtils.query(sql4); -// InfluxDBResultMapper resultMapper4 = new InfluxDBResultMapper(); -// List list4 = resultMapper4.toPOJO(sqlResult4, DataHarmRateI.class); -// list4.forEach(item->{ -// item.setValueType("CP95"); -// }); -// result.addAll(list1); -// result.addAll(list2); -// result.addAll(list3); -// result.addAll(list4); -// return result; -// } -// -// /** -// * 功能描述:插入day_harmrate_i表数据 -// * @author xy -// * @param list data_harmrate_i表数据 -// * @param time 时间戳 -// * @date 2022/5/12 8:55 -// */ -// private void insertDayHarmRateI(List list, long time){ -// List records = new ArrayList<>(); -// list.forEach(item->{ -// Map tags = new HashMap<>(); -// Map fields = new HashMap<>(); -// tags.put("line_id",item.getLineId()); -// tags.put("phasic_type",item.getPhaseType()); -// tags.put("quality_flag",item.getQualityFlag()); -// tags.put("value_type",item.getValueType()); -// fields.put("i_1",item.getI1()); -// fields.put("i_2",item.getI2()); -// fields.put("i_3",item.getI3()); -// fields.put("i_4",item.getI4()); -// fields.put("i_5",item.getI5()); -// fields.put("i_6",item.getI6()); -// fields.put("i_7",item.getI7()); -// fields.put("i_8",item.getI8()); -// fields.put("i_9",item.getI9()); -// fields.put("i_10",item.getI10()); -// fields.put("i_11",item.getI11()); -// fields.put("i_12",item.getI12()); -// fields.put("i_13",item.getI13()); -// fields.put("i_14",item.getI14()); -// fields.put("i_15",item.getI15()); -// fields.put("i_16",item.getI16()); -// fields.put("i_17",item.getI17()); -// fields.put("i_18",item.getI18()); -// fields.put("i_19",item.getI19()); -// fields.put("i_20",item.getI20()); -// fields.put("i_21",item.getI21()); -// fields.put("i_22",item.getI22()); -// fields.put("i_23",item.getI23()); -// fields.put("i_24",item.getI24()); -// fields.put("i_25",item.getI25()); -// fields.put("i_26",item.getI26()); -// fields.put("i_27",item.getI27()); -// fields.put("i_28",item.getI28()); -// fields.put("i_29",item.getI29()); -// fields.put("i_30",item.getI30()); -// fields.put("i_31",item.getI31()); -// fields.put("i_32",item.getI32()); -// fields.put("i_33",item.getI33()); -// fields.put("i_34",item.getI34()); -// fields.put("i_35",item.getI35()); -// fields.put("i_36",item.getI36()); -// fields.put("i_37",item.getI37()); -// fields.put("i_38",item.getI38()); -// fields.put("i_39",item.getI39()); -// fields.put("i_40",item.getI40()); -// fields.put("i_41",item.getI41()); -// fields.put("i_42",item.getI42()); -// fields.put("i_43",item.getI43()); -// fields.put("i_44",item.getI44()); -// fields.put("i_45",item.getI45()); -// fields.put("i_46",item.getI46()); -// fields.put("i_47",item.getI47()); -// fields.put("i_48",item.getI48()); -// fields.put("i_49",item.getI49()); -// fields.put("i_50",item.getI50()); -// Point point = influxDbUtils.pointBuilder(InfluxDBPublicParam.DAY_HARM_RATE_I, time, TimeUnit.MILLISECONDS, tags, fields); -// BatchPoints batchPoints = BatchPoints.database(influxDbConfig.getDatabase()).tag(InfluxDBPublicParam.LINE_ID, item.getLineId()).tag(InfluxDBPublicParam.PHASIC_TYPE,item.getPhaseType()).tag(InfluxDBPublicParam.QUALITY_FLAG,item.getQualityFlag()).tag(InfluxDBPublicParam.VALUE_TYPE,item.getValueType()).retentionPolicy("").consistency(InfluxDB.ConsistencyLevel.ALL).build(); -// batchPoints.point(point); -// records.add(batchPoints.lineProtocol()); -// }); -// influxDbUtils.batchInsert(influxDbConfig.getDatabase(),"", InfluxDB.ConsistencyLevel.ALL, records); -// } -// -// /** -// * 功能描述:获取data_harmrate_v数据 -// * @author xy -// * @param startTime 起始时间 -// * @param endTime 结束时间 -// * @date 2022/5/10 14:56 -// * @return List -// */ -// public List getDataHarmRateV(List lineList, String startTime, String endTime){ -// List result = new ArrayList<>(); -// StringBuilder stringBuilder = lineStringBuilder(lineList); -// //最小值 -// StringBuilder stringBuilder1 = new StringBuilder(); -// StringBuilder stringBuilder2 = new StringBuilder(); -// for (int i = 1; i <=50 ; i++) { -// if (i==50){ -// stringBuilder1.append("min(v_").append(i).append(") AS v_").append(i); -// } else { -// stringBuilder1.append("min(v_").append(i).append(") AS v_").append(i).append(","); -// } -// } -// stringBuilder2.append(InfluxDBPublicParam.TIME + " >= '").append(startTime).append("' and ").append(InfluxDBPublicParam.TIME).append(" <= '").append(endTime).append("' and value_type = 'MIN' group by line_id,phasic_type,value_type,quality_flag ").append(InfluxDBPublicParam.TIME_ZONE); -// String sql1 = "select "+stringBuilder1+" from "+ InfluxDBPublicParam.DATA_HARM_RATE_V+" where "+stringBuilder+stringBuilder2; -// QueryResult sqlResult1 = influxDbUtils.query(sql1); -// InfluxDBResultMapper resultMapper1 = new InfluxDBResultMapper(); -// List list1 = resultMapper1.toPOJO(sqlResult1, DataHarmRateV.class); -// //最大值 -// StringBuilder stringBuilder3 = new StringBuilder(); -// StringBuilder stringBuilder4 = new StringBuilder(); -// for (int i = 1; i <=50 ; i++) { -// if (i==50){ -// stringBuilder3.append("max(v_").append(i).append(") AS v_").append(i); -// } else { -// stringBuilder3.append("max(v_").append(i).append(") AS v_").append(i).append(","); -// } -// } -// stringBuilder4.append(InfluxDBPublicParam.TIME + " >= '").append(startTime).append("' and ").append(InfluxDBPublicParam.TIME).append(" <= '").append(endTime).append("' and value_type = 'MAX' group by line_id,phasic_type,value_type,quality_flag ").append(InfluxDBPublicParam.TIME_ZONE); -// String sql2 = "select "+stringBuilder3+" from "+ InfluxDBPublicParam.DATA_HARM_RATE_V+" where "+stringBuilder+stringBuilder4; -// QueryResult sqlResult2 = influxDbUtils.query(sql2); -// InfluxDBResultMapper resultMapper2 = new InfluxDBResultMapper(); -// List list2 = resultMapper2.toPOJO(sqlResult2, DataHarmRateV.class); -// //平均值 -// StringBuilder stringBuilder5 = new StringBuilder(); -// StringBuilder stringBuilder6 = new StringBuilder(); -// for (int i = 1; i <=50 ; i++) { -// if (i==50){ -// stringBuilder5.append("mean(v_").append(i).append(") AS v_").append(i); -// } else { -// stringBuilder5.append("mean(v_").append(i).append(") AS v_").append(i).append(","); -// } -// } -// stringBuilder6.append(InfluxDBPublicParam.TIME + " >= '").append(startTime).append("' and ").append(InfluxDBPublicParam.TIME).append(" <= '").append(endTime).append("' and value_type = 'AVG' group by line_id,phasic_type,value_type,quality_flag ").append(InfluxDBPublicParam.TIME_ZONE); -// String sql3 = "select "+stringBuilder5+" from "+ InfluxDBPublicParam.DATA_HARM_RATE_V+" where "+stringBuilder+stringBuilder6; -// QueryResult sqlResult3 = influxDbUtils.query(sql3); -// InfluxDBResultMapper resultMapper3 = new InfluxDBResultMapper(); -// List list3 = resultMapper3.toPOJO(sqlResult3, DataHarmRateV.class); -// //CP95值 -// StringBuilder stringBuilder7 = new StringBuilder(); -// StringBuilder stringBuilder8 = new StringBuilder(); -// for (int i = 1; i <=50 ; i++) { -// if (i==50){ -// stringBuilder7.append("percentile(v_").append(i).append(",95) AS v_").append(i); -// } else { -// stringBuilder7.append("percentile(v_").append(i).append(",95) AS v_").append(i).append(","); -// } -// } -// stringBuilder8.append(InfluxDBPublicParam.TIME + " >= '").append(startTime).append("' and ").append(InfluxDBPublicParam.TIME).append(" <= '").append(endTime).append("' and value_type = 'AVG' group by line_id,phasic_type,value_type,quality_flag ").append(InfluxDBPublicParam.TIME_ZONE); -// String sql4 = "select "+stringBuilder7+" from "+ InfluxDBPublicParam.DATA_HARM_RATE_V+" where "+stringBuilder+stringBuilder8; -// QueryResult sqlResult4 = influxDbUtils.query(sql4); -// InfluxDBResultMapper resultMapper4 = new InfluxDBResultMapper(); -// List list4 = resultMapper4.toPOJO(sqlResult4, DataHarmRateV.class); -// list4.forEach(item->{ -// item.setValueType("CP95"); -// }); -// result.addAll(list1); -// result.addAll(list2); -// result.addAll(list3); -// result.addAll(list4); -// return result; -// } -// -// /** -// * 功能描述:插入day_harmrate_v表数据 -// * @author xy -// * @param list data_harmrate_v表数据 -// * @param time 时间戳 -// * @date 2022/5/12 8:55 -// */ -// private void insertDayHarmRateV(List list, long time){ -// List records = new ArrayList<>(); -// list.forEach(item->{ -// Map tags = new HashMap<>(); -// Map fields = new HashMap<>(); -// tags.put("line_id",item.getLineId()); -// tags.put("phasic_type",item.getPhaseType()); -// tags.put("quality_flag",item.getQualityFlag()); -// tags.put("value_type",item.getValueType()); -// fields.put("v_1",item.getV1()); -// fields.put("v_2",item.getV2()); -// fields.put("v_3",item.getV3()); -// fields.put("v_4",item.getV4()); -// fields.put("v_5",item.getV5()); -// fields.put("v_6",item.getV6()); -// fields.put("v_7",item.getV7()); -// fields.put("v_8",item.getV8()); -// fields.put("v_9",item.getV9()); -// fields.put("v_10",item.getV10()); -// fields.put("v_11",item.getV11()); -// fields.put("v_12",item.getV12()); -// fields.put("v_13",item.getV13()); -// fields.put("v_14",item.getV14()); -// fields.put("v_15",item.getV15()); -// fields.put("v_16",item.getV16()); -// fields.put("v_17",item.getV17()); -// fields.put("v_18",item.getV18()); -// fields.put("v_19",item.getV19()); -// fields.put("v_20",item.getV20()); -// fields.put("v_21",item.getV21()); -// fields.put("v_22",item.getV22()); -// fields.put("v_23",item.getV23()); -// fields.put("v_24",item.getV24()); -// fields.put("v_25",item.getV25()); -// fields.put("v_26",item.getV26()); -// fields.put("v_27",item.getV27()); -// fields.put("v_28",item.getV28()); -// fields.put("v_29",item.getV29()); -// fields.put("v_30",item.getV30()); -// fields.put("v_31",item.getV31()); -// fields.put("v_32",item.getV32()); -// fields.put("v_33",item.getV33()); -// fields.put("v_34",item.getV34()); -// fields.put("v_35",item.getV35()); -// fields.put("v_36",item.getV36()); -// fields.put("v_37",item.getV37()); -// fields.put("v_38",item.getV38()); -// fields.put("v_39",item.getV39()); -// fields.put("v_40",item.getV40()); -// fields.put("v_41",item.getV41()); -// fields.put("v_42",item.getV42()); -// fields.put("v_43",item.getV43()); -// fields.put("v_44",item.getV44()); -// fields.put("v_45",item.getV45()); -// fields.put("v_46",item.getV46()); -// fields.put("v_47",item.getV47()); -// fields.put("v_48",item.getV48()); -// fields.put("v_49",item.getV49()); -// fields.put("v_50",item.getV50()); -// Point point = influxDbUtils.pointBuilder(InfluxDBPublicParam.DAY_HARM_RATE_V, time, TimeUnit.MILLISECONDS, tags, fields); -// BatchPoints batchPoints = BatchPoints.database(influxDbConfig.getDatabase()).tag(InfluxDBPublicParam.LINE_ID, item.getLineId()).tag(InfluxDBPublicParam.PHASIC_TYPE,item.getPhaseType()).tag(InfluxDBPublicParam.QUALITY_FLAG,item.getQualityFlag()).tag(InfluxDBPublicParam.VALUE_TYPE,item.getValueType()).retentionPolicy("").consistency(InfluxDB.ConsistencyLevel.ALL).build(); -// batchPoints.point(point); -// records.add(batchPoints.lineProtocol()); -// }); -// influxDbUtils.batchInsert(influxDbConfig.getDatabase(),"", InfluxDB.ConsistencyLevel.ALL, records); -// } -// -// /** -// * 功能描述:获取data_inharm_i数据 -// * @author xy -// * @param startTime 起始时间 -// * @param endTime 结束时间 -// * @date 2022/5/10 14:56 -// * @return List -// */ -// public List getDataInHarmI(List lineList, String startTime, String endTime){ -// List result = new ArrayList<>(); -// StringBuilder stringBuilder = lineStringBuilder(lineList); -// //最小值 -// StringBuilder stringBuilder1 = new StringBuilder(); -// StringBuilder stringBuilder2 = new StringBuilder(); -// for (int i = 1; i <=50 ; i++) { -// if (i==50){ -// stringBuilder1.append("min(i_").append(i).append(") AS i_").append(i); -// } else { -// stringBuilder1.append("min(i_").append(i).append(") AS i_").append(i).append(","); -// } -// } -// stringBuilder2.append(InfluxDBPublicParam.TIME + " >= '").append(startTime).append("' and ").append(InfluxDBPublicParam.TIME).append(" <= '").append(endTime).append("' and value_type = 'MIN' group by line_id,phasic_type,value_type,quality_flag ").append(InfluxDBPublicParam.TIME_ZONE); -// String sql1 = "select "+stringBuilder1+" from "+ InfluxDBPublicParam.DATA_IN_HARM_I+" where "+stringBuilder+stringBuilder2; -// QueryResult sqlResult1 = influxDbUtils.query(sql1); -// InfluxDBResultMapper resultMapper1 = new InfluxDBResultMapper(); -// List list1 = resultMapper1.toPOJO(sqlResult1, DataInHarmI.class); -// //最大值 -// StringBuilder stringBuilder3 = new StringBuilder(); -// StringBuilder stringBuilder4 = new StringBuilder(); -// for (int i = 1; i <=50 ; i++) { -// if (i==50){ -// stringBuilder3.append("max(i_").append(i).append(") AS i_").append(i); -// } else { -// stringBuilder3.append("max(i_").append(i).append(") AS i_").append(i).append(","); -// } -// } -// stringBuilder4.append(InfluxDBPublicParam.TIME + " >= '").append(startTime).append("' and ").append(InfluxDBPublicParam.TIME).append(" <= '").append(endTime).append("' and value_type = 'MAX' group by line_id,phasic_type,value_type,quality_flag ").append(InfluxDBPublicParam.TIME_ZONE); -// String sql2 = "select "+stringBuilder3+" from "+ InfluxDBPublicParam.DATA_IN_HARM_I+" where "+stringBuilder+stringBuilder4; -// QueryResult sqlResult2 = influxDbUtils.query(sql2); -// InfluxDBResultMapper resultMapper2 = new InfluxDBResultMapper(); -// List list2 = resultMapper2.toPOJO(sqlResult2, DataInHarmI.class); -// //平均值 -// StringBuilder stringBuilder5 = new StringBuilder(); -// StringBuilder stringBuilder6 = new StringBuilder(); -// for (int i = 1; i <=50 ; i++) { -// if (i==50){ -// stringBuilder5.append("mean(i_").append(i).append(") AS i_").append(i); -// } else { -// stringBuilder5.append("mean(i_").append(i).append(") AS i_").append(i).append(","); -// } -// } -// stringBuilder6.append(InfluxDBPublicParam.TIME + " >= '").append(startTime).append("' and ").append(InfluxDBPublicParam.TIME).append(" <= '").append(endTime).append("' and value_type = 'AVG' group by line_id,phasic_type,value_type,quality_flag ").append(InfluxDBPublicParam.TIME_ZONE); -// String sql3 = "select "+stringBuilder5+" from "+ InfluxDBPublicParam.DATA_IN_HARM_I+" where "+stringBuilder+stringBuilder6; -// QueryResult sqlResult3 = influxDbUtils.query(sql3); -// InfluxDBResultMapper resultMapper3 = new InfluxDBResultMapper(); -// List list3 = resultMapper3.toPOJO(sqlResult3, DataInHarmI.class); -// //CP95值 -// StringBuilder stringBuilder7 = new StringBuilder(); -// StringBuilder stringBuilder8 = new StringBuilder(); -// for (int i = 1; i <=50 ; i++) { -// if (i==50){ -// stringBuilder7.append("percentile(i_").append(i).append(",95) AS i_").append(i); -// } else { -// stringBuilder7.append("percentile(i_").append(i).append(",95) AS i_").append(i).append(","); -// } -// } -// stringBuilder8.append(InfluxDBPublicParam.TIME + " >= '").append(startTime).append("' and ").append(InfluxDBPublicParam.TIME).append(" <= '").append(endTime).append("' and value_type = 'AVG' group by line_id,phasic_type,value_type,quality_flag ").append(InfluxDBPublicParam.TIME_ZONE); -// String sql4 = "select "+stringBuilder7+" from "+ InfluxDBPublicParam.DATA_IN_HARM_I+" where "+stringBuilder+stringBuilder8; -// QueryResult sqlResult4 = influxDbUtils.query(sql4); -// InfluxDBResultMapper resultMapper4 = new InfluxDBResultMapper(); -// List list4 = resultMapper4.toPOJO(sqlResult4, DataInHarmI.class); -// list4.forEach(item->{ -// item.setValueType("CP95"); -// }); -// result.addAll(list1); -// result.addAll(list2); -// result.addAll(list3); -// result.addAll(list4); -// return result; -// } -// -// /** -// * 功能描述:插入day_inharm_i表数据 -// * @author xy -// * @param list data_inharm_i表数据 -// * @param time 时间戳 -// * @date 2022/5/12 8:55 -// */ -// private void insertDayInHarmI(List list, long time){ -// List records = new ArrayList<>(); -// list.forEach(item->{ -// Map tags = new HashMap<>(); -// Map fields = new HashMap<>(); -// tags.put("line_id",item.getLineId()); -// tags.put("phasic_type",item.getPhaseType()); -// tags.put("quality_flag",item.getQualityFlag()); -// tags.put("value_type",item.getValueType()); -// fields.put("i_1",item.getI1()); -// fields.put("i_2",item.getI2()); -// fields.put("i_3",item.getI3()); -// fields.put("i_4",item.getI4()); -// fields.put("i_5",item.getI5()); -// fields.put("i_6",item.getI6()); -// fields.put("i_7",item.getI7()); -// fields.put("i_8",item.getI8()); -// fields.put("i_9",item.getI9()); -// fields.put("i_10",item.getI10()); -// fields.put("i_11",item.getI11()); -// fields.put("i_12",item.getI12()); -// fields.put("i_13",item.getI13()); -// fields.put("i_14",item.getI14()); -// fields.put("i_15",item.getI15()); -// fields.put("i_16",item.getI16()); -// fields.put("i_17",item.getI17()); -// fields.put("i_18",item.getI18()); -// fields.put("i_19",item.getI19()); -// fields.put("i_20",item.getI20()); -// fields.put("i_21",item.getI21()); -// fields.put("i_22",item.getI22()); -// fields.put("i_23",item.getI23()); -// fields.put("i_24",item.getI24()); -// fields.put("i_25",item.getI25()); -// fields.put("i_26",item.getI26()); -// fields.put("i_27",item.getI27()); -// fields.put("i_28",item.getI28()); -// fields.put("i_29",item.getI29()); -// fields.put("i_30",item.getI30()); -// fields.put("i_31",item.getI31()); -// fields.put("i_32",item.getI32()); -// fields.put("i_33",item.getI33()); -// fields.put("i_34",item.getI34()); -// fields.put("i_35",item.getI35()); -// fields.put("i_36",item.getI36()); -// fields.put("i_37",item.getI37()); -// fields.put("i_38",item.getI38()); -// fields.put("i_39",item.getI39()); -// fields.put("i_40",item.getI40()); -// fields.put("i_41",item.getI41()); -// fields.put("i_42",item.getI42()); -// fields.put("i_43",item.getI43()); -// fields.put("i_44",item.getI44()); -// fields.put("i_45",item.getI45()); -// fields.put("i_46",item.getI46()); -// fields.put("i_47",item.getI47()); -// fields.put("i_48",item.getI48()); -// fields.put("i_49",item.getI49()); -// fields.put("i_50",item.getI50()); -// Point point = influxDbUtils.pointBuilder(InfluxDBPublicParam.DAY_IN_HARM_I, time, TimeUnit.MILLISECONDS, tags, fields); -// BatchPoints batchPoints = BatchPoints.database(influxDbConfig.getDatabase()).tag(InfluxDBPublicParam.LINE_ID, item.getLineId()).tag(InfluxDBPublicParam.PHASIC_TYPE,item.getPhaseType()).tag(InfluxDBPublicParam.QUALITY_FLAG,item.getQualityFlag()).tag(InfluxDBPublicParam.VALUE_TYPE,item.getValueType()).retentionPolicy("").consistency(InfluxDB.ConsistencyLevel.ALL).build(); -// batchPoints.point(point); -// records.add(batchPoints.lineProtocol()); -// }); -// influxDbUtils.batchInsert(influxDbConfig.getDatabase(),"", InfluxDB.ConsistencyLevel.ALL, records); -// } -// -// /** -// * 功能描述:获取data_inharm_v数据 -// * @author xy -// * @param startTime 起始时间 -// * @param endTime 结束时间 -// * @date 2022/5/10 14:56 -// * @return List -// */ -// public List getDataInHarmV(List lineList, String startTime, String endTime){ -// List result = new ArrayList<>(); -// StringBuilder stringBuilder = lineStringBuilder(lineList); -// //最小值 -// StringBuilder stringBuilder1 = new StringBuilder(); -// StringBuilder stringBuilder2 = new StringBuilder(); -// for (int i = 1; i <=50 ; i++) { -// if (i==50){ -// stringBuilder1.append("min(v_").append(i).append(") AS v_").append(i); -// } else { -// stringBuilder1.append("min(v_").append(i).append(") AS v_").append(i).append(","); -// } -// } -// stringBuilder2.append(InfluxDBPublicParam.TIME + " >= '").append(startTime).append("' and ").append(InfluxDBPublicParam.TIME).append(" <= '").append(endTime).append("' and value_type = 'MIN' group by line_id,phasic_type,value_type,quality_flag ").append(InfluxDBPublicParam.TIME_ZONE); -// String sql1 = "select "+stringBuilder1+" from "+ InfluxDBPublicParam.DATA_IN_HARM_V+" where "+stringBuilder+stringBuilder2; -// QueryResult sqlResult1 = influxDbUtils.query(sql1); -// InfluxDBResultMapper resultMapper1 = new InfluxDBResultMapper(); -// List list1 = resultMapper1.toPOJO(sqlResult1, DataInHarmV.class); -// //最大值 -// StringBuilder stringBuilder3 = new StringBuilder(); -// StringBuilder stringBuilder4 = new StringBuilder(); -// for (int i = 1; i <=50 ; i++) { -// if (i==50){ -// stringBuilder3.append("max(v_").append(i).append(") AS v_").append(i); -// } else { -// stringBuilder3.append("max(v_").append(i).append(") AS v_").append(i).append(","); -// } -// } -// stringBuilder4.append(InfluxDBPublicParam.TIME + " >= '").append(startTime).append("' and ").append(InfluxDBPublicParam.TIME).append(" <= '").append(endTime).append("' and value_type = 'MAX' group by line_id,phasic_type,value_type,quality_flag ").append(InfluxDBPublicParam.TIME_ZONE); -// String sql2 = "select "+stringBuilder3+" from "+ InfluxDBPublicParam.DATA_IN_HARM_V+" where "+stringBuilder+stringBuilder4; -// QueryResult sqlResult2 = influxDbUtils.query(sql2); -// InfluxDBResultMapper resultMapper2 = new InfluxDBResultMapper(); -// List list2 = resultMapper2.toPOJO(sqlResult2, DataInHarmV.class); -// //平均值 -// StringBuilder stringBuilder5 = new StringBuilder(); -// StringBuilder stringBuilder6 = new StringBuilder(); -// for (int i = 1; i <=50 ; i++) { -// if (i==50){ -// stringBuilder5.append("mean(v_").append(i).append(") AS v_").append(i); -// } else { -// stringBuilder5.append("mean(v_").append(i).append(") AS v_").append(i).append(","); -// } -// } -// stringBuilder6.append(InfluxDBPublicParam.TIME + " >= '").append(startTime).append("' and ").append(InfluxDBPublicParam.TIME).append(" <= '").append(endTime).append("' and value_type = 'AVG' group by line_id,phasic_type,value_type,quality_flag ").append(InfluxDBPublicParam.TIME_ZONE); -// String sql3 = "select "+stringBuilder5+" from "+ InfluxDBPublicParam.DATA_IN_HARM_V+" where "+stringBuilder+stringBuilder6; -// QueryResult sqlResult3 = influxDbUtils.query(sql3); -// InfluxDBResultMapper resultMapper3 = new InfluxDBResultMapper(); -// List list3 = resultMapper3.toPOJO(sqlResult3, DataInHarmV.class); -// //CP95值 -// StringBuilder stringBuilder7 = new StringBuilder(); -// StringBuilder stringBuilder8 = new StringBuilder(); -// for (int i = 1; i <=50 ; i++) { -// if (i==50){ -// stringBuilder7.append("percentile(v_").append(i).append(",95) AS v_").append(i); -// } else { -// stringBuilder7.append("percentile(v_").append(i).append(",95) AS v_").append(i).append(","); -// } -// } -// stringBuilder8.append(InfluxDBPublicParam.TIME + " >= '").append(startTime).append("' and ").append(InfluxDBPublicParam.TIME).append(" <= '").append(endTime).append("' and value_type = 'AVG' group by line_id,phasic_type,value_type,quality_flag ").append(InfluxDBPublicParam.TIME_ZONE); -// String sql4 = "select "+stringBuilder7+" from "+ InfluxDBPublicParam.DATA_IN_HARM_V+" where "+stringBuilder+stringBuilder8; -// QueryResult sqlResult4 = influxDbUtils.query(sql4); -// InfluxDBResultMapper resultMapper4 = new InfluxDBResultMapper(); -// List list4 = resultMapper4.toPOJO(sqlResult4, DataInHarmV.class); -// list4.forEach(item->{ -// item.setValueType("CP95"); -// }); -// result.addAll(list1); -// result.addAll(list2); -// result.addAll(list3); -// result.addAll(list4); -// return result; -// } -// -// /** -// * 功能描述:插入day_inharm_v表数据 -// * @author xy -// * @param list data_inharm_v表数据 -// * @param time 时间戳 -// * @date 2022/5/12 8:55 -// */ -// private void insertDayInHarmV(List list, long time){ -// List records = new ArrayList<>(); -// list.forEach(item->{ -// Map tags = new HashMap<>(); -// Map fields = new HashMap<>(); -// tags.put("line_id",item.getLineId()); -// tags.put("phasic_type",item.getPhaseType()); -// tags.put("quality_flag",item.getQualityFlag()); -// tags.put("value_type",item.getValueType()); -// fields.put("v_1",item.getV1()); -// fields.put("v_2",item.getV2()); -// fields.put("v_3",item.getV3()); -// fields.put("v_4",item.getV4()); -// fields.put("v_5",item.getV5()); -// fields.put("v_6",item.getV6()); -// fields.put("v_7",item.getV7()); -// fields.put("v_8",item.getV8()); -// fields.put("v_9",item.getV9()); -// fields.put("v_10",item.getV10()); -// fields.put("v_11",item.getV11()); -// fields.put("v_12",item.getV12()); -// fields.put("v_13",item.getV13()); -// fields.put("v_14",item.getV14()); -// fields.put("v_15",item.getV15()); -// fields.put("v_16",item.getV16()); -// fields.put("v_17",item.getV17()); -// fields.put("v_18",item.getV18()); -// fields.put("v_19",item.getV19()); -// fields.put("v_20",item.getV20()); -// fields.put("v_21",item.getV21()); -// fields.put("v_22",item.getV22()); -// fields.put("v_23",item.getV23()); -// fields.put("v_24",item.getV24()); -// fields.put("v_25",item.getV25()); -// fields.put("v_26",item.getV26()); -// fields.put("v_27",item.getV27()); -// fields.put("v_28",item.getV28()); -// fields.put("v_29",item.getV29()); -// fields.put("v_30",item.getV30()); -// fields.put("v_31",item.getV31()); -// fields.put("v_32",item.getV32()); -// fields.put("v_33",item.getV33()); -// fields.put("v_34",item.getV34()); -// fields.put("v_35",item.getV35()); -// fields.put("v_36",item.getV36()); -// fields.put("v_37",item.getV37()); -// fields.put("v_38",item.getV38()); -// fields.put("v_39",item.getV39()); -// fields.put("v_40",item.getV40()); -// fields.put("v_41",item.getV41()); -// fields.put("v_42",item.getV42()); -// fields.put("v_43",item.getV43()); -// fields.put("v_44",item.getV44()); -// fields.put("v_45",item.getV45()); -// fields.put("v_46",item.getV46()); -// fields.put("v_47",item.getV47()); -// fields.put("v_48",item.getV48()); -// fields.put("v_49",item.getV49()); -// fields.put("v_50",item.getV50()); -// Point point = influxDbUtils.pointBuilder(InfluxDBPublicParam.DAY_IN_HARM_V, time, TimeUnit.MILLISECONDS, tags, fields); -// BatchPoints batchPoints = BatchPoints.database(influxDbConfig.getDatabase()).tag(InfluxDBPublicParam.LINE_ID, item.getLineId()).tag(InfluxDBPublicParam.PHASIC_TYPE,item.getPhaseType()).tag(InfluxDBPublicParam.QUALITY_FLAG,item.getQualityFlag()).tag(InfluxDBPublicParam.VALUE_TYPE,item.getValueType()).retentionPolicy("").consistency(InfluxDB.ConsistencyLevel.ALL).build(); -// batchPoints.point(point); -// records.add(batchPoints.lineProtocol()); -// }); -// influxDbUtils.batchInsert(influxDbConfig.getDatabase(),"", InfluxDB.ConsistencyLevel.ALL, records); -// } -// -// -// /** -// * 功能描述:获取data_inharmrate_i数据 -// * @author xy -// * @param startTime 起始时间 -// * @param endTime 结束时间 -// * @date 2022/5/10 14:56 -// * @return List -// */ -// public List getDataInHarmRateI(List lineList, String startTime, String endTime){ -// List result = new ArrayList<>(); -// StringBuilder stringBuilder = lineStringBuilder(lineList); -// //最小值 -// StringBuilder stringBuilder1 = new StringBuilder(); -// StringBuilder stringBuilder2 = new StringBuilder(); -// for (int i = 1; i <=50 ; i++) { -// if (i==50){ -// stringBuilder1.append("min(i_").append(i).append(") AS i_").append(i); -// } else { -// stringBuilder1.append("min(i_").append(i).append(") AS i_").append(i).append(","); -// } -// } -// stringBuilder2.append(InfluxDBPublicParam.TIME + " >= '").append(startTime).append("' and ").append(InfluxDBPublicParam.TIME).append(" <= '").append(endTime).append("' and value_type = 'MIN' group by line_id,phasic_type,value_type,quality_flag ").append(InfluxDBPublicParam.TIME_ZONE); -// String sql1 = "select "+stringBuilder1+" from "+ InfluxDBPublicParam.DATA_IN_HARM_I+" where "+stringBuilder+stringBuilder2; -// QueryResult sqlResult1 = influxDbUtils.query(sql1); -// InfluxDBResultMapper resultMapper1 = new InfluxDBResultMapper(); -// List list1 = resultMapper1.toPOJO(sqlResult1, DataInHarmRateI.class); -// //最大值 -// StringBuilder stringBuilder3 = new StringBuilder(); -// StringBuilder stringBuilder4 = new StringBuilder(); -// for (int i = 1; i <=50 ; i++) { -// if (i==50){ -// stringBuilder3.append("max(i_").append(i).append(") AS i_").append(i); -// } else { -// stringBuilder3.append("max(i_").append(i).append(") AS i_").append(i).append(","); -// } -// } -// stringBuilder4.append(InfluxDBPublicParam.TIME + " >= '").append(startTime).append("' and ").append(InfluxDBPublicParam.TIME).append(" <= '").append(endTime).append("' and value_type = 'MAX' group by line_id,phasic_type,value_type,quality_flag ").append(InfluxDBPublicParam.TIME_ZONE); -// String sql2 = "select "+stringBuilder3+" from "+ InfluxDBPublicParam.DATA_IN_HARM_I+" where "+stringBuilder+stringBuilder4; -// QueryResult sqlResult2 = influxDbUtils.query(sql2); -// InfluxDBResultMapper resultMapper2 = new InfluxDBResultMapper(); -// List list2 = resultMapper2.toPOJO(sqlResult2, DataInHarmRateI.class); -// //平均值 -// StringBuilder stringBuilder5 = new StringBuilder(); -// StringBuilder stringBuilder6 = new StringBuilder(); -// for (int i = 1; i <=50 ; i++) { -// if (i==50){ -// stringBuilder5.append("mean(i_").append(i).append(") AS i_").append(i); -// } else { -// stringBuilder5.append("mean(i_").append(i).append(") AS i_").append(i).append(","); -// } -// } -// stringBuilder6.append(InfluxDBPublicParam.TIME + " >= '").append(startTime).append("' and ").append(InfluxDBPublicParam.TIME).append(" <= '").append(endTime).append("' and value_type = 'AVG' group by line_id,phasic_type,value_type,quality_flag ").append(InfluxDBPublicParam.TIME_ZONE); -// String sql3 = "select "+stringBuilder5+" from "+ InfluxDBPublicParam.DATA_IN_HARM_I+" where "+stringBuilder+stringBuilder6; -// QueryResult sqlResult3 = influxDbUtils.query(sql3); -// InfluxDBResultMapper resultMapper3 = new InfluxDBResultMapper(); -// List list3 = resultMapper3.toPOJO(sqlResult3, DataInHarmRateI.class); -// //CP95值 -// StringBuilder stringBuilder7 = new StringBuilder(); -// StringBuilder stringBuilder8 = new StringBuilder(); -// for (int i = 1; i <=50 ; i++) { -// if (i==50){ -// stringBuilder7.append("percentile(i_").append(i).append(",95) AS i_").append(i); -// } else { -// stringBuilder7.append("percentile(i_").append(i).append(",95) AS i_").append(i).append(","); -// } -// } -// stringBuilder8.append(InfluxDBPublicParam.TIME + " >= '").append(startTime).append("' and ").append(InfluxDBPublicParam.TIME).append(" <= '").append(endTime).append("' and value_type = 'AVG' group by line_id,phasic_type,value_type,quality_flag ").append(InfluxDBPublicParam.TIME_ZONE); -// String sql4 = "select "+stringBuilder7+" from "+ InfluxDBPublicParam.DATA_IN_HARM_I+" where "+stringBuilder+stringBuilder8; -// QueryResult sqlResult4 = influxDbUtils.query(sql4); -// InfluxDBResultMapper resultMapper4 = new InfluxDBResultMapper(); -// List list4 = resultMapper4.toPOJO(sqlResult4, DataInHarmRateI.class); -// list4.forEach(item->{ -// item.setValueType("CP95"); -// }); -// result.addAll(list1); -// result.addAll(list2); -// result.addAll(list3); -// result.addAll(list4); -// return result; -// } -// -// /** -// * 功能描述:插入day_inharmrate_i表数据 -// * @author xy -// * @param list data_inharmrate_i表数据 -// * @param time 时间戳 -// * @date 2022/5/12 8:55 -// */ -// private void insertDayInHarmRateI(List list, long time){ -// List records = new ArrayList<>(); -// list.forEach(item->{ -// Map tags = new HashMap<>(); -// Map fields = new HashMap<>(); -// tags.put("line_id",item.getLineId()); -// tags.put("phasic_type",item.getPhaseType()); -// tags.put("quality_flag",item.getQualityFlag()); -// tags.put("value_type",item.getValueType()); -// fields.put("i_1",item.getI1()); -// fields.put("i_2",item.getI2()); -// fields.put("i_3",item.getI3()); -// fields.put("i_4",item.getI4()); -// fields.put("i_5",item.getI5()); -// fields.put("i_6",item.getI6()); -// fields.put("i_7",item.getI7()); -// fields.put("i_8",item.getI8()); -// fields.put("i_9",item.getI9()); -// fields.put("i_10",item.getI10()); -// fields.put("i_11",item.getI11()); -// fields.put("i_12",item.getI12()); -// fields.put("i_13",item.getI13()); -// fields.put("i_14",item.getI14()); -// fields.put("i_15",item.getI15()); -// fields.put("i_16",item.getI16()); -// fields.put("i_17",item.getI17()); -// fields.put("i_18",item.getI18()); -// fields.put("i_19",item.getI19()); -// fields.put("i_20",item.getI20()); -// fields.put("i_21",item.getI21()); -// fields.put("i_22",item.getI22()); -// fields.put("i_23",item.getI23()); -// fields.put("i_24",item.getI24()); -// fields.put("i_25",item.getI25()); -// fields.put("i_26",item.getI26()); -// fields.put("i_27",item.getI27()); -// fields.put("i_28",item.getI28()); -// fields.put("i_29",item.getI29()); -// fields.put("i_30",item.getI30()); -// fields.put("i_31",item.getI31()); -// fields.put("i_32",item.getI32()); -// fields.put("i_33",item.getI33()); -// fields.put("i_34",item.getI34()); -// fields.put("i_35",item.getI35()); -// fields.put("i_36",item.getI36()); -// fields.put("i_37",item.getI37()); -// fields.put("i_38",item.getI38()); -// fields.put("i_39",item.getI39()); -// fields.put("i_40",item.getI40()); -// fields.put("i_41",item.getI41()); -// fields.put("i_42",item.getI42()); -// fields.put("i_43",item.getI43()); -// fields.put("i_44",item.getI44()); -// fields.put("i_45",item.getI45()); -// fields.put("i_46",item.getI46()); -// fields.put("i_47",item.getI47()); -// fields.put("i_48",item.getI48()); -// fields.put("i_49",item.getI49()); -// fields.put("i_50",item.getI50()); -// Point point = influxDbUtils.pointBuilder(InfluxDBPublicParam.DAY_IN_HARM_I, time, TimeUnit.MILLISECONDS, tags, fields); -// BatchPoints batchPoints = BatchPoints.database(influxDbConfig.getDatabase()).tag(InfluxDBPublicParam.LINE_ID, item.getLineId()).tag(InfluxDBPublicParam.PHASIC_TYPE,item.getPhaseType()).tag(InfluxDBPublicParam.QUALITY_FLAG,item.getQualityFlag()).tag(InfluxDBPublicParam.VALUE_TYPE,item.getValueType()).retentionPolicy("").consistency(InfluxDB.ConsistencyLevel.ALL).build(); -// batchPoints.point(point); -// records.add(batchPoints.lineProtocol()); -// }); -// influxDbUtils.batchInsert(influxDbConfig.getDatabase(),"", InfluxDB.ConsistencyLevel.ALL, records); -// } -// -// /** -// * 功能描述:获取data_inharmrate_v数据 -// * @author xy -// * @param startTime 起始时间 -// * @param endTime 结束时间 -// * @date 2022/5/10 14:56 -// * @return List -// */ -// public List getDataInHarmRateV(List lineList, String startTime, String endTime){ -// List result = new ArrayList<>(); -// StringBuilder stringBuilder = lineStringBuilder(lineList); -// //最小值 -// StringBuilder stringBuilder1 = new StringBuilder(); -// StringBuilder stringBuilder2 = new StringBuilder(); -// for (int i = 1; i <=50 ; i++) { -// if (i==50){ -// stringBuilder1.append("min(v_").append(i).append(") AS v_").append(i); -// } else { -// stringBuilder1.append("min(v_").append(i).append(") AS v_").append(i).append(","); -// } -// } -// stringBuilder2.append(InfluxDBPublicParam.TIME + " >= '").append(startTime).append("' and ").append(InfluxDBPublicParam.TIME).append(" <= '").append(endTime).append("' and value_type = 'MIN' group by line_id,phasic_type,value_type,quality_flag ").append(InfluxDBPublicParam.TIME_ZONE); -// String sql1 = "select "+stringBuilder1+" from "+ InfluxDBPublicParam.DATA_IN_HARM_V+" where "+stringBuilder+stringBuilder2; -// QueryResult sqlResult1 = influxDbUtils.query(sql1); -// InfluxDBResultMapper resultMapper1 = new InfluxDBResultMapper(); -// List list1 = resultMapper1.toPOJO(sqlResult1, DataInHarmRateV.class); -// //最大值 -// StringBuilder stringBuilder3 = new StringBuilder(); -// StringBuilder stringBuilder4 = new StringBuilder(); -// for (int i = 1; i <=50 ; i++) { -// if (i==50){ -// stringBuilder3.append("max(v_").append(i).append(") AS v_").append(i); -// } else { -// stringBuilder3.append("max(v_").append(i).append(") AS v_").append(i).append(","); -// } -// } -// stringBuilder4.append(InfluxDBPublicParam.TIME + " >= '").append(startTime).append("' and ").append(InfluxDBPublicParam.TIME).append(" <= '").append(endTime).append("' and value_type = 'MAX' group by line_id,phasic_type,value_type,quality_flag ").append(InfluxDBPublicParam.TIME_ZONE); -// String sql2 = "select "+stringBuilder3+" from "+ InfluxDBPublicParam.DATA_IN_HARM_V+" where "+stringBuilder+stringBuilder4; -// QueryResult sqlResult2 = influxDbUtils.query(sql2); -// InfluxDBResultMapper resultMapper2 = new InfluxDBResultMapper(); -// List list2 = resultMapper2.toPOJO(sqlResult2, DataInHarmRateV.class); -// //平均值 -// StringBuilder stringBuilder5 = new StringBuilder(); -// StringBuilder stringBuilder6 = new StringBuilder(); -// for (int i = 1; i <=50 ; i++) { -// if (i==50){ -// stringBuilder5.append("mean(v_").append(i).append(") AS v_").append(i); -// } else { -// stringBuilder5.append("mean(v_").append(i).append(") AS v_").append(i).append(","); -// } -// } -// stringBuilder6.append(InfluxDBPublicParam.TIME + " >= '").append(startTime).append("' and ").append(InfluxDBPublicParam.TIME).append(" <= '").append(endTime).append("' and value_type = 'AVG' group by line_id,phasic_type,value_type,quality_flag ").append(InfluxDBPublicParam.TIME_ZONE); -// String sql3 = "select "+stringBuilder5+" from "+ InfluxDBPublicParam.DATA_IN_HARM_V+" where "+stringBuilder+stringBuilder6; -// QueryResult sqlResult3 = influxDbUtils.query(sql3); -// InfluxDBResultMapper resultMapper3 = new InfluxDBResultMapper(); -// List list3 = resultMapper3.toPOJO(sqlResult3, DataInHarmRateV.class); -// //CP95值 -// StringBuilder stringBuilder7 = new StringBuilder(); -// StringBuilder stringBuilder8 = new StringBuilder(); -// for (int i = 1; i <=50 ; i++) { -// if (i==50){ -// stringBuilder7.append("percentile(v_").append(i).append(",95) AS v_").append(i); -// } else { -// stringBuilder7.append("percentile(v_").append(i).append(",95) AS v_").append(i).append(","); -// } -// } -// stringBuilder8.append(InfluxDBPublicParam.TIME + " >= '").append(startTime).append("' and ").append(InfluxDBPublicParam.TIME).append(" <= '").append(endTime).append("' and value_type = 'AVG' group by line_id,phasic_type,value_type,quality_flag ").append(InfluxDBPublicParam.TIME_ZONE); -// String sql4 = "select "+stringBuilder7+" from "+ InfluxDBPublicParam.DATA_IN_HARM_V+" where "+stringBuilder+stringBuilder8; -// QueryResult sqlResult4 = influxDbUtils.query(sql4); -// InfluxDBResultMapper resultMapper4 = new InfluxDBResultMapper(); -// List list4 = resultMapper4.toPOJO(sqlResult4, DataInHarmRateV.class); -// list4.forEach(item->{ -// item.setValueType("CP95"); -// }); -// result.addAll(list1); -// result.addAll(list2); -// result.addAll(list3); -// result.addAll(list4); -// return result; -// } -// -// /** -// * 功能描述:插入day_inharmrate_v表数据 -// * @author xy -// * @param list data_inharmrate_v表数据 -// * @param time 时间戳 -// * @date 2022/5/12 8:55 -// */ -// private void insertDayInHarmRateV(List list, long time){ -// List records = new ArrayList<>(); -// list.forEach(item->{ -// Map tags = new HashMap<>(); -// Map fields = new HashMap<>(); -// tags.put("line_id",item.getLineId()); -// tags.put("phasic_type",item.getPhaseType()); -// tags.put("quality_flag",item.getQualityFlag()); -// tags.put("value_type",item.getValueType()); -// fields.put("v_1",item.getV1()); -// fields.put("v_2",item.getV2()); -// fields.put("v_3",item.getV3()); -// fields.put("v_4",item.getV4()); -// fields.put("v_5",item.getV5()); -// fields.put("v_6",item.getV6()); -// fields.put("v_7",item.getV7()); -// fields.put("v_8",item.getV8()); -// fields.put("v_9",item.getV9()); -// fields.put("v_10",item.getV10()); -// fields.put("v_11",item.getV11()); -// fields.put("v_12",item.getV12()); -// fields.put("v_13",item.getV13()); -// fields.put("v_14",item.getV14()); -// fields.put("v_15",item.getV15()); -// fields.put("v_16",item.getV16()); -// fields.put("v_17",item.getV17()); -// fields.put("v_18",item.getV18()); -// fields.put("v_19",item.getV19()); -// fields.put("v_20",item.getV20()); -// fields.put("v_21",item.getV21()); -// fields.put("v_22",item.getV22()); -// fields.put("v_23",item.getV23()); -// fields.put("v_24",item.getV24()); -// fields.put("v_25",item.getV25()); -// fields.put("v_26",item.getV26()); -// fields.put("v_27",item.getV27()); -// fields.put("v_28",item.getV28()); -// fields.put("v_29",item.getV29()); -// fields.put("v_30",item.getV30()); -// fields.put("v_31",item.getV31()); -// fields.put("v_32",item.getV32()); -// fields.put("v_33",item.getV33()); -// fields.put("v_34",item.getV34()); -// fields.put("v_35",item.getV35()); -// fields.put("v_36",item.getV36()); -// fields.put("v_37",item.getV37()); -// fields.put("v_38",item.getV38()); -// fields.put("v_39",item.getV39()); -// fields.put("v_40",item.getV40()); -// fields.put("v_41",item.getV41()); -// fields.put("v_42",item.getV42()); -// fields.put("v_43",item.getV43()); -// fields.put("v_44",item.getV44()); -// fields.put("v_45",item.getV45()); -// fields.put("v_46",item.getV46()); -// fields.put("v_47",item.getV47()); -// fields.put("v_48",item.getV48()); -// fields.put("v_49",item.getV49()); -// fields.put("v_50",item.getV50()); -// Point point = influxDbUtils.pointBuilder(InfluxDBPublicParam.DATA_IN_HARM_V, time, TimeUnit.MILLISECONDS, tags, fields); -// BatchPoints batchPoints = BatchPoints.database(influxDbConfig.getDatabase()).tag(InfluxDBPublicParam.LINE_ID, item.getLineId()).tag(InfluxDBPublicParam.PHASIC_TYPE,item.getPhaseType()).tag(InfluxDBPublicParam.QUALITY_FLAG,item.getQualityFlag()).tag(InfluxDBPublicParam.VALUE_TYPE,item.getValueType()).retentionPolicy("").consistency(InfluxDB.ConsistencyLevel.ALL).build(); -// batchPoints.point(point); -// records.add(batchPoints.lineProtocol()); -// }); -// influxDbUtils.batchInsert(influxDbConfig.getDatabase(),"", InfluxDB.ConsistencyLevel.ALL, records); -// } -// -// /** -// * 功能描述:获取data_plt数据 -// * @author xy -// * @param startTime 起始时间 -// * @param endTime 结束时间 -// * @date 2022/5/10 14:56 -// * @return List -// */ -// public List getDataPlt(List lineList, String startTime, String endTime){ -// List result = new ArrayList<>(); -// StringBuilder stringBuilder = lineStringBuilder(lineList); -// //最小值 -// String sql1 = "select min(plt) AS plt from "+ InfluxDBPublicParam.DATA_PLT+" where "+stringBuilder+" time >= '" + startTime + "' and time <= '" + endTime + "' group by line_id,phasic_type,quality_flag "+ InfluxDBPublicParam.TIME_ZONE; -// QueryResult sqlResult1 = influxDbUtils.query(sql1); -// InfluxDBResultMapper resultMapper1 = new InfluxDBResultMapper(); -// List list1 = resultMapper1.toPOJO(sqlResult1, DataPlt.class); -// list1.forEach(item->{ -// item.setValueType("MIN"); -// }); -// //最大值 -// String sql2 = "select max(plt) AS plt from "+ InfluxDBPublicParam.DATA_PLT+" where "+stringBuilder+" time >= '" + startTime + "' and time <= '" + endTime + "' group by line_id,phasic_type,quality_flag "+ InfluxDBPublicParam.TIME_ZONE; -// QueryResult sqlResult2 = influxDbUtils.query(sql2); -// InfluxDBResultMapper resultMapper2 = new InfluxDBResultMapper(); -// List list2 = resultMapper2.toPOJO(sqlResult2, DataPlt.class); -// list2.forEach(item->{ -// item.setValueType("MAX"); -// }); -// //平均值 -// String sql3 = "select mean(plt) AS plt from "+ InfluxDBPublicParam.DATA_PLT+" where "+stringBuilder+" time >= '" + startTime + "' and time <= '" + endTime + "' group by line_id,phasic_type,quality_flag "+ InfluxDBPublicParam.TIME_ZONE; -// QueryResult sqlResult3 = influxDbUtils.query(sql3); -// InfluxDBResultMapper resultMapper3= new InfluxDBResultMapper(); -// List list3 = resultMapper3.toPOJO(sqlResult3, DataPlt.class); -// list3.forEach(item->{ -// item.setValueType("AVG"); -// }); -// //CP95值 -// String sql4 = "select percentile(plt,95) AS plt from "+ InfluxDBPublicParam.DATA_PLT+" where "+stringBuilder+" time >= '" + startTime + "' and time <= '" + endTime + "' group by line_id,phasic_type,quality_flag "+ InfluxDBPublicParam.TIME_ZONE; -// QueryResult sqlResult4 = influxDbUtils.query(sql4); -// InfluxDBResultMapper resultMapper4= new InfluxDBResultMapper(); -// List list4 = resultMapper4.toPOJO(sqlResult4, DataPlt.class); -// list4.forEach(item->{ -// item.setValueType("CP95"); -// }); -// result.addAll(list1); -// result.addAll(list2); -// result.addAll(list3); -// result.addAll(list4); -// return result; -// } -// -// /** -// * 功能描述:插入day_plt表数据 -// * @author xy -// * @param list data_plt集合 -// * @param time 时间戳 -// * @date 2022/5/12 8:55 -// */ -// private void insertDayPlt(List list, long time){ -// List records = new ArrayList<>(); -// list.forEach(item->{ -// Map tags = new HashMap<>(); -// Map fields = new HashMap<>(); -// tags.put("line_id",item.getLineId()); -// tags.put("phasic_type",item.getPhaseType()); -// tags.put("quality_flag",item.getQualityFlag()); -// tags.put("value_type",item.getValueType()); -// fields.put("plt",item.getPlt()); -// Point point = influxDbUtils.pointBuilder(InfluxDBPublicParam.DAY_PLT, time, TimeUnit.MILLISECONDS, tags, fields); -// BatchPoints batchPoints = BatchPoints.database(influxDbConfig.getDatabase()).tag(InfluxDBPublicParam.LINE_ID, item.getLineId()).tag(InfluxDBPublicParam.PHASIC_TYPE,item.getPhaseType()).tag(InfluxDBPublicParam.QUALITY_FLAG,item.getQualityFlag()).tag(InfluxDBPublicParam.VALUE_TYPE,item.getValueType()).retentionPolicy("").consistency(InfluxDB.ConsistencyLevel.ALL).build(); -// batchPoints.point(point); -// records.add(batchPoints.lineProtocol()); -// }); -// influxDbUtils.batchInsert(influxDbConfig.getDatabase(),"", InfluxDB.ConsistencyLevel.ALL, records); -// } -// -// public StringBuilder lineStringBuilder(List list) { -// StringBuilder stringBuilder = new StringBuilder(); -// if (!CollectionUtils.isEmpty(list)){ -// stringBuilder.append("("); -// for (int i = 0; i < list.size(); i++) { -// if (list.size() - i != 1) { -// stringBuilder.append("line_id ='").append(list.get(i)).append("' or "); -// } else { -// stringBuilder.append("line_id ='").append(list.get(i)).append("') and "); -// } -// } -// } -// return stringBuilder; -// } -//} diff --git a/pqs-job/job-executor/src/main/java/com/njcn/executor/handler/HarmAberrationRateJob.java b/pqs-job/job-executor/src/main/java/com/njcn/executor/handler/HarmAberrationRateJob.java index 60cde679d..11863c1d1 100644 --- a/pqs-job/job-executor/src/main/java/com/njcn/executor/handler/HarmAberrationRateJob.java +++ b/pqs-job/job-executor/src/main/java/com/njcn/executor/handler/HarmAberrationRateJob.java @@ -1,6 +1,7 @@ package com.njcn.executor.handler; +import com.njcn.common.pojo.constant.BizParamConstant; import com.njcn.executor.utils.CommonExecutorUtils; import com.njcn.prepare.harmonic.api.line.CoustmReportFeignClient; import com.njcn.prepare.harmonic.api.line.DistortionRateFeignClient; @@ -27,11 +28,9 @@ public class HarmAberrationRateJob { @XxlJob("harmAberrationRateHandler") public void harmAberrationRateHandler(){ - String command = XxlJobHelper.getJobParam(); LineParam lineParam = new LineParam(); - lineParam.setType(Integer.valueOf(command)); - - String date = CommonExecutorUtils.prepareTimeDeal(command); + lineParam.setType(Integer.valueOf(BizParamConstant.STAT_BIZ_DAY)); + String date = CommonExecutorUtils.prepareTimeDeal(BizParamConstant.STAT_BIZ_DAY); //date = "2022-10-26"; lineParam.setDataDate(date); lineParam.setDataSource(1); diff --git a/pqs-job/job-executor/src/main/java/com/njcn/executor/handler/LimitRateJob.java b/pqs-job/job-executor/src/main/java/com/njcn/executor/handler/LimitRateJob.java deleted file mode 100644 index 1b8ba0dd4..000000000 --- a/pqs-job/job-executor/src/main/java/com/njcn/executor/handler/LimitRateJob.java +++ /dev/null @@ -1,1400 +0,0 @@ -/* -package com.njcn.executor.handler; - -import com.njcn.common.pojo.constant.PatternRegex; -import com.njcn.device.pq.api.LineFeignClient; -import com.njcn.device.pq.pojo.dto.PollutionParamDTO; -import com.njcn.device.pq.pojo.po.Overlimit; -import com.njcn.executor.pojo.vo.*; -import com.njcn.influxdb.config.InfluxDbConfig; -import com.njcn.influxdb.param.InfluxDBPublicParam; -import com.njcn.influxdb.utils.InfluxDbUtils; -import com.xxl.job.core.context.XxlJobHelper; -import com.xxl.job.core.handler.annotation.XxlJob; -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.stereotype.Component; -import org.springframework.util.CollectionUtils; -import org.springframework.util.StringUtils; - -import java.text.ParseException; -import java.text.SimpleDateFormat; -import java.time.Instant; -import java.util.*; -import java.util.concurrent.TimeUnit; -import java.util.regex.Pattern; -import java.util.stream.Collectors; - -*/ -/** - * 类的介绍: - * - * @author xuyang - * @version 1.0.0 - * @createTime 2022/5/17 14:34 - *//* - -@Slf4j -@Component -@AllArgsConstructor -public class LimitRateJob { - - private final InfluxDbUtils influxDbUtils; - - private final InfluxDbConfig influxDbConfig; - - private final LineFeignClient lineFeignClient; - - @XxlJob("limitRateJobHandler") - public void getLimitRate() throws ParseException { - List list = new ArrayList<>(),paramList = new ArrayList<>();; - SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); - Calendar calendar = Calendar.getInstance(); - calendar.set(calendar.get(Calendar.YEAR), calendar.get(Calendar.MONTH), calendar.get(Calendar.DAY_OF_MONTH)-1, 0, 0, 0); - calendar.set(Calendar.MILLISECOND, 0); - Calendar calendar2 = Calendar.getInstance(); - calendar2.set(calendar2.get(Calendar.YEAR), calendar2.get(Calendar.MONTH), calendar2.get(Calendar.DAY_OF_MONTH)-1, 23, 59, 59); - calendar2.set(Calendar.MILLISECOND, 0); - String startTime = format.format(calendar.getTime()); - String endTime = format.format(calendar2.getTime()); - String command = XxlJobHelper.getJobParam(); - if (!StringUtils.isEmpty(command)){ - paramList = Arrays.asList(command.split(",")); - startTime = paramList.get(0); - endTime = paramList.get(1); - list = paramList.subList(2,paramList.size()); - if (CollectionUtils.isEmpty(list)){ - log.info("补招未传入监测点,默认使用系统查询的监测点"); - list = lineFeignClient.getLineList().getData(); - } - boolean s1 = Pattern.matches(PatternRegex.TIME_FORMAT,startTime); - boolean e1 = Pattern.matches(PatternRegex.TIME_FORMAT,endTime); - if (!s1 || !e1){ - log.error("补招时间格式错误"); - return; - } else { - startTime = startTime + " 00:00:00"; - endTime = endTime + " 23:59:59"; - } - } else { - list = lineFeignClient.getLineList().getData(); - } - long diff,diffDays,a,b = 0; - Date d1 = format.parse(startTime); - Date d2 = format.parse(endTime); - diff = d2.getTime() - d1.getTime(); - diffDays = diff / (24 * 60 * 60 * 1000-1000); - int days = (int) diffDays; - if (!CollectionUtils.isEmpty(list)){ - Map> overLimitMap = new HashMap<>(); - PollutionParamDTO pollutionParamDTO = new PollutionParamDTO(); - pollutionParamDTO.setLineList(list); - List overLimitList = lineFeignClient.getOverLimitByList(pollutionParamDTO).getData(); - if (!CollectionUtils.isEmpty(overLimitList)){ - overLimitMap = overLimitList.stream().collect(Collectors.groupingBy(Overlimit::getId)); - } - for (int i = 1; i <= days; i++) { - a = d1.getTime() + (long)(i-1)*(24 * 60 * 60) * 1000; - b = d1.getTime() + (long)i*(24 * 60 * 60) * 1000-1000; - startTime = format.format(a); - endTime = format.format(b); - Map> map1 = getAllTime(list,startTime,endTime); - Map> map2 = getFlickerAllTime(list,startTime,endTime); - Map> map3 = getDataHarmRateV(list,startTime,endTime); - Map> map4 = getDataI(list,startTime,endTime); - Map> map5 = getDataInHarmV(list,startTime,endTime); - Map> map6 = getDataV(list,startTime,endTime); - Map> map7 = getDataVUnbalance(list,startTime,endTime); - Map> map8 = getDataINeg(list,startTime,endTime); - Map> map9 = getDataVFreq(list,startTime,endTime); - Map> map10 = getDataVDev(list,startTime,endTime); - Map> map11 = getDataPlt(list,startTime,endTime); - List result = getData(overLimitMap,map1,map2,map3,map4,map5,map6,map7,map8,map9,map10,map11); - //入库 - if (!CollectionUtils.isEmpty(result)){ - insert(result,a); - } - } - } - } - - - */ -/** - * 组装A、B、C、T数据 - *//* - - private List getData(Map> limitMap, Map> map1, Map> map2, Map> map3,Map> map4,Map> map5,Map> map6,Map> map7,Map> map8,Map> map9,Map> map10,Map> map11){ - List result = new ArrayList<>(); - for (String item:limitMap.keySet()){ - Map> map111 = new HashMap<>(); - Map> map22 = new HashMap<>(); - Map> map33 = new HashMap<>(); - Map> map44 = new HashMap<>(); - Map> map88 = new HashMap<>(); - Map> map99 = new HashMap<>(); - Map> map1111 = new HashMap<>(); - Map> map222 = new HashMap<>(); - Map> map333 = new HashMap<>(); - Map> map444 = new HashMap<>(); - Map> map555 = new HashMap<>(); - Map> map666 = new HashMap<>(); - Map> map777 = new HashMap<>(); - Map> map888 = new HashMap<>(); - Map> map999 = new HashMap<>(); - Integer allTime = 0; - Integer flickerAllTime = 0; - Overlimit overlimit = limitMap.get(item).get(0); - if (!CollectionUtils.isEmpty(map1.get(item))){ - allTime = map1.get(item).get(0).getAllTime(); - } - if (!CollectionUtils.isEmpty(map2.get(item))){ - flickerAllTime = map2.get(item).get(0).getFlickerAllTime(); - } - List list1 = map3.get(item); - List list2 = map4.get(item); - List list3 = map5.get(item); - List list4 = map6.get(item); - List list5 = map7.get(item); - List list6 = map8.get(item); - List list7 = map9.get(item); - List list8 = map10.get(item); - List list9 = map11.get(item); - if (!CollectionUtils.isEmpty(list1)){ - map111 = list1.stream().collect(Collectors.groupingBy(DataHarmRateV::getPhaseType)); - map1111 = list1.stream().collect(Collectors.groupingBy(DataHarmRateV::getTime)); - } - if (!CollectionUtils.isEmpty(list2)){ - map22 = list2.stream().collect(Collectors.groupingBy(DataI::getPhaseType)); - map222 = list2.stream().collect(Collectors.groupingBy(DataI::getTime)); - } - if (!CollectionUtils.isEmpty(list3)){ - map33 = list3.stream().collect(Collectors.groupingBy(DataInHarmV::getPhaseType)); - map333 = list3.stream().collect(Collectors.groupingBy(DataInHarmV::getTime)); - } - if (!CollectionUtils.isEmpty(list4)){ - map44 = list4.stream().collect(Collectors.groupingBy(DataV::getPhaseType)); - map444 = list4.stream().collect(Collectors.groupingBy(DataV::getTime)); - } - if (!CollectionUtils.isEmpty(list5)){ - map555 = list5.stream().collect(Collectors.groupingBy(DataV::getTime)); - } - if (!CollectionUtils.isEmpty(list6)){ - map666 = list6.stream().collect(Collectors.groupingBy(DataI::getTime)); - } - if (!CollectionUtils.isEmpty(list7)){ - map777 = list7.stream().collect(Collectors.groupingBy(DataV::getTime)); - } - if (!CollectionUtils.isEmpty(list8)){ - map88 = list8.stream().collect(Collectors.groupingBy(DataV::getPhaseType)); - map888 = list8.stream().collect(Collectors.groupingBy(DataV::getTime)); - } - if (!CollectionUtils.isEmpty(list9)){ - map99 = list9.stream().collect(Collectors.groupingBy(DataPlt::getPhaseType)); - map999 = list9.stream().collect(Collectors.groupingBy(DataPlt::getTime)); - } - LimitRate a = limitRateData(overlimit,allTime,flickerAllTime,"A",item,map111.get("A"),map22.get("A"),map33.get("A"),map44.get("A"),map88.get("A"),map99.get("A")); - LimitRate b = limitRateData(overlimit,allTime,flickerAllTime,"B",item,map111.get("B"),map22.get("B"),map33.get("B"),map44.get("B"),map88.get("B"),map99.get("B")); - LimitRate c = limitRateData(overlimit,allTime,flickerAllTime,"C",item,map111.get("C"),map22.get("C"),map33.get("C"),map44.get("C"),map88.get("C"),map99.get("C")); - LimitRate t = limitRateDataT(overlimit,allTime,flickerAllTime,item,map1111,map222,map333,map444,map555,map666,map777,map888,map999); - result.add(a); - result.add(b); - result.add(c); - result.add(t); - }; - return result; - } - - - */ -/** - * A、B、C三项指标统计 - *//* - - public LimitRate limitRateData(Overlimit overlimit, Integer allTime, Integer flickerAllTime, String phasicType, String lineId, List list1, List list2, List list3, List list4, List list8, List list9){ - LimitRate limitRate = new LimitRate(); - int v2 = 0,v3 = 0,v4 = 0,v5 = 0,v6 = 0,v7 = 0,v8 = 0,v9 = 0,v10 = 0,v11 = 0,v12 = 0,v13 = 0,v14 = 0,v15 = 0,v16 = 0,v17 = 0,v18 = 0,v19 = 0,v20 = 0,v21 = 0,v22 = 0,v23 = 0,v24 = 0,v25 = 0; - int i2 = 0,i3 = 0,i4 = 0,i5 = 0,i6 = 0,i7 = 0,i8 = 0,i9 = 0,i10 = 0,i11 = 0,i12 = 0,i13 = 0,i14 = 0,i15 = 0,i16 = 0,i17 = 0,i18 = 0,i19 = 0,i20 = 0,i21 = 0,i22 = 0,i23 = 0,i24 = 0,i25 = 0; - int uHarm1 = 0,uHarm2 = 0,uHarm3 = 0,uHarm4 = 0,uHarm5 = 0,uHarm6 = 0,uHarm7 = 0,uHarm8 = 0,uHarm9 = 0,uHarm10 = 0,uHarm11 = 0,uHarm12 = 0,uHarm13 = 0,uHarm14 = 0,uHarm15 = 0,uHarm16 = 0; - int thd = 0,uDev = 0,flicker = 0; - //2-25次谐波电压含有率 - if (!CollectionUtils.isEmpty(list1)){ - for (DataHarmRateV item : list1) { - if (item.getV2() > overlimit.getUharm2()){ - v2++; - } - if (item.getV3() > overlimit.getUharm3()){ - v3++; - } - if (item.getV4() > overlimit.getUharm4()){ - v4++; - } - if (item.getV5() > overlimit.getUharm5()){ - v5++; - } - if (item.getV6() > overlimit.getUharm6()){ - v6++; - } - if (item.getV7() > overlimit.getUharm7()){ - v7++; - } - if (item.getV8() > overlimit.getUharm8()){ - v8++; - } - if (item.getV9() > overlimit.getUharm9()){ - v9++; - } - if (item.getV10() > overlimit.getUharm10()){ - v10++; - } - if (item.getV11() > overlimit.getUharm11()){ - v11++; - } - if (item.getV12() > overlimit.getUharm12()){ - v12++; - } - if (item.getV13() > overlimit.getUharm13()){ - v13++; - } - if (item.getV14() > overlimit.getUharm14()){ - v14++; - } - if (item.getV15() > overlimit.getUharm15()){ - v15++; - } - if (item.getV16() > overlimit.getUharm16()){ - v16++; - } - if (item.getV17() > overlimit.getUharm17()){ - v17++; - } - if (item.getV18() > overlimit.getUharm18()){ - v18++; - } - if (item.getV19() > overlimit.getUharm19()){ - v19++; - } - if (item.getV20() > overlimit.getUharm20()){ - v20++; - } - if (item.getV21() > overlimit.getUharm21()){ - v21++; - } - if (item.getV22() > overlimit.getUharm22()){ - v22++; - } - if (item.getV23() > overlimit.getUharm23()){ - v23++; - } - if (item.getV24() > overlimit.getUharm24()){ - v24++; - } - if (item.getV25() > overlimit.getUharm25()){ - v25++; - } - } - } - //2-25次谐波电流 - if (!CollectionUtils.isEmpty(list2)){ - for (DataI item : list2) { - if (item.getI2() > overlimit.getIharm2()){ - i2++; - } - if (item.getI3() > overlimit.getIharm3()){ - i3++; - } - if (item.getI4() > overlimit.getIharm4()){ - i4++; - } - if (item.getI5() > overlimit.getIharm5()){ - i5++; - } - if (item.getI6() > overlimit.getIharm6()){ - i6++; - } - if (item.getI7() > overlimit.getIharm7()){ - i7++; - } - if (item.getI8() > overlimit.getIharm8()){ - i8++; - } - if (item.getI9() > overlimit.getIharm9()){ - i9++; - } - if (item.getI10() > overlimit.getIharm10()){ - i10++; - } - if (item.getI11() > overlimit.getIharm11()){ - i11++; - } - if (item.getI12() > overlimit.getIharm12()){ - i12++; - } - if (item.getI13() > overlimit.getIharm13()){ - i13++; - } - if (item.getI14() > overlimit.getIharm14()){ - i14++; - } - if (item.getI15() > overlimit.getIharm15()){ - i15++; - } - if (item.getI16() > overlimit.getIharm16()){ - i16++; - } - if (item.getI17() > overlimit.getIharm17()){ - i17++; - } - if (item.getI18() > overlimit.getIharm18()){ - i18++; - } - if (item.getI19() > overlimit.getIharm19()){ - i19++; - } - if (item.getI20() > overlimit.getIharm20()){ - i20++; - } - if (item.getI21() > overlimit.getIharm21()){ - i21++; - } - if (item.getI22() > overlimit.getIharm22()){ - i22++; - } - if (item.getI23() > overlimit.getIharm23()){ - i23++; - } - if (item.getI24() > overlimit.getIharm24()){ - i24++; - } - if (item.getI25() > overlimit.getIharm25()){ - i25++; - } - } - } - //0.5-15.5次间谐波电压含有率 - if (!CollectionUtils.isEmpty(list3)){ - for (DataInHarmV item : list3) { - if (item.getV1() > overlimit.getInuharm1()){ - uHarm1++; - } - if (item.getV2() > overlimit.getInuharm2()){ - uHarm2++; - } - if (item.getV3() > overlimit.getInuharm3()){ - uHarm3++; - } - if (item.getV4() > overlimit.getInuharm4()){ - uHarm4++; - } - if (item.getV5() > overlimit.getInuharm5()){ - uHarm5++; - } - if (item.getV6() > overlimit.getInuharm6()){ - uHarm6++; - } - if (item.getV7() > overlimit.getInuharm7()){ - uHarm7++; - } - if (item.getV8() > overlimit.getInuharm8()){ - uHarm8++; - } - if (item.getV9() > overlimit.getInuharm9()){ - uHarm9++; - } - if (item.getV10() > overlimit.getInuharm10()){ - uHarm10++; - } - if (item.getV11() > overlimit.getInuharm11()){ - uHarm11++; - } - if (item.getV12() > overlimit.getInuharm12()){ - uHarm12++; - } - if (item.getV13() > overlimit.getInuharm13()){ - uHarm13++; - } - if (item.getV14() > overlimit.getInuharm14()){ - uHarm14++; - } - if (item.getV15() > overlimit.getInuharm15()){ - uHarm15++; - } - if (item.getV16() > overlimit.getInuharm16()){ - uHarm16++; - } - } - } - //电压总谐波畸变率 - if (!CollectionUtils.isEmpty(list4)){ - for (DataV item : list4) { - if (item.getVThd() > overlimit.getUaberrance()){ - thd++; - } - } - } - //电压上偏差、电压下偏差 - if (!CollectionUtils.isEmpty(list8)){ - Map> devMap = list8.stream().collect(Collectors.groupingBy(DataV::getValueType)); - List maxList = devMap.get("MAX"); - for (DataV item : maxList) { - if (item.getVuDev() > overlimit.getVoltageDev()){ - uDev++; - } - } - List minList = devMap.get("MIN"); - for (DataV item : minList) { - if (item.getVlDev() < overlimit.getUvoltageDev()){ - uDev++; - } - } - } - //长时间闪变 - if (!CollectionUtils.isEmpty(list9)){ - for (DataPlt item : list9) { - if (item.getPlt() > overlimit.getFlicker()){ - flicker++; - } - } - } - limitRate.setLineId(lineId); - limitRate.setPhasicType(phasicType); - limitRate.setAllTime(allTime); - limitRate.setFlickerAllTime(flickerAllTime); - limitRate.setUAberranceOverTime(0); - limitRate.setINegOverTime(0); - limitRate.setFreqDevOverTime(0); - limitRate.setUHarm2OverTime(v2); - limitRate.setUHarm3OverTime(v3); - limitRate.setUHarm4OverTime(v4); - limitRate.setUHarm5OverTime(v5); - limitRate.setUHarm6OverTime(v6); - limitRate.setUHarm7OverTime(v7); - limitRate.setUHarm8OverTime(v8); - limitRate.setUHarm9OverTime(v9); - limitRate.setUHarm10OverTime(v10); - limitRate.setUHarm11OverTime(v11); - limitRate.setUHarm12OverTime(v12); - limitRate.setUHarm13OverTime(v13); - limitRate.setUHarm14OverTime(v14); - limitRate.setUHarm15OverTime(v15); - limitRate.setUHarm16OverTime(v16); - limitRate.setUHarm17OverTime(v17); - limitRate.setUHarm18OverTime(v18); - limitRate.setUHarm19OverTime(v19); - limitRate.setUHarm20OverTime(v20); - limitRate.setUHarm21OverTime(v21); - limitRate.setUHarm22OverTime(v22); - limitRate.setUHarm23OverTime(v23); - limitRate.setUHarm24OverTime(v24); - limitRate.setUHarm25OverTime(v25); - limitRate.setIHarm2OverTime(i2); - limitRate.setIHarm3OverTime(i3); - limitRate.setIHarm4OverTime(i4); - limitRate.setIHarm5OverTime(i5); - limitRate.setIHarm6OverTime(i6); - limitRate.setIHarm7OverTime(i7); - limitRate.setIHarm8OverTime(i8); - limitRate.setIHarm9OverTime(i9); - limitRate.setIHarm10OverTime(i10); - limitRate.setIHarm11OverTime(i11); - limitRate.setIHarm12OverTime(i12); - limitRate.setIHarm13OverTime(i13); - limitRate.setIHarm14OverTime(i14); - limitRate.setIHarm15OverTime(i15); - limitRate.setIHarm16OverTime(i16); - limitRate.setIHarm17OverTime(i17); - limitRate.setIHarm18OverTime(i18); - limitRate.setIHarm19OverTime(i19); - limitRate.setIHarm20OverTime(i20); - limitRate.setIHarm21OverTime(i21); - limitRate.setIHarm22OverTime(i22); - limitRate.setIHarm23OverTime(i23); - limitRate.setIHarm24OverTime(i24); - limitRate.setIHarm25OverTime(i25); - limitRate.setInuHarm1OverTime(uHarm1); - limitRate.setInuHarm2OverTime(uHarm2); - limitRate.setInuHarm3OverTime(uHarm3); - limitRate.setInuHarm4OverTime(uHarm4); - limitRate.setInuHarm5OverTime(uHarm5); - limitRate.setInuHarm6OverTime(uHarm6); - limitRate.setInuHarm7OverTime(uHarm7); - limitRate.setInuHarm8OverTime(uHarm8); - limitRate.setInuHarm9OverTime(uHarm9); - limitRate.setInuHarm10OverTime(uHarm10); - limitRate.setInuHarm11OverTime(uHarm11); - limitRate.setInuHarm12OverTime(uHarm12); - limitRate.setInuHarm13OverTime(uHarm13); - limitRate.setInuHarm14OverTime(uHarm14); - limitRate.setInuHarm15OverTime(uHarm15); - limitRate.setInuHarm16OverTime(uHarm16); - limitRate.setUBalanceOverTime(thd); - limitRate.setVoltageDevOverTime(uDev); - limitRate.setFlickerOverTime(flicker); - return limitRate; - } - - */ -/** - * T三项指标统计 - *//* - - public LimitRate limitRateDataT(Overlimit overlimit, Integer allTime, Integer flickerAllTime, String lineId, Map> map1,Map> map2, Map> map3,Map> map4,Map> map5,Map> map6,Map> map7, Map> map8,Map> map9){ - LimitRate limitRate = new LimitRate(); - int v2 = 0,v3 = 0,v4 = 0,v5 = 0,v6 = 0,v7 = 0,v8 = 0,v9 = 0,v10 = 0,v11 = 0,v12 = 0,v13 = 0,v14 = 0,v15 = 0,v16 = 0,v17 = 0,v18 = 0,v19 = 0,v20 = 0,v21 = 0,v22 = 0,v23 = 0,v24 = 0,v25 = 0; - int i2 = 0,i3 = 0,i4 = 0,i5 = 0,i6 = 0,i7 = 0,i8 = 0,i9 = 0,i10 = 0,i11 = 0,i12 = 0,i13 = 0,i14 = 0,i15 = 0,i16 = 0,i17 = 0,i18 = 0,i19 = 0,i20 = 0,i21 = 0,i22 = 0,i23 = 0,i24 = 0,i25 = 0; - int uHarm1 = 0,uHarm2 = 0,uHarm3 = 0,uHarm4 = 0,uHarm5 = 0,uHarm6 = 0,uHarm7 = 0,uHarm8 = 0,uHarm9 = 0,uHarm10 = 0,uHarm11 = 0,uHarm12 = 0,uHarm13 = 0,uHarm14 = 0,uHarm15 = 0,uHarm16 = 0; - int thd = 0,uDev = 0,flicker = 0,freqDev = 0,uAberrance = 0,iNeg = 0; - //2-25次谐波电压含有率 - for (Instant time:map1.keySet()) { - List list = map1.get(time); - List l2 = list.stream().filter(s->s.getV2()>overlimit.getUharm2()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l2)){ - v2++; - } - List l3 = list.stream().filter(s->s.getV3()>overlimit.getUharm3()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l3)){ - v3++; - } - List l4 = list.stream().filter(s->s.getV4()>overlimit.getUharm4()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l4)){ - v4++; - } - List l5 = list.stream().filter(s->s.getV5()>overlimit.getUharm5()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l5)){ - v5++; - } - List l6 = list.stream().filter(s->s.getV6()>overlimit.getUharm6()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l6)){ - v6++; - } - List l7 = list.stream().filter(s->s.getV7()>overlimit.getUharm7()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l7)){ - v7++; - } - List l8 = list.stream().filter(s->s.getV8()>overlimit.getUharm8()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l8)){ - v8++; - } - List l9 = list.stream().filter(s->s.getV9()>overlimit.getUharm9()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l9)){ - v9++; - } - List l10 = list.stream().filter(s->s.getV10()>overlimit.getUharm10()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l10)){ - v10++; - } - List l11 = list.stream().filter(s->s.getV11()>overlimit.getUharm11()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l11)){ - v11++; - } - List l12 = list.stream().filter(s->s.getV12()>overlimit.getUharm12()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l12)){ - v12++; - } - List l13 = list.stream().filter(s->s.getV13()>overlimit.getUharm13()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l13)){ - v13++; - } - List l14 = list.stream().filter(s->s.getV14()>overlimit.getUharm14()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l14)){ - v14++; - } - List l15 = list.stream().filter(s->s.getV15()>overlimit.getUharm15()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l15)){ - v15++; - } - List l16 = list.stream().filter(s->s.getV16()>overlimit.getUharm16()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l16)){ - v16++; - } - List l17 = list.stream().filter(s->s.getV17()>overlimit.getUharm17()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l17)){ - v17++; - } - List l18 = list.stream().filter(s->s.getV18()>overlimit.getUharm18()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l18)){ - v18++; - } - List l19 = list.stream().filter(s->s.getV19()>overlimit.getUharm19()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l19)){ - v19++; - } - List l20 = list.stream().filter(s->s.getV20()>overlimit.getUharm20()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l20)){ - v20++; - } - List l21 = list.stream().filter(s->s.getV21()>overlimit.getUharm21()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l21)){ - v21++; - } - List l22 = list.stream().filter(s->s.getV22()>overlimit.getUharm22()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l22)){ - v22++; - } - List l23 = list.stream().filter(s->s.getV23()>overlimit.getUharm23()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l23)){ - v23++; - } - List l24 = list.stream().filter(s->s.getV24()>overlimit.getUharm24()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l24)){ - v24++; - } - List l25 = list.stream().filter(s->s.getV25()>overlimit.getUharm25()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l25)){ - v25++; - } - } - //2-25次谐波电流 - for (Instant time:map2.keySet()) { - List list = map2.get(time); - List l2 = list.stream().filter(s->s.getI2()>overlimit.getIharm2()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l2)){ - i2++; - } - List l3 = list.stream().filter(s->s.getI3()>overlimit.getIharm3()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l3)){ - i3++; - } - List l4 = list.stream().filter(s->s.getI4()>overlimit.getIharm4()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l4)){ - i4++; - } - List l5 = list.stream().filter(s->s.getI5()>overlimit.getIharm5()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l5)){ - i5++; - } - List l6 = list.stream().filter(s->s.getI6()>overlimit.getIharm6()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l6)){ - i6++; - } - List l7 = list.stream().filter(s->s.getI7()>overlimit.getIharm7()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l7)){ - i7++; - } - List l8 = list.stream().filter(s->s.getI8()>overlimit.getIharm8()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l8)){ - i8++; - } - List l9 = list.stream().filter(s->s.getI9()>overlimit.getIharm9()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l9)){ - i9++; - } - List l10 = list.stream().filter(s->s.getI10()>overlimit.getIharm10()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l10)){ - i10++; - } - List l11 = list.stream().filter(s->s.getI11()>overlimit.getIharm11()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l11)){ - i11++; - } - List l12 = list.stream().filter(s->s.getI12()>overlimit.getIharm12()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l12)){ - i12++; - } - List l13 = list.stream().filter(s->s.getI13()>overlimit.getIharm13()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l13)){ - i13++; - } - List l14 = list.stream().filter(s->s.getI14()>overlimit.getIharm14()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l14)){ - i14++; - } - List l15 = list.stream().filter(s->s.getI15()>overlimit.getIharm15()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l15)){ - i15++; - } - List l16 = list.stream().filter(s->s.getI16()>overlimit.getIharm16()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l16)){ - i16++; - } - List l17 = list.stream().filter(s->s.getI17()>overlimit.getIharm17()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l17)){ - i17++; - } - List l18 = list.stream().filter(s->s.getI18()>overlimit.getIharm18()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l18)){ - i18++; - } - List l19 = list.stream().filter(s->s.getI19()>overlimit.getIharm19()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l19)){ - i19++; - } - List l20 = list.stream().filter(s->s.getI20()>overlimit.getIharm20()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l20)){ - i20++; - } - List l21 = list.stream().filter(s->s.getI21()>overlimit.getIharm21()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l21)){ - i21++; - } - List l22 = list.stream().filter(s->s.getI22()>overlimit.getIharm22()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l22)){ - i22++; - } - List l23 = list.stream().filter(s->s.getI23()>overlimit.getIharm23()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l23)){ - i23++; - } - List l24 = list.stream().filter(s->s.getI24()>overlimit.getIharm24()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l24)){ - i24++; - } - List l25 = list.stream().filter(s->s.getI25()>overlimit.getIharm25()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l25)){ - i25++; - } - } - //0.5-15.5次间谐波电压含有率 - for (Instant time:map3.keySet()) { - List list3 = map3.get(time); - List l2 = list3.stream().filter(s->s.getV1()>overlimit.getInuharm1()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l2)){ - uHarm1++; - } - List l3 = list3.stream().filter(s->s.getV2()>overlimit.getInuharm2()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l3)){ - uHarm2++; - } - List l4 = list3.stream().filter(s->s.getV3()>overlimit.getInuharm3()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l4)){ - uHarm3++; - } - List l5 = list3.stream().filter(s->s.getV4()>overlimit.getInuharm4()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l5)){ - uHarm4++; - } - List l6 = list3.stream().filter(s->s.getV5()>overlimit.getInuharm5()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l6)){ - uHarm5++; - } - List l7 = list3.stream().filter(s->s.getV6()>overlimit.getInuharm6()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l7)){ - uHarm6++; - } - List l8 = list3.stream().filter(s->s.getV7()>overlimit.getInuharm7()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l8)){ - uHarm7++; - } - List l9 = list3.stream().filter(s->s.getV8()>overlimit.getInuharm8()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l9)){ - uHarm8++; - } - List l10 = list3.stream().filter(s->s.getV9()>overlimit.getInuharm9()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l10)){ - uHarm9++; - } - List l11 = list3.stream().filter(s->s.getV10()>overlimit.getInuharm10()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l11)){ - uHarm10++; - } - List l12 = list3.stream().filter(s->s.getV11()>overlimit.getInuharm11()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l12)){ - uHarm11++; - } - List l13 = list3.stream().filter(s->s.getV12()>overlimit.getInuharm12()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l13)){ - uHarm12++; - } - List l14 = list3.stream().filter(s->s.getV13()>overlimit.getInuharm13()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l14)){ - uHarm13++; - } - List l15 = list3.stream().filter(s->s.getV14()>overlimit.getInuharm14()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l15)){ - uHarm14++; - } - List l16 = list3.stream().filter(s->s.getV15()>overlimit.getInuharm15()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l16)){ - uHarm15++; - } - List l17 = list3.stream().filter(s->s.getV16()>overlimit.getInuharm16()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l17)){ - uHarm16++; - } - } - //电压总谐波畸变率 - for (Instant time:map4.keySet()) { - List list = map4.get(time); - List l = list.stream().filter(s->s.getVThd()>overlimit.getUaberrance()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l)){ - thd++; - } - } - //三相电压不平衡度 - for (Instant time:map5.keySet()) { - List list = map5.get(time); - List l = list.stream().filter(s->s.getVUnbalance()>overlimit.getUbalance()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l)){ - uAberrance++; - } - } - //负序电流 - for (Instant time:map6.keySet()) { - List list = map6.get(time); - List l = list.stream().filter(s->s.getINeg()>overlimit.getINeg()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l)){ - iNeg++; - } - } - //频率偏差 - for (Instant time:map7.keySet()) { - List list = map7.get(time); - List l = list.stream().filter(s->s.getFreqDev()>overlimit.getFreqDev()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l)){ - freqDev++; - } - } - //电压上偏差、电压下偏差 - for (Instant time:map8.keySet()) { - List list = map8.get(time); - Map> devMap = list.stream().collect(Collectors.groupingBy(DataV::getValueType)); - List maxList = devMap.get("MAX"); - List minList = devMap.get("MIN"); - List l1 = maxList.stream().filter(s->s.getVuDev()>overlimit.getVoltageDev()).collect(Collectors.toList()); - List l2 = minList.stream().filter(s->s.getVlDev()>overlimit.getUvoltageDev()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l1) || !CollectionUtils.isEmpty(l2)){ - uDev++; - } - } - //长时间闪变 - for (Instant time:map9.keySet()) { - List list = map9.get(time); - List l = list.stream().filter(s->s.getPlt()>overlimit.getFlicker()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l)){ - flicker++; - } - } - limitRate.setLineId(lineId); - limitRate.setPhasicType("T"); - limitRate.setAllTime(allTime); - limitRate.setFlickerAllTime(flickerAllTime); - limitRate.setUAberranceOverTime(uAberrance); - limitRate.setINegOverTime(iNeg); - limitRate.setFreqDevOverTime(freqDev); - limitRate.setUHarm2OverTime(v2); - limitRate.setUHarm3OverTime(v3); - limitRate.setUHarm4OverTime(v4); - limitRate.setUHarm5OverTime(v5); - limitRate.setUHarm6OverTime(v6); - limitRate.setUHarm7OverTime(v7); - limitRate.setUHarm8OverTime(v8); - limitRate.setUHarm9OverTime(v9); - limitRate.setUHarm10OverTime(v10); - limitRate.setUHarm11OverTime(v11); - limitRate.setUHarm12OverTime(v12); - limitRate.setUHarm13OverTime(v13); - limitRate.setUHarm14OverTime(v14); - limitRate.setUHarm15OverTime(v15); - limitRate.setUHarm16OverTime(v16); - limitRate.setUHarm17OverTime(v17); - limitRate.setUHarm18OverTime(v18); - limitRate.setUHarm19OverTime(v19); - limitRate.setUHarm20OverTime(v20); - limitRate.setUHarm21OverTime(v21); - limitRate.setUHarm22OverTime(v22); - limitRate.setUHarm23OverTime(v23); - limitRate.setUHarm24OverTime(v24); - limitRate.setUHarm25OverTime(v25); - limitRate.setIHarm2OverTime(i2); - limitRate.setIHarm3OverTime(i3); - limitRate.setIHarm4OverTime(i4); - limitRate.setIHarm5OverTime(i5); - limitRate.setIHarm6OverTime(i6); - limitRate.setIHarm7OverTime(i7); - limitRate.setIHarm8OverTime(i8); - limitRate.setIHarm9OverTime(i9); - limitRate.setIHarm10OverTime(i10); - limitRate.setIHarm11OverTime(i11); - limitRate.setIHarm12OverTime(i12); - limitRate.setIHarm13OverTime(i13); - limitRate.setIHarm14OverTime(i14); - limitRate.setIHarm15OverTime(i15); - limitRate.setIHarm16OverTime(i16); - limitRate.setIHarm17OverTime(i17); - limitRate.setIHarm18OverTime(i18); - limitRate.setIHarm19OverTime(i19); - limitRate.setIHarm20OverTime(i20); - limitRate.setIHarm21OverTime(i21); - limitRate.setIHarm22OverTime(i22); - limitRate.setIHarm23OverTime(i23); - limitRate.setIHarm24OverTime(i24); - limitRate.setIHarm25OverTime(i25); - limitRate.setInuHarm1OverTime(uHarm1); - limitRate.setInuHarm2OverTime(uHarm2); - limitRate.setInuHarm3OverTime(uHarm3); - limitRate.setInuHarm4OverTime(uHarm4); - limitRate.setInuHarm5OverTime(uHarm5); - limitRate.setInuHarm6OverTime(uHarm6); - limitRate.setInuHarm7OverTime(uHarm7); - limitRate.setInuHarm8OverTime(uHarm8); - limitRate.setInuHarm9OverTime(uHarm9); - limitRate.setInuHarm10OverTime(uHarm10); - limitRate.setInuHarm11OverTime(uHarm11); - limitRate.setInuHarm12OverTime(uHarm12); - limitRate.setInuHarm13OverTime(uHarm13); - limitRate.setInuHarm14OverTime(uHarm14); - limitRate.setInuHarm15OverTime(uHarm15); - limitRate.setInuHarm16OverTime(uHarm16); - limitRate.setUBalanceOverTime(thd); - limitRate.setVoltageDevOverTime(uDev); - limitRate.setFlickerOverTime(flicker); - return limitRate; - } - - */ -/** - * 功能描述:获取influxDB -> data_v -> 总计算次数(用data_v中phasic_type=A,quality_flag=0来参与统计) - * @author xy - * @param line 监测点集合 - * @param startTime 开始时间 - * @param endTime 结束时间 - * @date 2022/5/23 10:51 - * @return - *//* - - public Map> getAllTime(List line, String startTime, String endTime){ - Map> map = new HashMap<>(); - StringBuilder stringBuilder = new StringBuilder(); - stringBuilder.append("("); - for (int i = 0; i < line.size(); i++) { - if (line.size() - i != 1) { - stringBuilder.append("line_id='").append(line.get(i)).append("' or "); - } else { - stringBuilder.append("line_id='").append(line.get(i)).append("') and "); - } - } - stringBuilder.append(InfluxDBPublicParam.TIME + " >= '").append(startTime).append("' and ").append(InfluxDBPublicParam.TIME).append(" <= '").append(endTime).append("' and phasic_type = 'A' and value_type = 'AVG' and quality_flag = '0' group by line_id ").append(InfluxDBPublicParam.TIME_ZONE); - String sql = "SELECT count(freq) AS all_time FROM "+ InfluxDBPublicParam.DATA_V+" where " + stringBuilder; - QueryResult sqlResult = influxDbUtils.query(sql); - InfluxDBResultMapper resultMapper = new InfluxDBResultMapper(); - List list = resultMapper.toPOJO(sqlResult, DataV.class); - if (!CollectionUtils.isEmpty(list)){ - map = list.stream().collect(Collectors.groupingBy(DataV::getLineId)); - } - return map; - } - - */ -/** - * 功能描述:获取influxDB ->data_plt -> 闪变总次数(用data_plt中phasic_type=A,quality_flag=0来参与统计) - * @author xy - * @param line 监测点集合 - * @param startTime 开始时间 - * @param endTime 结束时间 - * @date 2022/5/23 10:51 - * @return - *//* - - public Map> getFlickerAllTime(List line, String startTime, String endTime){ - Map> map = new HashMap<>(); - StringBuilder stringBuilder = new StringBuilder(); - stringBuilder.append("("); - for (int i = 0; i < line.size(); i++) { - if (line.size() - i != 1) { - stringBuilder.append("line_id='").append(line.get(i)).append("' or "); - } else { - stringBuilder.append("line_id='").append(line.get(i)).append("') and "); - } - } - stringBuilder.append(InfluxDBPublicParam.TIME + " >= '").append(startTime).append("' and ").append(InfluxDBPublicParam.TIME).append(" <= '").append(endTime).append("' and phasic_type = 'A' and quality_flag = '0' group by line_id ").append(InfluxDBPublicParam.TIME_ZONE); - String sql = "SELECT count(plt) AS flicker_all_time FROM "+ InfluxDBPublicParam.DATA_PLT+" where " + stringBuilder; - QueryResult sqlResult = influxDbUtils.query(sql); - InfluxDBResultMapper resultMapper = new InfluxDBResultMapper(); - List list = resultMapper.toPOJO(sqlResult, DataPlt.class); - if (!CollectionUtils.isEmpty(list)){ - map = list.stream().collect(Collectors.groupingBy(DataPlt::getLineId)); - } - return map; - } - - */ -/** - * 功能描述:获取influxDB -> data_harmrate_v -> 2-25次谐波电压含有率 -> 日95%概率值 - * @author xy - * @param line 监测点集合 - * @param startTime 开始时间 - * @param endTime 结束时间 - * @date 2022/5/23 10:51 - * @return - *//* - - public Map> getDataHarmRateV(List line, String startTime, String endTime){ - Map> map = new HashMap<>(); - StringBuilder stringBuilder = new StringBuilder(); - stringBuilder.append("("); - for (int i = 0; i < line.size(); i++) { - if (line.size() - i != 1) { - stringBuilder.append("line_id='").append(line.get(i)).append("' or "); - } else { - stringBuilder.append("line_id='").append(line.get(i)).append("') and "); - } - } - stringBuilder.append(InfluxDBPublicParam.TIME + " >= '").append(startTime).append("' and ").append(InfluxDBPublicParam.TIME).append(" <= '").append(endTime).append("' and (phasic_type = 'A' or phasic_type = 'B' or phasic_type = 'C') and value_type = 'CP95' and quality_flag = '0' ").append(InfluxDBPublicParam.TIME_ZONE); - String sql = "SELECT * FROM "+ InfluxDBPublicParam.DATA_HARM_RATE_V+" WHERE " + stringBuilder; - QueryResult sqlResult = influxDbUtils.query(sql); - InfluxDBResultMapper resultMapper = new InfluxDBResultMapper(); - List list = resultMapper.toPOJO(sqlResult, DataHarmRateV.class); - if (!CollectionUtils.isEmpty(list)){ - map = list.stream().collect(Collectors.groupingBy(DataHarmRateV::getLineId)); - } - return map; - } - - */ -/** - * 功能描述:获取influxDB -> data_i -> 2-25次谐波电流 -> 日95%概率值 - * @author xy - * @param line 监测点集合 - * @param startTime 开始时间 - * @param endTime 结束时间 - * @date 2022/5/23 10:51 - * @return - *//* - - public Map> getDataI(List line, String startTime, String endTime){ - Map> map = new HashMap<>(); - StringBuilder stringBuilder = new StringBuilder(); - stringBuilder.append("("); - for (int i = 0; i < line.size(); i++) { - if (line.size() - i != 1) { - stringBuilder.append("line_id='").append(line.get(i)).append("' or "); - } else { - stringBuilder.append("line_id='").append(line.get(i)).append("') and "); - } - } - stringBuilder.append(InfluxDBPublicParam.TIME + " >= '").append(startTime).append("' and ").append(InfluxDBPublicParam.TIME).append(" <= '").append(endTime).append("' and (phasic_type = 'A' or phasic_type = 'B' or phasic_type = 'C') and value_type = 'CP95' and quality_flag = '0' ").append(InfluxDBPublicParam.TIME_ZONE); - String sql = "SELECT * FROM "+ InfluxDBPublicParam.DATA_I+" WHERE " + stringBuilder; - QueryResult sqlResult = influxDbUtils.query(sql); - InfluxDBResultMapper resultMapper = new InfluxDBResultMapper(); - List list = resultMapper.toPOJO(sqlResult, DataI.class); - if (!CollectionUtils.isEmpty(list)){ - map = list.stream().collect(Collectors.groupingBy(DataI::getLineId)); - } - return map; - } - - */ -/** - * 功能描述:获取influxDB -> data_inharm_v -> 0.5-15.5次间谐波电压含有率 -> 日95%概率值 - * @author xy - * @param line 监测点集合 - * @param startTime 开始时间 - * @param endTime 结束时间 - * @date 2022/5/23 10:51 - * @return - *//* - - public Map> getDataInHarmV(List line, String startTime, String endTime){ - Map> map = new HashMap<>(); - StringBuilder stringBuilder = new StringBuilder(); - stringBuilder.append("("); - for (int i = 0; i < line.size(); i++) { - if (line.size() - i != 1) { - stringBuilder.append("line_id='").append(line.get(i)).append("' or "); - } else { - stringBuilder.append("line_id='").append(line.get(i)).append("') and "); - } - } - stringBuilder.append(InfluxDBPublicParam.TIME + " >= '").append(startTime).append("' and ").append(InfluxDBPublicParam.TIME).append(" <= '").append(endTime).append("' and (phasic_type = 'A' or phasic_type = 'B' or phasic_type = 'C') and value_type = 'CP95' and quality_flag = '0' ").append(InfluxDBPublicParam.TIME_ZONE); - String sql = "SELECT * FROM "+ InfluxDBPublicParam.DATA_IN_HARM_V+" WHERE " + stringBuilder; - QueryResult sqlResult = influxDbUtils.query(sql); - InfluxDBResultMapper resultMapper = new InfluxDBResultMapper(); - List list = resultMapper.toPOJO(sqlResult, DataInHarmV.class); - if (!CollectionUtils.isEmpty(list)){ - map = list.stream().collect(Collectors.groupingBy(DataInHarmV::getLineId)); - } - return map; - } - - */ -/** - * 功能描述:获取influxDB -> data_v -> 电压总谐波畸变率 -> 日95%概率值 - * @author xy - * @param line 监测点集合 - * @param startTime 开始时间 - * @param endTime 结束时间 - * @date 2022/5/23 10:51 - * @return - *//* - - public Map> getDataV(List line, String startTime, String endTime){ - Map> map = new HashMap<>(); - StringBuilder stringBuilder = new StringBuilder(); - stringBuilder.append("("); - for (int i = 0; i < line.size(); i++) { - if (line.size() - i != 1) { - stringBuilder.append("line_id='").append(line.get(i)).append("' or "); - } else { - stringBuilder.append("line_id='").append(line.get(i)).append("') and "); - } - } - stringBuilder.append(InfluxDBPublicParam.TIME + " >= '").append(startTime).append("' and ").append(InfluxDBPublicParam.TIME).append(" <= '").append(endTime).append("' and (phasic_type = 'A' or phasic_type = 'B' or phasic_type = 'C') and value_type = 'CP95' and quality_flag = '0' ").append(InfluxDBPublicParam.TIME_ZONE); - String sql = "SELECT * FROM "+ InfluxDBPublicParam.DATA_V+" WHERE " + stringBuilder; - QueryResult sqlResult = influxDbUtils.query(sql); - InfluxDBResultMapper resultMapper = new InfluxDBResultMapper(); - List list = resultMapper.toPOJO(sqlResult, DataV.class); - if (!CollectionUtils.isEmpty(list)){ - map = list.stream().collect(Collectors.groupingBy(DataV::getLineId)); - } - return map; - } - - - */ -/** - * 功能描述:获取influxDB -> data_v -> 负序电压不平衡度 -> 最大值 && 日95%概率值 - * @author xy - * @param line 监测点集合 - * @param startTime 开始时间 - * @param endTime 结束时间 - * @date 2022/5/23 10:51 - * @return - *//* - - public Map> getDataVUnbalance(List line, String startTime, String endTime){ - Map> map = new HashMap<>(); - StringBuilder stringBuilder = new StringBuilder(); - stringBuilder.append("("); - for (int i = 0; i < line.size(); i++) { - if (line.size() - i != 1) { - stringBuilder.append("line_id='").append(line.get(i)).append("' or "); - } else { - stringBuilder.append("line_id='").append(line.get(i)).append("') and "); - } - } - stringBuilder.append(InfluxDBPublicParam.TIME + " >= '").append(startTime).append("' and ").append(InfluxDBPublicParam.TIME).append(" <= '").append(endTime).append("' and phasic_type = 'T' and (value_type = 'CP95' or value_type = 'MAX') and quality_flag = '0' ").append(InfluxDBPublicParam.TIME_ZONE); - String sql = "SELECT * FROM "+ InfluxDBPublicParam.DATA_V+" WHERE " + stringBuilder; - QueryResult sqlResult = influxDbUtils.query(sql); - InfluxDBResultMapper resultMapper = new InfluxDBResultMapper(); - List list = resultMapper.toPOJO(sqlResult, DataV.class); - if (!CollectionUtils.isEmpty(list)){ - map = list.stream().collect(Collectors.groupingBy(DataV::getLineId)); - } - return map; - } - - */ -/** - * 功能描述:获取influxDB -> data_i -> 负序电流 -> 最大值 && 日95%概率值 - * @author xy - * @param line 监测点集合 - * @param startTime 开始时间 - * @param endTime 结束时间 - * @date 2022/5/23 10:51 - * @return - *//* - - public Map> getDataINeg(List line, String startTime, String endTime){ - Map> map = new HashMap<>(); - StringBuilder stringBuilder = new StringBuilder(); - stringBuilder.append("("); - for (int i = 0; i < line.size(); i++) { - if (line.size() - i != 1) { - stringBuilder.append("line_id='").append(line.get(i)).append("' or "); - } else { - stringBuilder.append("line_id='").append(line.get(i)).append("') and "); - } - } - stringBuilder.append(InfluxDBPublicParam.TIME + " >= '").append(startTime).append("' and ").append(InfluxDBPublicParam.TIME).append(" <= '").append(endTime).append("' and phasic_type = 'T' and (value_type = 'CP95' or value_type = 'MAX') and quality_flag = '0' ").append(InfluxDBPublicParam.TIME_ZONE); - String sql = "SELECT * FROM "+ InfluxDBPublicParam.DATA_I+" WHERE " + stringBuilder; - QueryResult sqlResult = influxDbUtils.query(sql); - InfluxDBResultMapper resultMapper = new InfluxDBResultMapper(); - List list = resultMapper.toPOJO(sqlResult, DataI.class); - if (!CollectionUtils.isEmpty(list)){ - map = list.stream().collect(Collectors.groupingBy(DataI::getLineId)); - } - return map; - } - - */ -/** - * 功能描述:获取influxDB -> data_v -> 频率偏差 -> 最大值 && 最小值 - * @author xy - * @param line 监测点集合 - * @param startTime 开始时间 - * @param endTime 结束时间 - * @date 2022/5/23 10:51 - * @return - *//* - - public Map> getDataVFreq(List line, String startTime, String endTime){ - Map> map = new HashMap<>(); - StringBuilder stringBuilder = new StringBuilder(); - stringBuilder.append("("); - for (int i = 0; i < line.size(); i++) { - if (line.size() - i != 1) { - stringBuilder.append("line_id='").append(line.get(i)).append("' or "); - } else { - stringBuilder.append("line_id='").append(line.get(i)).append("') and "); - } - } - stringBuilder.append(InfluxDBPublicParam.TIME + " >= '").append(startTime).append("' and ").append(InfluxDBPublicParam.TIME).append(" <= '").append(endTime).append("' and phasic_type = 'T' and (value_type = 'MIN' or value_type = 'MAX') and quality_flag = '0' ").append(InfluxDBPublicParam.TIME_ZONE); - String sql = "SELECT * FROM "+ InfluxDBPublicParam.DATA_V+" WHERE " + stringBuilder; - QueryResult sqlResult = influxDbUtils.query(sql); - InfluxDBResultMapper resultMapper = new InfluxDBResultMapper(); - List list = resultMapper.toPOJO(sqlResult, DataV.class); - if (!CollectionUtils.isEmpty(list)){ - map = list.stream().collect(Collectors.groupingBy(DataV::getLineId)); - } - return map; - } - - */ -/** - * 功能描述:获取influxDB -> data_v -> 电压偏差 -> 最大值 && 最小值 - * @author xy - * @param line 监测点集合 - * @param startTime 开始时间 - * @param endTime 结束时间 - * @date 2022/5/23 10:51 - * @return - *//* - - public Map> getDataVDev(List line, String startTime, String endTime){ - Map> map = new HashMap<>(); - StringBuilder stringBuilder = new StringBuilder(); - stringBuilder.append("("); - for (int i = 0; i < line.size(); i++) { - if (line.size() - i != 1) { - stringBuilder.append("line_id='").append(line.get(i)).append("' or "); - } else { - stringBuilder.append("line_id='").append(line.get(i)).append("') and "); - } - } - stringBuilder.append(InfluxDBPublicParam.TIME + " >= '").append(startTime).append("' and ").append(InfluxDBPublicParam.TIME).append(" <= '").append(endTime).append("' and (phasic_type = 'A' or phasic_type = 'B' or phasic_type = 'C') and (value_type = 'MIN' or value_type = 'MAX') and quality_flag = '0' ").append(InfluxDBPublicParam.TIME_ZONE); - String sql = "SELECT * FROM "+ InfluxDBPublicParam.DATA_V+" WHERE " + stringBuilder; - QueryResult sqlResult = influxDbUtils.query(sql); - InfluxDBResultMapper resultMapper = new InfluxDBResultMapper(); - List list = resultMapper.toPOJO(sqlResult, DataV.class); - if (!CollectionUtils.isEmpty(list)){ - map = list.stream().collect(Collectors.groupingBy(DataV::getLineId)); - } - return map; - } - - */ -/** - * 功能描述:获取influxDB -> data_plt -> 长时间闪变 -> 最大值 - * @author xy - * @param line 监测点集合 - * @param startTime 开始时间 - * @param endTime 结束时间 - * @date 2022/5/23 10:51 - * @return - *//* - - public Map> getDataPlt(List line, String startTime, String endTime){ - Map> map = new HashMap<>(); - StringBuilder stringBuilder = new StringBuilder(); - stringBuilder.append("("); - for (int i = 0; i < line.size(); i++) { - if (line.size() - i != 1) { - stringBuilder.append("line_id='").append(line.get(i)).append("' or "); - } else { - stringBuilder.append("line_id='").append(line.get(i)).append("') and "); - } - } - stringBuilder.append(InfluxDBPublicParam.TIME + " >= '").append(startTime).append("' and ").append(InfluxDBPublicParam.TIME).append(" <= '").append(endTime).append("' and (phasic_type = 'A' or phasic_type = 'B' or phasic_type = 'C') and quality_flag = '0' ").append(InfluxDBPublicParam.TIME_ZONE); - String sql = "SELECT * FROM "+ InfluxDBPublicParam.DATA_PLT+" WHERE " + stringBuilder; - QueryResult sqlResult = influxDbUtils.query(sql); - InfluxDBResultMapper resultMapper = new InfluxDBResultMapper(); - List list = resultMapper.toPOJO(sqlResult, DataPlt.class); - if (!CollectionUtils.isEmpty(list)){ - map = list.stream().collect(Collectors.groupingBy(DataPlt::getLineId)); - } - return map; - } - - private void insert(List list, long time){ - List records = new ArrayList<>(); - list.forEach(item->{ - Map tags = new HashMap<>(); - Map fields = new HashMap<>(); - tags.put("line_id",item.getLineId()); - tags.put("phasic_type",item.getPhasicType()); - fields.put("all_time",item.getAllTime()); - fields.put("flicker_all_time",item.getFlickerAllTime()); - fields.put("flicker_overtime",item.getFlickerOverTime()); - fields.put("freq_dev_overtime",item.getFreqDevOverTime()); - fields.put("ubalance_overtime",item.getUBalanceOverTime()); - fields.put("uaberrance_overtime",item.getUAberranceOverTime()); - fields.put("i_neg_overtime",item.getINegOverTime()); - fields.put("voltage_dev_overtime",item.getVoltageDevOverTime()); - fields.put("uharm_2_overtime",item.getUHarm2OverTime()); - fields.put("uharm_3_overtime",item.getUHarm3OverTime()); - fields.put("uharm_4_overtime",item.getUHarm4OverTime()); - fields.put("uharm_5_overtime",item.getUHarm5OverTime()); - fields.put("uharm_6_overtime",item.getUHarm6OverTime()); - fields.put("uharm_7_overtime",item.getUHarm7OverTime()); - fields.put("uharm_8_overtime",item.getUHarm8OverTime()); - fields.put("uharm_9_overtime",item.getUHarm9OverTime()); - fields.put("uharm_10_overtime",item.getUHarm10OverTime()); - fields.put("uharm_11_overtime",item.getUHarm11OverTime()); - fields.put("uharm_12_overtime",item.getUHarm12OverTime()); - fields.put("uharm_13_overtime",item.getUHarm13OverTime()); - fields.put("uharm_14_overtime",item.getUHarm14OverTime()); - fields.put("uharm_15_overtime",item.getUHarm15OverTime()); - fields.put("uharm_16_overtime",item.getUHarm16OverTime()); - fields.put("uharm_17_overtime",item.getUHarm17OverTime()); - fields.put("uharm_18_overtime",item.getUHarm18OverTime()); - fields.put("uharm_19_overtime",item.getUHarm19OverTime()); - fields.put("uharm_20_overtime",item.getUHarm20OverTime()); - fields.put("uharm_21_overtime",item.getUHarm21OverTime()); - fields.put("uharm_22_overtime",item.getUHarm22OverTime()); - fields.put("uharm_23_overtime",item.getUHarm23OverTime()); - fields.put("uharm_24_overtime",item.getUHarm24OverTime()); - fields.put("uharm_25_overtime",item.getUHarm25OverTime()); - fields.put("iharm_2_overtime",item.getIHarm2OverTime()); - fields.put("iharm_3_overtime",item.getIHarm3OverTime()); - fields.put("iharm_4_overtime",item.getIHarm4OverTime()); - fields.put("iharm_5_overtime",item.getIHarm5OverTime()); - fields.put("iharm_6_overtime",item.getIHarm6OverTime()); - fields.put("iharm_7_overtime",item.getIHarm7OverTime()); - fields.put("iharm_8_overtime",item.getIHarm8OverTime()); - fields.put("iharm_9_overtime",item.getIHarm9OverTime()); - fields.put("iharm_10_overtime",item.getIHarm10OverTime()); - fields.put("iharm_11_overtime",item.getIHarm11OverTime()); - fields.put("iharm_12_overtime",item.getIHarm12OverTime()); - fields.put("iharm_13_overtime",item.getIHarm13OverTime()); - fields.put("iharm_14_overtime",item.getIHarm14OverTime()); - fields.put("iharm_15_overtime",item.getIHarm15OverTime()); - fields.put("iharm_16_overtime",item.getIHarm16OverTime()); - fields.put("iharm_17_overtime",item.getIHarm17OverTime()); - fields.put("iharm_18_overtime",item.getIHarm18OverTime()); - fields.put("iharm_19_overtime",item.getIHarm19OverTime()); - fields.put("iharm_20_overtime",item.getIHarm20OverTime()); - fields.put("iharm_21_overtime",item.getIHarm21OverTime()); - fields.put("iharm_22_overtime",item.getIHarm22OverTime()); - fields.put("iharm_23_overtime",item.getIHarm23OverTime()); - fields.put("iharm_24_overtime",item.getIHarm24OverTime()); - fields.put("iharm_25_overtime",item.getIHarm25OverTime()); - fields.put("inuharm_1_overtime",item.getInuHarm1OverTime()); - fields.put("inuharm_2_overtime",item.getInuHarm2OverTime()); - fields.put("inuharm_3_overtime",item.getInuHarm3OverTime()); - fields.put("inuharm_4_overtime",item.getInuHarm4OverTime()); - fields.put("inuharm_5_overtime",item.getInuHarm5OverTime()); - fields.put("inuharm_6_overtime",item.getInuHarm6OverTime()); - fields.put("inuharm_7_overtime",item.getInuHarm7OverTime()); - fields.put("inuharm_8_overtime",item.getInuHarm8OverTime()); - fields.put("inuharm_9_overtime",item.getInuHarm9OverTime()); - fields.put("inuharm_10_overtime",item.getInuHarm10OverTime()); - fields.put("inuharm_11_overtime",item.getInuHarm11OverTime()); - fields.put("inuharm_12_overtime",item.getInuHarm12OverTime()); - fields.put("inuharm_13_overtime",item.getInuHarm13OverTime()); - fields.put("inuharm_14_overtime",item.getInuHarm14OverTime()); - fields.put("inuharm_15_overtime",item.getInuHarm15OverTime()); - fields.put("inuharm_16_overtime",item.getInuHarm16OverTime()); - Point point = influxDbUtils.pointBuilder(InfluxDBPublicParam.LIMIT_RATE, time, TimeUnit.MILLISECONDS, tags, fields); - BatchPoints batchPoints = BatchPoints.database(influxDbConfig.getDatabase()).tag(InfluxDBPublicParam.LINE_ID, item.getLineId()).tag(InfluxDBPublicParam.PHASIC_TYPE,item.getPhasicType()).retentionPolicy("").consistency(InfluxDB.ConsistencyLevel.ALL).build(); - batchPoints.point(point); - records.add(batchPoints.lineProtocol()); - }); - influxDbUtils.batchInsert(influxDbConfig.getDatabase(),"", InfluxDB.ConsistencyLevel.ALL, records); - } -} -*/ diff --git a/pqs-job/job-executor/src/main/java/com/njcn/executor/handler/LimitTargetJob.java b/pqs-job/job-executor/src/main/java/com/njcn/executor/handler/LimitTargetJob.java deleted file mode 100644 index 18c24592b..000000000 --- a/pqs-job/job-executor/src/main/java/com/njcn/executor/handler/LimitTargetJob.java +++ /dev/null @@ -1,1015 +0,0 @@ -/* -package com.njcn.executor.handler; - -import com.njcn.common.pojo.constant.PatternRegex; -import com.njcn.device.pq.api.LineFeignClient; -import com.njcn.device.pq.pojo.dto.PollutionParamDTO; -import com.njcn.device.pq.pojo.po.Overlimit; -import com.njcn.executor.pojo.vo.*; -import com.njcn.harmonic.pojo.po.LimitTarget; -import com.njcn.influxdb.config.InfluxDbConfig; -import com.njcn.influxdb.param.InfluxDBPublicParam; -import com.njcn.influxdb.utils.InfluxDbUtils; -import com.xxl.job.core.context.XxlJobHelper; -import com.xxl.job.core.handler.annotation.XxlJob; -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.stereotype.Component; -import org.springframework.util.CollectionUtils; -import org.springframework.util.StringUtils; - -import java.text.ParseException; -import java.text.SimpleDateFormat; -import java.util.*; -import java.util.concurrent.TimeUnit; -import java.util.regex.Pattern; -import java.util.stream.Collectors; - -*/ -/** - * 类的介绍: - * - * @author xuyang - * @version 1.0.0 - * @createTime 2022/5/17 14:34 - *//* - -@Slf4j -@Component -@AllArgsConstructor -public class LimitTargetJob { - - private final InfluxDbUtils influxDbUtils; - - private final InfluxDbConfig influxDbConfig; - - private final LineFeignClient lineFeignClient; - - @XxlJob("limitTargetJobHandler") - public void getLimitTarget() throws ParseException { - List list = new ArrayList<>(),paramList = new ArrayList<>();; - SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); - Calendar calendar = Calendar.getInstance(); - calendar.set(calendar.get(Calendar.YEAR), calendar.get(Calendar.MONTH), calendar.get(Calendar.DAY_OF_MONTH)-1, 0, 0, 0); - calendar.set(Calendar.MILLISECOND, 0); - Calendar calendar2 = Calendar.getInstance(); - calendar2.set(calendar2.get(Calendar.YEAR), calendar2.get(Calendar.MONTH), calendar2.get(Calendar.DAY_OF_MONTH)-1, 23, 59, 59); - calendar2.set(Calendar.MILLISECOND, 0); - String startTime = format.format(calendar.getTime()); - String endTime = format.format(calendar2.getTime()); - String command = XxlJobHelper.getJobParam(); - if (!StringUtils.isEmpty(command)){ - paramList = Arrays.asList(command.split(",")); - startTime = paramList.get(0); - endTime = paramList.get(1); - list = paramList.subList(2,paramList.size()); - if (CollectionUtils.isEmpty(list)){ - log.info("补招未传入监测点,默认使用系统查询的监测点"); - list = lineFeignClient.getLineList().getData(); - } - boolean s1 = Pattern.matches(PatternRegex.TIME_FORMAT,startTime); - boolean e1 = Pattern.matches(PatternRegex.TIME_FORMAT,endTime); - if (!s1 || !e1){ - log.error("补招时间格式错误"); - return; - } else { - startTime = startTime + " 00:00:00"; - endTime = endTime + " 23:59:59"; - } - } else { - list = lineFeignClient.getLineList().getData(); - } - long diff,diffDays,a,b = 0; - Date d1 = format.parse(startTime); - Date d2 = format.parse(endTime); - diff = d2.getTime() - d1.getTime(); - diffDays = diff / (24 * 60 * 60 * 1000-1000); - int days = (int) diffDays; - if (!CollectionUtils.isEmpty(list)){ - Map> overLimitMap = new HashMap<>(); - PollutionParamDTO pollutionParamDTO = new PollutionParamDTO(); - pollutionParamDTO.setLineList(list); - List overLimitList = lineFeignClient.getOverLimitByList(pollutionParamDTO).getData(); - if (!CollectionUtils.isEmpty(overLimitList)){ - overLimitMap = overLimitList.stream().collect(Collectors.groupingBy(Overlimit::getId)); - } - for (int i = 1; i <= days; i++) { - a = d1.getTime() + (long)(i-1)*(24 * 60 * 60) * 1000; - b = d1.getTime() + (long)i*(24 * 60 * 60) * 1000-1000; - startTime = format.format(a); - endTime = format.format(b); - Map> map1 = getAllTime(list,startTime,endTime); - Map> map2 = getFlickerAllTime(list,startTime,endTime); - Map> map3 = getDayHarmrateV(list,startTime,endTime); - Map> map4 = getDayI(list,startTime,endTime); - Map> map5 = getDayInharmV(list,startTime,endTime); - Map> map6 = getDayV(list,startTime,endTime); - Map> map7 = getDayVUnbalance(list,startTime,endTime); - Map> map8 = getDayINeg(list,startTime,endTime); - Map> map9 = getDayVFreq(list,startTime,endTime); - Map> map10 = getDayVDev(list,startTime,endTime); - Map> map11 = getDayPlt(list,startTime,endTime); - List result = getData(overLimitMap,map1,map2,map3,map4,map5,map6,map7,map8,map9,map10,map11); - //入库 - if (!CollectionUtils.isEmpty(result)){ - insert(result,a); - } - } - } - } - - - */ -/** - * 组装T项数据 - *//* - - private List getData(Map> limitMap, Map> map1, Map> map2, Map> map3,Map> map4,Map> map5,Map> map6,Map> map7,Map> map8,Map> map9,Map> map10,Map> map11){ - List result = new ArrayList<>(); - for (String item:limitMap.keySet()){ - Integer allTime = 0; - Integer flickerAllTime = 0; - Overlimit overlimit = limitMap.get(item).get(0); - if (!CollectionUtils.isEmpty(map1.get(item))){ - allTime = map1.get(item).get(0).getAllTime(); - if (allTime > 0){ - allTime = 1; - } - } - if (!CollectionUtils.isEmpty(map2.get(item))){ - flickerAllTime = map2.get(item).get(0).getFlickerAllTime(); - if (flickerAllTime > 0){ - flickerAllTime = 1; - } - } - List list1 = map3.get(item); - List list2 = map4.get(item); - List list3 = map5.get(item); - List list4 = map6.get(item); - List list5 = map7.get(item); - List list6 = map8.get(item); - List list7 = map9.get(item); - List list8 = map10.get(item); - List list9 = map11.get(item); - LimitTarget t = limitTargetDataT(overlimit,allTime,flickerAllTime,item,list1,list2,list3,list4,list5,list6,list7,list8,list9); - result.add(t); - }; - return result; - } - - */ -/** - * T项指标统计 - *//* - - public LimitTarget limitTargetDataT(Overlimit overlimit, Integer allTime, Integer flickerAllTime, String lineId, List list1, List list2, List list3 ,List list4 ,List list5, List list6, List list7, List list8, List list9){ - LimitTarget limitTarget = new LimitTarget(); - int v2 = 0,v3 = 0,v4 = 0,v5 = 0,v6 = 0,v7 = 0,v8 = 0,v9 = 0,v10 = 0,v11 = 0,v12 = 0,v13 = 0,v14 = 0,v15 = 0,v16 = 0,v17 = 0,v18 = 0,v19 = 0,v20 = 0,v21 = 0,v22 = 0,v23 = 0,v24 = 0,v25 = 0; - int i2 = 0,i3 = 0,i4 = 0,i5 = 0,i6 = 0,i7 = 0,i8 = 0,i9 = 0,i10 = 0,i11 = 0,i12 = 0,i13 = 0,i14 = 0,i15 = 0,i16 = 0,i17 = 0,i18 = 0,i19 = 0,i20 = 0,i21 = 0,i22 = 0,i23 = 0,i24 = 0,i25 = 0; - int uHarm1 = 0,uHarm2 = 0,uHarm3 = 0,uHarm4 = 0,uHarm5 = 0,uHarm6 = 0,uHarm7 = 0,uHarm8 = 0,uHarm9 = 0,uHarm10 = 0,uHarm11 = 0,uHarm12 = 0,uHarm13 = 0,uHarm14 = 0,uHarm15 = 0,uHarm16 = 0; - int thd = 0,uDev = 0,flicker = 0,freqDev = 0,uAberrance = 0,iNeg = 0; - //2-25次谐波电压含有率 - if (!CollectionUtils.isEmpty(list1)){ - List l2 = list1.stream().filter(s->s.getV2()>overlimit.getUharm2()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l2)){ - v2 = 1; - } - List l3 = list1.stream().filter(s->s.getV3()>overlimit.getUharm3()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l3)){ - v3 = 1; - } - List l4 = list1.stream().filter(s->s.getV4()>overlimit.getUharm4()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l4)){ - v4 = 1; - } - List l5 = list1.stream().filter(s->s.getV5()>overlimit.getUharm5()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l5)){ - v5 = 1; - } - List l6 = list1.stream().filter(s->s.getV6()>overlimit.getUharm6()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l6)){ - v6 = 1; - } - List l7 = list1.stream().filter(s->s.getV7()>overlimit.getUharm7()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l7)){ - v7 = 1; - } - List l8 = list1.stream().filter(s->s.getV8()>overlimit.getUharm8()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l8)){ - v8 = 1; - } - List l9 = list1.stream().filter(s->s.getV9()>overlimit.getUharm9()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l9)){ - v9 = 1; - } - List l10 = list1.stream().filter(s->s.getV10()>overlimit.getUharm10()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l10)){ - v10 = 1; - } - List l11 = list1.stream().filter(s->s.getV11()>overlimit.getUharm11()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l11)){ - v11 = 1; - } - List l12 = list1.stream().filter(s->s.getV12()>overlimit.getUharm12()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l12)){ - v12 = 1; - } - List l13 = list1.stream().filter(s->s.getV13()>overlimit.getUharm13()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l13)){ - v13 = 1; - } - List l14 = list1.stream().filter(s->s.getV14()>overlimit.getUharm14()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l14)){ - v14 = 1; - } - List l15 = list1.stream().filter(s->s.getV15()>overlimit.getUharm15()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l15)){ - v15 = 1; - } - List l16 = list1.stream().filter(s->s.getV16()>overlimit.getUharm16()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l16)){ - v16 = 1; - } - List l17 = list1.stream().filter(s->s.getV17()>overlimit.getUharm17()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l17)){ - v17 = 1; - } - List l18 = list1.stream().filter(s->s.getV18()>overlimit.getUharm18()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l18)){ - v18 = 1; - } - List l19 = list1.stream().filter(s->s.getV19()>overlimit.getUharm19()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l19)){ - v19 = 1; - } - List l20 = list1.stream().filter(s->s.getV20()>overlimit.getUharm20()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l20)){ - v20 = 1; - } - List l21 = list1.stream().filter(s->s.getV21()>overlimit.getUharm21()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l21)){ - v21 = 1; - } - List l22 = list1.stream().filter(s->s.getV22()>overlimit.getUharm22()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l22)){ - v22 = 1; - } - List l23 = list1.stream().filter(s->s.getV23()>overlimit.getUharm23()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l23)){ - v23 = 1; - } - List l24 = list1.stream().filter(s->s.getV24()>overlimit.getUharm24()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l24)){ - v24 = 1; - } - List l25 = list1.stream().filter(s->s.getV25()>overlimit.getUharm25()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l25)){ - v25 = 1; - } - } - //2-25次谐波电流 - if (!CollectionUtils.isEmpty(list2)){ - List l2 = list2.stream().filter(s->s.getI2()>overlimit.getIharm2()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l2)){ - i2 = 1; - } - List l3 = list2.stream().filter(s->s.getI3()>overlimit.getIharm3()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l3)){ - i3 = 1; - } - List l4 = list2.stream().filter(s->s.getI4()>overlimit.getIharm4()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l4)){ - i4 = 1; - } - List l5 = list2.stream().filter(s->s.getI5()>overlimit.getIharm5()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l5)){ - i5 = 1; - } - List l6 = list2.stream().filter(s->s.getI6()>overlimit.getIharm6()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l6)){ - i6 = 1; - } - List l7 = list2.stream().filter(s->s.getI7()>overlimit.getIharm7()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l7)){ - i7 = 1; - } - List l8 = list2.stream().filter(s->s.getI8()>overlimit.getIharm8()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l8)){ - i8 = 1; - } - List l9 = list2.stream().filter(s->s.getI9()>overlimit.getIharm9()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l9)){ - i9 = 1; - } - List l10 = list2.stream().filter(s->s.getI10()>overlimit.getIharm10()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l10)){ - i10 = 1; - } - List l11 = list2.stream().filter(s->s.getI11()>overlimit.getIharm11()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l11)){ - i11 = 1; - } - List l12 = list2.stream().filter(s->s.getI12()>overlimit.getIharm12()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l12)){ - i12 = 1; - } - List l13 = list2.stream().filter(s->s.getI13()>overlimit.getIharm13()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l13)){ - i13 = 1; - } - List l14 = list2.stream().filter(s->s.getI14()>overlimit.getIharm14()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l14)){ - i14 = 1; - } - List l15 = list2.stream().filter(s->s.getI15()>overlimit.getIharm15()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l15)){ - i15 = 1; - } - List l16 = list2.stream().filter(s->s.getI16()>overlimit.getIharm16()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l16)){ - i16 = 1; - } - List l17 = list2.stream().filter(s->s.getI17()>overlimit.getIharm17()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l17)){ - i17 = 1; - } - List l18 = list2.stream().filter(s->s.getI18()>overlimit.getIharm18()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l18)){ - i18 = 1; - } - List l19 = list2.stream().filter(s->s.getI19()>overlimit.getIharm19()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l19)){ - i19 = 1; - } - List l20 = list2.stream().filter(s->s.getI20()>overlimit.getIharm20()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l20)){ - i20 = 1; - } - List l21 = list2.stream().filter(s->s.getI21()>overlimit.getIharm21()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l21)){ - i21 = 1; - } - List l22 = list2.stream().filter(s->s.getI22()>overlimit.getIharm22()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l22)){ - i22 = 1; - } - List l23 = list2.stream().filter(s->s.getI23()>overlimit.getIharm23()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l23)){ - i23 = 1; - } - List l24 = list2.stream().filter(s->s.getI24()>overlimit.getIharm24()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l24)){ - i24 = 1; - } - List l25 = list2.stream().filter(s->s.getI25()>overlimit.getIharm25()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l25)){ - i25 = 1; - } - } - //0.5-15.5次间谐波电压含有率 - if (!CollectionUtils.isEmpty(list3)){ - List l2 = list3.stream().filter(s->s.getV1()>overlimit.getInuharm1()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l2)){ - uHarm1 = 1; - } - List l3 = list3.stream().filter(s->s.getV2()>overlimit.getInuharm2()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l3)){ - uHarm2 = 1; - } - List l4 = list3.stream().filter(s->s.getV3()>overlimit.getInuharm3()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l4)){ - uHarm3 = 1; - } - List l5 = list3.stream().filter(s->s.getV4()>overlimit.getInuharm4()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l5)){ - uHarm4 = 1; - } - List l6 = list3.stream().filter(s->s.getV5()>overlimit.getInuharm5()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l6)){ - uHarm5 = 1; - } - List l7 = list3.stream().filter(s->s.getV6()>overlimit.getInuharm6()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l7)){ - uHarm6 = 1; - } - List l8 = list3.stream().filter(s->s.getV7()>overlimit.getInuharm7()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l8)){ - uHarm7 = 1; - } - List l9 = list3.stream().filter(s->s.getV8()>overlimit.getInuharm8()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l9)){ - uHarm8 = 1; - } - List l10 = list3.stream().filter(s->s.getV9()>overlimit.getInuharm9()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l10)){ - uHarm9 = 1; - } - List l11 = list3.stream().filter(s->s.getV10()>overlimit.getInuharm10()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l11)){ - uHarm10 = 1; - } - List l12 = list3.stream().filter(s->s.getV11()>overlimit.getInuharm11()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l12)){ - uHarm11 = 1; - } - List l13 = list3.stream().filter(s->s.getV12()>overlimit.getInuharm12()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l13)){ - uHarm12 = 1; - } - List l14 = list3.stream().filter(s->s.getV13()>overlimit.getInuharm13()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l14)){ - uHarm13 = 1; - } - List l15 = list3.stream().filter(s->s.getV14()>overlimit.getInuharm14()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l15)){ - uHarm14 = 1; - } - List l16 = list3.stream().filter(s->s.getV15()>overlimit.getInuharm15()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l16)){ - uHarm15 = 1; - } - List l17 = list3.stream().filter(s->s.getV16()>overlimit.getInuharm16()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l17)){ - uHarm16 = 1; - } - } - //电压总谐波畸变率 - if (!CollectionUtils.isEmpty(list4)){ - List l = list4.stream().filter(s->s.getVThd()>overlimit.getUaberrance()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l)){ - thd = 1; - } - } - //三相电压不平衡度 - if (!CollectionUtils.isEmpty(list5)){ - List l = list5.stream().filter(s->s.getVUnbalance()>overlimit.getUbalance()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l)){ - uAberrance = 1; - } - } - //负序电流 - if (!CollectionUtils.isEmpty(list6)){ - List l = list6.stream().filter(s->s.getINeg()>overlimit.getINeg()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l)){ - iNeg = 1; - } - } - //频率偏差 - if (!CollectionUtils.isEmpty(list7)){ - List l = list7.stream().filter(s->s.getFreqDev()>overlimit.getFreqDev()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l)){ - freqDev = 1; - } - } - //电压上偏差、电压下偏差 - if (!CollectionUtils.isEmpty(list8)){ - Map> devMap = list8.stream().collect(Collectors.groupingBy(DayV::getValueType)); - List maxList = devMap.get("MAX"); - List minList = devMap.get("MIN"); - List l1 = maxList.stream().filter(s->s.getVuDev()>overlimit.getVoltageDev()).collect(Collectors.toList()); - List l2 = minList.stream().filter(s->s.getVlDev()>overlimit.getUvoltageDev()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l1) || !CollectionUtils.isEmpty(l2)){ - uDev = 1; - } - } - //长时间闪变 - if (!CollectionUtils.isEmpty(list9)){ - List l = list9.stream().filter(s->s.getPlt()>overlimit.getFlicker()).collect(Collectors.toList()); - if (!CollectionUtils.isEmpty(l)){ - flicker = 1; - } - } - limitTarget.setLineId(lineId); - limitTarget.setPhasicType("T"); - limitTarget.setAllTime(allTime); - limitTarget.setFlickerAllTime(flickerAllTime); - limitTarget.setUAberranceOverTime(uAberrance); - limitTarget.setINegOverTime(iNeg); - limitTarget.setFreqDevOverTime(freqDev); - limitTarget.setUHarm2OverTime(v2); - limitTarget.setUHarm3OverTime(v3); - limitTarget.setUHarm4OverTime(v4); - limitTarget.setUHarm5OverTime(v5); - limitTarget.setUHarm6OverTime(v6); - limitTarget.setUHarm7OverTime(v7); - limitTarget.setUHarm8OverTime(v8); - limitTarget.setUHarm9OverTime(v9); - limitTarget.setUHarm10OverTime(v10); - limitTarget.setUHarm11OverTime(v11); - limitTarget.setUHarm12OverTime(v12); - limitTarget.setUHarm13OverTime(v13); - limitTarget.setUHarm14OverTime(v14); - limitTarget.setUHarm15OverTime(v15); - limitTarget.setUHarm16OverTime(v16); - limitTarget.setUHarm17OverTime(v17); - limitTarget.setUHarm18OverTime(v18); - limitTarget.setUHarm19OverTime(v19); - limitTarget.setUHarm20OverTime(v20); - limitTarget.setUHarm21OverTime(v21); - limitTarget.setUHarm22OverTime(v22); - limitTarget.setUHarm23OverTime(v23); - limitTarget.setUHarm24OverTime(v24); - limitTarget.setUHarm25OverTime(v25); - limitTarget.setIHarm2OverTime(i2); - limitTarget.setIHarm3OverTime(i3); - limitTarget.setIHarm4OverTime(i4); - limitTarget.setIHarm5OverTime(i5); - limitTarget.setIHarm6OverTime(i6); - limitTarget.setIHarm7OverTime(i7); - limitTarget.setIHarm8OverTime(i8); - limitTarget.setIHarm9OverTime(i9); - limitTarget.setIHarm10OverTime(i10); - limitTarget.setIHarm11OverTime(i11); - limitTarget.setIHarm12OverTime(i12); - limitTarget.setIHarm13OverTime(i13); - limitTarget.setIHarm14OverTime(i14); - limitTarget.setIHarm15OverTime(i15); - limitTarget.setIHarm16OverTime(i16); - limitTarget.setIHarm17OverTime(i17); - limitTarget.setIHarm18OverTime(i18); - limitTarget.setIHarm19OverTime(i19); - limitTarget.setIHarm20OverTime(i20); - limitTarget.setIHarm21OverTime(i21); - limitTarget.setIHarm22OverTime(i22); - limitTarget.setIHarm23OverTime(i23); - limitTarget.setIHarm24OverTime(i24); - limitTarget.setIHarm25OverTime(i25); - limitTarget.setInuHarm1OverTime(uHarm1); - limitTarget.setInuHarm2OverTime(uHarm2); - limitTarget.setInuHarm3OverTime(uHarm3); - limitTarget.setInuHarm4OverTime(uHarm4); - limitTarget.setInuHarm5OverTime(uHarm5); - limitTarget.setInuHarm6OverTime(uHarm6); - limitTarget.setInuHarm7OverTime(uHarm7); - limitTarget.setInuHarm8OverTime(uHarm8); - limitTarget.setInuHarm9OverTime(uHarm9); - limitTarget.setInuHarm10OverTime(uHarm10); - limitTarget.setInuHarm11OverTime(uHarm11); - limitTarget.setInuHarm12OverTime(uHarm12); - limitTarget.setInuHarm13OverTime(uHarm13); - limitTarget.setInuHarm14OverTime(uHarm14); - limitTarget.setInuHarm15OverTime(uHarm15); - limitTarget.setInuHarm16OverTime(uHarm16); - limitTarget.setUBalanceOverTime(thd); - limitTarget.setVoltageDevOverTime(uDev); - limitTarget.setFlickerOverTime(flicker); - return limitTarget; - } - - */ -/** - * 功能描述:获取influxDB -> DayV -> 总计算次数(用DayV中phasic_type=A,quality_flag=0来参与统计) - * @author xy - * @param line 监测点集合 - * @param startTime 开始时间 - * @param endTime 结束时间 - * @date 2022/5/23 10:51 - * @return - *//* - - public Map> getAllTime(List line, String startTime, String endTime){ - Map> map = new HashMap<>(); - StringBuilder stringBuilder = new StringBuilder(); - stringBuilder.append("("); - for (int i = 0; i < line.size(); i++) { - if (line.size() - i != 1) { - stringBuilder.append("line_id='").append(line.get(i)).append("' or "); - } else { - stringBuilder.append("line_id='").append(line.get(i)).append("') and "); - } - } - stringBuilder.append(InfluxDBPublicParam.TIME + " >= '").append(startTime).append("' and ").append(InfluxDBPublicParam.TIME).append(" <= '").append(endTime).append("' and phasic_type = 'A' and value_type = 'AVG' and quality_flag = '0' group by line_id ").append(InfluxDBPublicParam.TIME_ZONE); - String sql = "SELECT count(freq) AS all_time FROM "+ InfluxDBPublicParam.DAY_V+" where " + stringBuilder; - QueryResult sqlResult = influxDbUtils.query(sql); - InfluxDBResultMapper resultMapper = new InfluxDBResultMapper(); - List list = resultMapper.toPOJO(sqlResult, DayV.class); - if (!CollectionUtils.isEmpty(list)){ - map = list.stream().collect(Collectors.groupingBy(DayV::getLineId)); - } - return map; - } - - */ -/** - * 功能描述:获取influxDB ->DayPlt -> 闪变总次数(用DayPlt中phasic_type=A,quality_flag=0来参与统计) - * @author xy - * @param line 监测点集合 - * @param startTime 开始时间 - * @param endTime 结束时间 - * @date 2022/5/23 10:51 - * @return - *//* - - public Map> getFlickerAllTime(List line, String startTime, String endTime){ - Map> map = new HashMap<>(); - StringBuilder stringBuilder = new StringBuilder(); - stringBuilder.append("("); - for (int i = 0; i < line.size(); i++) { - if (line.size() - i != 1) { - stringBuilder.append("line_id='").append(line.get(i)).append("' or "); - } else { - stringBuilder.append("line_id='").append(line.get(i)).append("') and "); - } - } - stringBuilder.append(InfluxDBPublicParam.TIME + " >= '").append(startTime).append("' and ").append(InfluxDBPublicParam.TIME).append(" <= '").append(endTime).append("' and phasic_type = 'A' and quality_flag = '0' group by line_id ").append(InfluxDBPublicParam.TIME_ZONE); - String sql = "SELECT count(plt) AS flicker_all_time FROM "+ InfluxDBPublicParam.DAY_PLT+" where " + stringBuilder; - QueryResult sqlResult = influxDbUtils.query(sql); - InfluxDBResultMapper resultMapper = new InfluxDBResultMapper(); - List list = resultMapper.toPOJO(sqlResult, DayPlt.class); - if (!CollectionUtils.isEmpty(list)){ - map = list.stream().collect(Collectors.groupingBy(DayPlt::getLineId)); - } - return map; - } - - */ -/** - * 功能描述:获取influxDB -> DayHarmrateV -> 2-25次谐波电压含有率 -> 日95%概率值 - * @author xy - * @param line 监测点集合 - * @param startTime 开始时间 - * @param endTime 结束时间 - * @date 2022/5/23 10:51 - * @return - *//* - - public Map> getDayHarmrateV(List line, String startTime, String endTime){ - Map> map = new HashMap<>(); - StringBuilder stringBuilder = new StringBuilder(); - stringBuilder.append("("); - for (int i = 0; i < line.size(); i++) { - if (line.size() - i != 1) { - stringBuilder.append("line_id='").append(line.get(i)).append("' or "); - } else { - stringBuilder.append("line_id='").append(line.get(i)).append("') and "); - } - } - stringBuilder.append(InfluxDBPublicParam.TIME + " >= '").append(startTime).append("' and ").append(InfluxDBPublicParam.TIME).append(" <= '").append(endTime).append("' and (phasic_type = 'A' or phasic_type = 'B' or phasic_type = 'C') and value_type = 'CP95' and quality_flag = '0' ").append(InfluxDBPublicParam.TIME_ZONE); - String sql = "SELECT * FROM "+ InfluxDBPublicParam.DAY_HARM_RATE_V+" WHERE " + stringBuilder; - QueryResult sqlResult = influxDbUtils.query(sql); - InfluxDBResultMapper resultMapper = new InfluxDBResultMapper(); - List list = resultMapper.toPOJO(sqlResult, DayHarmrateV.class); - if (!CollectionUtils.isEmpty(list)){ - map = list.stream().collect(Collectors.groupingBy(DayHarmrateV::getLineId)); - } - return map; - } - - */ -/** - * 功能描述:获取influxDB -> DayI -> 2-25次谐波电流 -> 日95%概率值 - * @author xy - * @param line 监测点集合 - * @param startTime 开始时间 - * @param endTime 结束时间 - * @date 2022/5/23 10:51 - * @return - *//* - - public Map> getDayI(List line, String startTime, String endTime){ - Map> map = new HashMap<>(); - StringBuilder stringBuilder = new StringBuilder(); - stringBuilder.append("("); - for (int i = 0; i < line.size(); i++) { - if (line.size() - i != 1) { - stringBuilder.append("line_id='").append(line.get(i)).append("' or "); - } else { - stringBuilder.append("line_id='").append(line.get(i)).append("') and "); - } - } - stringBuilder.append(InfluxDBPublicParam.TIME + " >= '").append(startTime).append("' and ").append(InfluxDBPublicParam.TIME).append(" <= '").append(endTime).append("' and (phasic_type = 'A' or phasic_type = 'B' or phasic_type = 'C') and value_type = 'CP95' and quality_flag = '0' ").append(InfluxDBPublicParam.TIME_ZONE); - String sql = "SELECT * FROM "+ InfluxDBPublicParam.DAY_I+" WHERE " + stringBuilder; - QueryResult sqlResult = influxDbUtils.query(sql); - InfluxDBResultMapper resultMapper = new InfluxDBResultMapper(); - List list = resultMapper.toPOJO(sqlResult, DayI.class); - if (!CollectionUtils.isEmpty(list)){ - map = list.stream().collect(Collectors.groupingBy(DayI::getLineId)); - } - return map; - } - - */ -/** - * 功能描述:获取influxDB -> DayInharmV -> 0.5-15.5次间谐波电压含有率 -> 日95%概率值 - * @author xy - * @param line 监测点集合 - * @param startTime 开始时间 - * @param endTime 结束时间 - * @date 2022/5/23 10:51 - * @return - *//* - - public Map> getDayInharmV(List line, String startTime, String endTime){ - Map> map = new HashMap<>(); - StringBuilder stringBuilder = new StringBuilder(); - stringBuilder.append("("); - for (int i = 0; i < line.size(); i++) { - if (line.size() - i != 1) { - stringBuilder.append("line_id='").append(line.get(i)).append("' or "); - } else { - stringBuilder.append("line_id='").append(line.get(i)).append("') and "); - } - } - stringBuilder.append(InfluxDBPublicParam.TIME + " >= '").append(startTime).append("' and ").append(InfluxDBPublicParam.TIME).append(" <= '").append(endTime).append("' and (phasic_type = 'A' or phasic_type = 'B' or phasic_type = 'C') and value_type = 'CP95' and quality_flag = '0' ").append(InfluxDBPublicParam.TIME_ZONE); - String sql = "SELECT * FROM "+ InfluxDBPublicParam.DATA_IN_HARM_V+" WHERE " + stringBuilder; - QueryResult sqlResult = influxDbUtils.query(sql); - InfluxDBResultMapper resultMapper = new InfluxDBResultMapper(); - List list = resultMapper.toPOJO(sqlResult, DayInharmV.class); - if (!CollectionUtils.isEmpty(list)){ - map = list.stream().collect(Collectors.groupingBy(DayInharmV::getLineId)); - } - return map; - } - - */ -/** - * 功能描述:获取influxDB -> DayV -> 电压总谐波畸变率 -> 日95%概率值 - * @author xy - * @param line 监测点集合 - * @param startTime 开始时间 - * @param endTime 结束时间 - * @date 2022/5/23 10:51 - * @return - *//* - - public Map> getDayV(List line, String startTime, String endTime){ - Map> map = new HashMap<>(); - StringBuilder stringBuilder = new StringBuilder(); - stringBuilder.append("("); - for (int i = 0; i < line.size(); i++) { - if (line.size() - i != 1) { - stringBuilder.append("line_id='").append(line.get(i)).append("' or "); - } else { - stringBuilder.append("line_id='").append(line.get(i)).append("') and "); - } - } - stringBuilder.append(InfluxDBPublicParam.TIME + " >= '").append(startTime).append("' and ").append(InfluxDBPublicParam.TIME).append(" <= '").append(endTime).append("' and (phasic_type = 'A' or phasic_type = 'B' or phasic_type = 'C') and value_type = 'CP95' and quality_flag = '0' ").append(InfluxDBPublicParam.TIME_ZONE); - String sql = "SELECT * FROM "+ InfluxDBPublicParam.DAY_V+" WHERE " + stringBuilder; - QueryResult sqlResult = influxDbUtils.query(sql); - InfluxDBResultMapper resultMapper = new InfluxDBResultMapper(); - List list = resultMapper.toPOJO(sqlResult, DayV.class); - if (!CollectionUtils.isEmpty(list)){ - map = list.stream().collect(Collectors.groupingBy(DayV::getLineId)); - } - return map; - } - - - */ -/** - * 功能描述:获取influxDB -> DayV -> 负序电压不平衡度 -> 最大值 && 日95%概率值 - * @author xy - * @param line 监测点集合 - * @param startTime 开始时间 - * @param endTime 结束时间 - * @date 2022/5/23 10:51 - * @return - *//* - - public Map> getDayVUnbalance(List line, String startTime, String endTime){ - Map> map = new HashMap<>(); - StringBuilder stringBuilder = new StringBuilder(); - stringBuilder.append("("); - for (int i = 0; i < line.size(); i++) { - if (line.size() - i != 1) { - stringBuilder.append("line_id='").append(line.get(i)).append("' or "); - } else { - stringBuilder.append("line_id='").append(line.get(i)).append("') and "); - } - } - stringBuilder.append(InfluxDBPublicParam.TIME + " >= '").append(startTime).append("' and ").append(InfluxDBPublicParam.TIME).append(" <= '").append(endTime).append("' and phasic_type = 'T' and (value_type = 'CP95' or value_type = 'MAX') and quality_flag = '0' ").append(InfluxDBPublicParam.TIME_ZONE); - String sql = "SELECT * FROM "+ InfluxDBPublicParam.DAY_V+" WHERE " + stringBuilder; - QueryResult sqlResult = influxDbUtils.query(sql); - InfluxDBResultMapper resultMapper = new InfluxDBResultMapper(); - List list = resultMapper.toPOJO(sqlResult, DayV.class); - if (!CollectionUtils.isEmpty(list)){ - map = list.stream().collect(Collectors.groupingBy(DayV::getLineId)); - } - return map; - } - - */ -/** - * 功能描述:获取influxDB -> DayI -> 负序电流 -> 最大值 && 日95%概率值 - * @author xy - * @param line 监测点集合 - * @param startTime 开始时间 - * @param endTime 结束时间 - * @date 2022/5/23 10:51 - * @return - *//* - - public Map> getDayINeg(List line, String startTime, String endTime){ - Map> map = new HashMap<>(); - StringBuilder stringBuilder = new StringBuilder(); - stringBuilder.append("("); - for (int i = 0; i < line.size(); i++) { - if (line.size() - i != 1) { - stringBuilder.append("line_id='").append(line.get(i)).append("' or "); - } else { - stringBuilder.append("line_id='").append(line.get(i)).append("') and "); - } - } - stringBuilder.append(InfluxDBPublicParam.TIME + " >= '").append(startTime).append("' and ").append(InfluxDBPublicParam.TIME).append(" <= '").append(endTime).append("' and phasic_type = 'T' and (value_type = 'CP95' or value_type = 'MAX') and quality_flag = '0' ").append(InfluxDBPublicParam.TIME_ZONE); - String sql = "SELECT * FROM "+ InfluxDBPublicParam.DAY_I+" WHERE " + stringBuilder; - QueryResult sqlResult = influxDbUtils.query(sql); - InfluxDBResultMapper resultMapper = new InfluxDBResultMapper(); - List list = resultMapper.toPOJO(sqlResult, DayI.class); - if (!CollectionUtils.isEmpty(list)){ - map = list.stream().collect(Collectors.groupingBy(DayI::getLineId)); - } - return map; - } - - */ -/** - * 功能描述:获取influxDB -> DayV -> 频率偏差 -> 最大值 && 最小值 - * @author xy - * @param line 监测点集合 - * @param startTime 开始时间 - * @param endTime 结束时间 - * @date 2022/5/23 10:51 - * @return - *//* - - public Map> getDayVFreq(List line, String startTime, String endTime){ - Map> map = new HashMap<>(); - StringBuilder stringBuilder = new StringBuilder(); - stringBuilder.append("("); - for (int i = 0; i < line.size(); i++) { - if (line.size() - i != 1) { - stringBuilder.append("line_id='").append(line.get(i)).append("' or "); - } else { - stringBuilder.append("line_id='").append(line.get(i)).append("') and "); - } - } - stringBuilder.append(InfluxDBPublicParam.TIME + " >= '").append(startTime).append("' and ").append(InfluxDBPublicParam.TIME).append(" <= '").append(endTime).append("' and phasic_type = 'T' and (value_type = 'MIN' or value_type = 'MAX') and quality_flag = '0' ").append(InfluxDBPublicParam.TIME_ZONE); - String sql = "SELECT * FROM "+ InfluxDBPublicParam.DAY_V+" WHERE " + stringBuilder; - QueryResult sqlResult = influxDbUtils.query(sql); - InfluxDBResultMapper resultMapper = new InfluxDBResultMapper(); - List list = resultMapper.toPOJO(sqlResult, DayV.class); - if (!CollectionUtils.isEmpty(list)){ - map = list.stream().collect(Collectors.groupingBy(DayV::getLineId)); - } - return map; - } - - */ -/** - * 功能描述:获取influxDB -> DayV -> 电压偏差 -> 最大值 && 最小值 - * @author xy - * @param line 监测点集合 - * @param startTime 开始时间 - * @param endTime 结束时间 - * @date 2022/5/23 10:51 - * @return - *//* - - public Map> getDayVDev(List line, String startTime, String endTime){ - Map> map = new HashMap<>(); - StringBuilder stringBuilder = new StringBuilder(); - stringBuilder.append("("); - for (int i = 0; i < line.size(); i++) { - if (line.size() - i != 1) { - stringBuilder.append("line_id='").append(line.get(i)).append("' or "); - } else { - stringBuilder.append("line_id='").append(line.get(i)).append("') and "); - } - } - stringBuilder.append(InfluxDBPublicParam.TIME + " >= '").append(startTime).append("' and ").append(InfluxDBPublicParam.TIME).append(" <= '").append(endTime).append("' and (phasic_type = 'A' or phasic_type = 'B' or phasic_type = 'C') and (value_type = 'MIN' or value_type = 'MAX') and quality_flag = '0' ").append(InfluxDBPublicParam.TIME_ZONE); - String sql = "SELECT * FROM "+ InfluxDBPublicParam.DAY_V+" WHERE " + stringBuilder; - QueryResult sqlResult = influxDbUtils.query(sql); - InfluxDBResultMapper resultMapper = new InfluxDBResultMapper(); - List list = resultMapper.toPOJO(sqlResult, DayV.class); - if (!CollectionUtils.isEmpty(list)){ - map = list.stream().collect(Collectors.groupingBy(DayV::getLineId)); - } - return map; - } - - */ -/** - * 功能描述:获取influxDB -> DayPlt -> 长时间闪变 -> 最大值 - * @author xy - * @param line 监测点集合 - * @param startTime 开始时间 - * @param endTime 结束时间 - * @date 2022/5/23 10:51 - * @return - *//* - - public Map> getDayPlt(List line, String startTime, String endTime){ - Map> map = new HashMap<>(); - StringBuilder stringBuilder = new StringBuilder(); - stringBuilder.append("("); - for (int i = 0; i < line.size(); i++) { - if (line.size() - i != 1) { - stringBuilder.append("line_id='").append(line.get(i)).append("' or "); - } else { - stringBuilder.append("line_id='").append(line.get(i)).append("') and "); - } - } - stringBuilder.append(InfluxDBPublicParam.TIME + " >= '").append(startTime).append("' and ").append(InfluxDBPublicParam.TIME).append(" <= '").append(endTime).append("' and (phasic_type = 'A' or phasic_type = 'B' or phasic_type = 'C') and quality_flag = '0' ").append(InfluxDBPublicParam.TIME_ZONE); - String sql = "SELECT * FROM "+ InfluxDBPublicParam.DAY_PLT+" WHERE " + stringBuilder; - QueryResult sqlResult = influxDbUtils.query(sql); - InfluxDBResultMapper resultMapper = new InfluxDBResultMapper(); - List list = resultMapper.toPOJO(sqlResult, DayPlt.class); - if (!CollectionUtils.isEmpty(list)){ - map = list.stream().collect(Collectors.groupingBy(DayPlt::getLineId)); - } - return map; - } - - private void insert(List list, long time){ - List records = new ArrayList<>(); - list.forEach(item->{ - Map tags = new HashMap<>(); - Map fields = new HashMap<>(); - tags.put("line_id",item.getLineId()); - tags.put("phasic_type",item.getPhasicType()); - fields.put("all_time",item.getAllTime()); - fields.put("flicker_all_time",item.getFlickerAllTime()); - fields.put("flicker_overtime",item.getFlickerOverTime()); - fields.put("freq_dev_overtime",item.getFreqDevOverTime()); - fields.put("ubalance_overtime",item.getUBalanceOverTime()); - fields.put("uaberrance_overtime",item.getUAberranceOverTime()); - fields.put("i_neg_overtime",item.getINegOverTime()); - fields.put("voltage_dev_overtime",item.getVoltageDevOverTime()); - fields.put("uharm_2_overtime",item.getUHarm2OverTime()); - fields.put("uharm_3_overtime",item.getUHarm3OverTime()); - fields.put("uharm_4_overtime",item.getUHarm4OverTime()); - fields.put("uharm_5_overtime",item.getUHarm5OverTime()); - fields.put("uharm_6_overtime",item.getUHarm6OverTime()); - fields.put("uharm_7_overtime",item.getUHarm7OverTime()); - fields.put("uharm_8_overtime",item.getUHarm8OverTime()); - fields.put("uharm_9_overtime",item.getUHarm9OverTime()); - fields.put("uharm_10_overtime",item.getUHarm10OverTime()); - fields.put("uharm_11_overtime",item.getUHarm11OverTime()); - fields.put("uharm_12_overtime",item.getUHarm12OverTime()); - fields.put("uharm_13_overtime",item.getUHarm13OverTime()); - fields.put("uharm_14_overtime",item.getUHarm14OverTime()); - fields.put("uharm_15_overtime",item.getUHarm15OverTime()); - fields.put("uharm_16_overtime",item.getUHarm16OverTime()); - fields.put("uharm_17_overtime",item.getUHarm17OverTime()); - fields.put("uharm_18_overtime",item.getUHarm18OverTime()); - fields.put("uharm_19_overtime",item.getUHarm19OverTime()); - fields.put("uharm_20_overtime",item.getUHarm20OverTime()); - fields.put("uharm_21_overtime",item.getUHarm21OverTime()); - fields.put("uharm_22_overtime",item.getUHarm22OverTime()); - fields.put("uharm_23_overtime",item.getUHarm23OverTime()); - fields.put("uharm_24_overtime",item.getUHarm24OverTime()); - fields.put("uharm_25_overtime",item.getUHarm25OverTime()); - fields.put("iharm_2_overtime",item.getIHarm2OverTime()); - fields.put("iharm_3_overtime",item.getIHarm3OverTime()); - fields.put("iharm_4_overtime",item.getIHarm4OverTime()); - fields.put("iharm_5_overtime",item.getIHarm5OverTime()); - fields.put("iharm_6_overtime",item.getIHarm6OverTime()); - fields.put("iharm_7_overtime",item.getIHarm7OverTime()); - fields.put("iharm_8_overtime",item.getIHarm8OverTime()); - fields.put("iharm_9_overtime",item.getIHarm9OverTime()); - fields.put("iharm_10_overtime",item.getIHarm10OverTime()); - fields.put("iharm_11_overtime",item.getIHarm11OverTime()); - fields.put("iharm_12_overtime",item.getIHarm12OverTime()); - fields.put("iharm_13_overtime",item.getIHarm13OverTime()); - fields.put("iharm_14_overtime",item.getIHarm14OverTime()); - fields.put("iharm_15_overtime",item.getIHarm15OverTime()); - fields.put("iharm_16_overtime",item.getIHarm16OverTime()); - fields.put("iharm_17_overtime",item.getIHarm17OverTime()); - fields.put("iharm_18_overtime",item.getIHarm18OverTime()); - fields.put("iharm_19_overtime",item.getIHarm19OverTime()); - fields.put("iharm_20_overtime",item.getIHarm20OverTime()); - fields.put("iharm_21_overtime",item.getIHarm21OverTime()); - fields.put("iharm_22_overtime",item.getIHarm22OverTime()); - fields.put("iharm_23_overtime",item.getIHarm23OverTime()); - fields.put("iharm_24_overtime",item.getIHarm24OverTime()); - fields.put("iharm_25_overtime",item.getIHarm25OverTime()); - fields.put("inuharm_1_overtime",item.getInuHarm1OverTime()); - fields.put("inuharm_2_overtime",item.getInuHarm2OverTime()); - fields.put("inuharm_3_overtime",item.getInuHarm3OverTime()); - fields.put("inuharm_4_overtime",item.getInuHarm4OverTime()); - fields.put("inuharm_5_overtime",item.getInuHarm5OverTime()); - fields.put("inuharm_6_overtime",item.getInuHarm6OverTime()); - fields.put("inuharm_7_overtime",item.getInuHarm7OverTime()); - fields.put("inuharm_8_overtime",item.getInuHarm8OverTime()); - fields.put("inuharm_9_overtime",item.getInuHarm9OverTime()); - fields.put("inuharm_10_overtime",item.getInuHarm10OverTime()); - fields.put("inuharm_11_overtime",item.getInuHarm11OverTime()); - fields.put("inuharm_12_overtime",item.getInuHarm12OverTime()); - fields.put("inuharm_13_overtime",item.getInuHarm13OverTime()); - fields.put("inuharm_14_overtime",item.getInuHarm14OverTime()); - fields.put("inuharm_15_overtime",item.getInuHarm15OverTime()); - fields.put("inuharm_16_overtime",item.getInuHarm16OverTime()); - Point point = influxDbUtils.pointBuilder(InfluxDBPublicParam.LIMIT_TARGET, time, TimeUnit.MILLISECONDS, tags, fields); - BatchPoints batchPoints = BatchPoints.database(influxDbConfig.getDatabase()).tag(InfluxDBPublicParam.LINE_ID, item.getLineId()).tag(InfluxDBPublicParam.PHASIC_TYPE,item.getPhasicType()).retentionPolicy("").consistency(InfluxDB.ConsistencyLevel.ALL).build(); - batchPoints.point(point); - records.add(batchPoints.lineProtocol()); - }); - influxDbUtils.batchInsert(influxDbConfig.getDatabase(),"", InfluxDB.ConsistencyLevel.ALL, records); - } -} -*/ diff --git a/pqs-job/job-executor/src/main/java/com/njcn/executor/utils/CommonExecutorUtils.java b/pqs-job/job-executor/src/main/java/com/njcn/executor/utils/CommonExecutorUtils.java index 71b6517f5..3343c0ea1 100644 --- a/pqs-job/job-executor/src/main/java/com/njcn/executor/utils/CommonExecutorUtils.java +++ b/pqs-job/job-executor/src/main/java/com/njcn/executor/utils/CommonExecutorUtils.java @@ -25,36 +25,9 @@ public class CommonExecutorUtils { } SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); - - String date = null; Calendar calendar = Calendar.getInstance(); - - switch (command){ - case BizParamConstant.STAT_BIZ_YEAR : - calendar.add(Calendar.YEAR,-1); - date = sdf.format(DateUtil.beginOfYear(calendar.getTime())); - break; - case BizParamConstant.STAT_BIZ_MONTH: - //月 - calendar.add(Calendar.DAY_OF_MONTH,-1); - date = sdf.format(DateUtil.beginOfDay(calendar.getTime())); - break; - case BizParamConstant.STAT_BIZ_QUARTER: - //季度 - calendar.add(Calendar.MONTH,-3); - date = sdf.format(DateUtil.beginOfQuarter(calendar.getTime())); - break; - case BizParamConstant.STAT_BIZ_WEEK: - calendar.add(Calendar.WEEK_OF_MONTH,-1); - date = sdf.format(DateUtil.beginOfWeek(calendar.getTime())); - break; - case BizParamConstant.STAT_BIZ_DAY: - calendar.add(Calendar.DAY_OF_MONTH,-1); - date = sdf.format(DateUtil.beginOfDay(calendar.getTime())); - break; - default: - throw new IllegalStateException("Unexpected value: " + command); - } - return date; + calendar.add(Calendar.DAY_OF_MONTH,-1); + log.info("job调度时间:"+sdf.format(calendar.getTime())); + return sdf.format(calendar.getTime()); } } diff --git a/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/api/device/fallback/DeviceAbnormalFeignClientFallbackFactory.java b/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/api/device/fallback/DeviceAbnormalFeignClientFallbackFactory.java index 833770c83..bc4a5a43a 100644 --- a/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/api/device/fallback/DeviceAbnormalFeignClientFallbackFactory.java +++ b/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/api/device/fallback/DeviceAbnormalFeignClientFallbackFactory.java @@ -3,7 +3,7 @@ package com.njcn.prepare.harmonic.api.device.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.device.pq.utils.DeviceEnumUtil; +import com.njcn.device.biz.utils.DeviceEnumUtil; import com.njcn.prepare.harmonic.api.device.DeviceAbnormalFeignClient; import com.njcn.prepare.harmonic.pojo.param.DeviceAbnormaStatisticsParam; import feign.hystrix.FallbackFactory; diff --git a/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/api/line/fallback/CoustomReportFeignClientFallbackFactory.java b/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/api/line/fallback/CoustomReportFeignClientFallbackFactory.java index d2e4ef9ed..598a7e738 100644 --- a/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/api/line/fallback/CoustomReportFeignClientFallbackFactory.java +++ b/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/api/line/fallback/CoustomReportFeignClientFallbackFactory.java @@ -3,7 +3,7 @@ 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.device.pq.utils.DeviceEnumUtil; +import com.njcn.device.biz.utils.DeviceEnumUtil; import com.njcn.prepare.harmonic.api.line.CoustmReportFeignClient; import com.njcn.prepare.harmonic.pojo.param.LineParam; import feign.hystrix.FallbackFactory; diff --git a/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/api/line/fallback/DayDataFeignClientFallbackFactory.java b/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/api/line/fallback/DayDataFeignClientFallbackFactory.java index 7c5ac22f1..cec54a7ed 100644 --- a/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/api/line/fallback/DayDataFeignClientFallbackFactory.java +++ b/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/api/line/fallback/DayDataFeignClientFallbackFactory.java @@ -3,7 +3,7 @@ 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.device.pq.utils.DeviceEnumUtil; +import com.njcn.device.biz.utils.DeviceEnumUtil; import com.njcn.prepare.harmonic.api.line.DayDataFeignClient; import com.njcn.prepare.harmonic.pojo.param.LineParam; import feign.hystrix.FallbackFactory; diff --git a/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/api/line/fallback/DistortionRateFeignClientFallbackFactory.java b/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/api/line/fallback/DistortionRateFeignClientFallbackFactory.java index f9e83540f..33c3916b2 100644 --- a/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/api/line/fallback/DistortionRateFeignClientFallbackFactory.java +++ b/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/api/line/fallback/DistortionRateFeignClientFallbackFactory.java @@ -3,7 +3,7 @@ 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.device.pq.utils.DeviceEnumUtil; +import com.njcn.device.biz.utils.DeviceEnumUtil; import com.njcn.prepare.harmonic.api.line.DistortionRateFeignClient; import com.njcn.prepare.harmonic.pojo.param.LineParam; import feign.hystrix.FallbackFactory; diff --git a/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/api/line/fallback/HarmonicGeneralFeignClientFallbackFactory.java b/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/api/line/fallback/HarmonicGeneralFeignClientFallbackFactory.java index 12f7048a2..e1ebb4327 100644 --- a/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/api/line/fallback/HarmonicGeneralFeignClientFallbackFactory.java +++ b/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/api/line/fallback/HarmonicGeneralFeignClientFallbackFactory.java @@ -3,7 +3,7 @@ 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.device.pq.utils.DeviceEnumUtil; +import com.njcn.device.biz.utils.DeviceEnumUtil; import com.njcn.prepare.harmonic.api.line.HarmonicGeneralFeignClient; import com.njcn.prepare.harmonic.pojo.param.LineParam; import feign.hystrix.FallbackFactory; diff --git a/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/api/line/fallback/HarmonicMetricFeignClientFallbackFactory.java b/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/api/line/fallback/HarmonicMetricFeignClientFallbackFactory.java index 26664f3b0..2ce9ef4ad 100644 --- a/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/api/line/fallback/HarmonicMetricFeignClientFallbackFactory.java +++ b/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/api/line/fallback/HarmonicMetricFeignClientFallbackFactory.java @@ -3,7 +3,7 @@ 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.device.pq.utils.DeviceEnumUtil; +import com.njcn.device.biz.utils.DeviceEnumUtil; import com.njcn.prepare.harmonic.api.line.HarmonicMetricFeignClient; import com.njcn.prepare.harmonic.pojo.param.LineParam; import feign.hystrix.FallbackFactory; diff --git a/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/api/line/fallback/IntegrityFeignClientFallbackFactory.java b/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/api/line/fallback/IntegrityFeignClientFallbackFactory.java index 9a6552fd1..77d0c7fa6 100644 --- a/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/api/line/fallback/IntegrityFeignClientFallbackFactory.java +++ b/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/api/line/fallback/IntegrityFeignClientFallbackFactory.java @@ -3,7 +3,7 @@ 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.device.pq.utils.DeviceEnumUtil; +import com.njcn.device.biz.utils.DeviceEnumUtil; import com.njcn.prepare.harmonic.api.line.IntegrityFeignClient; import com.njcn.prepare.harmonic.pojo.param.LineParam; import feign.hystrix.FallbackFactory; diff --git a/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/api/line/fallback/LimitTargetFeignClientFallbackFactory.java b/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/api/line/fallback/LimitTargetFeignClientFallbackFactory.java index 5cc1384be..909bb639a 100644 --- a/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/api/line/fallback/LimitTargetFeignClientFallbackFactory.java +++ b/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/api/line/fallback/LimitTargetFeignClientFallbackFactory.java @@ -3,7 +3,7 @@ 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.device.pq.utils.DeviceEnumUtil; +import com.njcn.device.biz.utils.DeviceEnumUtil; import com.njcn.prepare.harmonic.api.line.LimitTargetFeignClient; import com.njcn.prepare.harmonic.pojo.param.LineParam; import feign.hystrix.FallbackFactory; diff --git a/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/api/line/fallback/LimitrateFeignClientFallbackFactory.java b/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/api/line/fallback/LimitrateFeignClientFallbackFactory.java index 2780e5743..38b596a10 100644 --- a/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/api/line/fallback/LimitrateFeignClientFallbackFactory.java +++ b/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/api/line/fallback/LimitrateFeignClientFallbackFactory.java @@ -3,7 +3,7 @@ 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.device.pq.utils.DeviceEnumUtil; +import com.njcn.device.biz.utils.DeviceEnumUtil; import com.njcn.prepare.harmonic.api.line.LimitrateFeignClient; import com.njcn.prepare.harmonic.pojo.param.LineParam; import feign.hystrix.FallbackFactory; 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 index 5cef19e96..30a8855a9 100644 --- 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 @@ -3,7 +3,7 @@ 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.device.pq.utils.DeviceEnumUtil; +import com.njcn.device.biz.utils.DeviceEnumUtil; import com.njcn.prepare.harmonic.api.line.NormalLimitFeignClient; import com.njcn.prepare.harmonic.pojo.param.LineParam; import feign.hystrix.FallbackFactory; diff --git a/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/api/line/fallback/OnlineRateFeignClientFallbackFactory.java b/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/api/line/fallback/OnlineRateFeignClientFallbackFactory.java index 31258f085..26a2b35b9 100644 --- a/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/api/line/fallback/OnlineRateFeignClientFallbackFactory.java +++ b/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/api/line/fallback/OnlineRateFeignClientFallbackFactory.java @@ -3,7 +3,7 @@ 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.device.pq.utils.DeviceEnumUtil; +import com.njcn.device.biz.utils.DeviceEnumUtil; import com.njcn.prepare.harmonic.api.line.OnlineRateFeignClient; import com.njcn.prepare.harmonic.pojo.param.LineParam; import feign.hystrix.FallbackFactory; diff --git a/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/api/line/fallback/PollutionFeignClientFallbackFactory.java b/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/api/line/fallback/PollutionFeignClientFallbackFactory.java index c7063a0f8..8463203c5 100644 --- a/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/api/line/fallback/PollutionFeignClientFallbackFactory.java +++ b/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/api/line/fallback/PollutionFeignClientFallbackFactory.java @@ -3,7 +3,7 @@ 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.device.pq.utils.DeviceEnumUtil; +import com.njcn.device.biz.utils.DeviceEnumUtil; import com.njcn.prepare.harmonic.api.line.PollutionFeignClient; import com.njcn.prepare.harmonic.pojo.param.LineParam; import feign.hystrix.FallbackFactory; diff --git a/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/api/line/fallback/ThsSuperviseClientFallbackFactory.java b/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/api/line/fallback/ThsSuperviseClientFallbackFactory.java index 28234c0d0..22d8d7922 100644 --- a/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/api/line/fallback/ThsSuperviseClientFallbackFactory.java +++ b/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/api/line/fallback/ThsSuperviseClientFallbackFactory.java @@ -3,7 +3,7 @@ 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.device.pq.utils.DeviceEnumUtil; +import com.njcn.device.biz.utils.DeviceEnumUtil; import com.njcn.prepare.harmonic.api.line.ThsSuperviseClient; import com.njcn.prepare.harmonic.pojo.param.SuperviseParam; import feign.hystrix.FallbackFactory; diff --git a/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/pojo/param/LineParam.java b/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/pojo/param/LineParam.java index 965a58c46..1b1ec8d37 100644 --- a/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/pojo/param/LineParam.java +++ b/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/pojo/param/LineParam.java @@ -22,9 +22,11 @@ public class LineParam { private Integer lineType; @ApiModelProperty(name = "type",value = "时间类型(1年,2季,3月,4周,5日)") + @NotNull(message = "时间类型不可为空") private Integer type; @ApiModelProperty(name = "dataDate",value = "时间") + @NotBlank(message = "时间不可为空") private String dataDate; @ApiModelProperty(name = "dataSource",value = "数据源(0:oracle,1:influxdb 2:mysql)") diff --git a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/controller/line/DataExceptionController.java b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/controller/line/DataExceptionController.java index 5fedfebec..9bd72dbcb 100644 --- a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/controller/line/DataExceptionController.java +++ b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/controller/line/DataExceptionController.java @@ -6,7 +6,7 @@ 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.pq.enums.DeviceResponseEnum; +import com.njcn.device.biz.enums.DeviceResponseEnum; import com.njcn.prepare.harmonic.pojo.param.LineParam; import com.njcn.prepare.harmonic.service.mysql.line.DataExceptionService; import com.njcn.web.controller.BaseController; diff --git a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/controller/line/DistortionRateController.java b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/controller/line/DistortionRateController.java index 7e98c1c5c..69385ced1 100644 --- a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/controller/line/DistortionRateController.java +++ b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/controller/line/DistortionRateController.java @@ -50,6 +50,13 @@ public class DistortionRateController extends BaseController { return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, null, methodDescribe); } + + + + + + + @OperateInfo(info = LogEnum.BUSINESS_COMMON) @PostMapping("/distortionRateBySource") @ApiOperation("谐波畸变率排名") diff --git a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/Impl/line/DataExceptionServiceImpl.java b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/Impl/line/DataExceptionServiceImpl.java index a030d4d4c..021ff0104 100644 --- a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/Impl/line/DataExceptionServiceImpl.java +++ b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/Impl/line/DataExceptionServiceImpl.java @@ -8,7 +8,7 @@ import com.njcn.device.pms.api.MonitorClient; import com.njcn.device.pms.pojo.po.DistributionMonitor; import com.njcn.device.pms.pojo.po.Monitor; import com.njcn.device.pq.constant.Param; -import com.njcn.device.pq.enums.DeviceResponseEnum; +import com.njcn.device.biz.enums.DeviceResponseEnum; import com.njcn.device.pq.pojo.po.DataV; import com.njcn.device.pq.pojo.po.PmsAbnormalRules; import com.njcn.device.pq.pojo.po.RStatAbnormalD; diff --git a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/Impl/line/DistortionRateServiceImpl.java b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/Impl/line/DistortionRateServiceImpl.java index 74fe88737..92cbed50a 100644 --- a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/Impl/line/DistortionRateServiceImpl.java +++ b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/Impl/line/DistortionRateServiceImpl.java @@ -57,7 +57,7 @@ public class DistortionRateServiceImpl implements DistortionRateService { } else { lineIdOutList = new ArrayList<> (lineParam.getLineIds ( )); } - LocalDateTime local = LocalDateTimeUtil.parse (lineParam.getDataDate ( ) + "T00:00:00"); + LocalDateTime local = LocalDateTimeUtil.parse (lineParam.getDataDate () + "T00:00:00"); for (String lineId : lineIdOutList) { List rateOut = getDistortionRateInfluxDb (lineId, lineParam.getDataDate()); if (rateOut.size ( ) > 0) { diff --git a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/Impl/line/PollutionServiceImpl.java b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/Impl/line/PollutionServiceImpl.java index 124ad9829..4266b34da 100644 --- a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/Impl/line/PollutionServiceImpl.java +++ b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/Impl/line/PollutionServiceImpl.java @@ -7,8 +7,12 @@ import cn.hutool.core.date.TimeInterval; import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.njcn.common.pojo.constant.BizParamConstant; +import com.njcn.common.pojo.constant.ServerInfo; import com.njcn.common.pojo.response.HttpResult; import com.njcn.common.utils.LogUtil; +import com.njcn.device.biz.commApi.DeptLineGeneralClient; +import com.njcn.device.biz.pojo.dto.DeptGetChildrenDTO; +import com.njcn.device.biz.pojo.param.DeptGetLineParam; import com.njcn.device.pq.api.DeptLineFeignClient; import com.njcn.device.pq.api.LineFeignClient; import com.njcn.device.pq.pojo.po.Overlimit; @@ -23,6 +27,8 @@ import com.njcn.prepare.harmonic.service.mysql.line.PollutionService; import com.njcn.system.api.DicDataFeignClient; import com.njcn.system.enums.DicDataTypeEnum; import com.njcn.system.pojo.po.DictData; +import com.njcn.user.api.DeptFeignClient; +import com.njcn.user.pojo.po.Dept; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.influxdb.dto.QueryResult; @@ -77,9 +83,14 @@ public class PollutionServiceImpl implements PollutionService { private final RMpPollutionDMapper rMpPollutionDMapper; + private final DeptLineGeneralClient deptLineGeneralClient; + + private final DeptFeignClient deptFeignClient; + @Override @Async("asyncExecutor") public void processPollutionData(LineParam lineParam) { + TimeInterval timer = new TimeInterval(); List pollutionList; LocalDateTime local = LocalDateTimeUtil.now(); @@ -135,12 +146,12 @@ public class PollutionServiceImpl implements PollutionService { localEnd = LocalDateTimeUtil.parse(DateUtil.formatDate(dateOute) + "T23:59:59"); }else if (Integer.valueOf(BizParamConstant.STAT_BIZ_QUARTER).equals(lineParam.getType())){ Date dateOutb = DateUtil.beginOfQuarter(dateOut); - Date dateOute = DateUtil.endOfQuarter(dateOut); + Date dateOute = dateOut; local = LocalDateTimeUtil.parse(DateUtil.formatDate(dateOutb) + "T00:00:00"); localEnd = LocalDateTimeUtil.parse(DateUtil.formatDate(dateOute) + "T23:59:59"); }else if (Integer.valueOf(BizParamConstant.STAT_BIZ_YEAR).equals(lineParam.getType())){ Date dateOutb = DateUtil.beginOfYear(dateOut); - Date dateOute = DateUtil.endOfYear(dateOut); + Date dateOute = dateOut; local = LocalDateTimeUtil.parse(DateUtil.formatDate(dateOutb) + "T00:00:00"); localEnd = LocalDateTimeUtil.parse(DateUtil.formatDate(dateOute) + "T23:59:59"); } @@ -158,11 +169,18 @@ public class PollutionServiceImpl implements PollutionService { */ private void insertPolluctionMySql(List pollutionDayList, List dictData, LocalDateTime local, Integer type){ HttpResult>> substationOut = lineFeignClient.getLineBySubstationRelation(1); - HttpResult>> unitOut = deptLineFeignClient.getLineByDeptRelation(1); + //HttpResult>> unitOut = deptLineFeignClient.getLineByDeptRelation(1); + + Dept dept = deptFeignClient.getRootDept().getData(); + DeptGetLineParam deptGetLineParam = new DeptGetLineParam(); + deptGetLineParam.setDeptId(dept.getId()); + deptGetLineParam.setServerName(ServerInfo.HARMONIC); + List deptGetChildrenDTOList = deptLineGeneralClient.deptGetLineList(deptGetLineParam).getData(); + Map> substationMap = substationOut.getData(); - Map> unitMap = unitOut.getData(); + insertSubstation(dictData,substationMap,pollutionDayList,local,type); - insertUnit(dictData,unitMap,pollutionDayList,local,type); + insertUnit(dictData,deptGetChildrenDTOList,pollutionDayList,local,type); } /*MySql入表 r_mp_pollution_d*/ @@ -212,11 +230,11 @@ public class PollutionServiceImpl implements PollutionService { } /*MySql入表 r_stat_pollution_org*/ - private void insertUnit(List dictDataList,Map> unitMap,List pollutionDayList,LocalDateTime local, Integer type){ - for (String key : unitMap.keySet()){ + private void insertUnit(List dictDataList,List deptGetChildrenDTOList,List pollutionDayList,LocalDateTime local, Integer type){ + for (DeptGetChildrenDTO deptGetChildrenDTO : deptGetChildrenDTOList){ List processList = new ArrayList<>(); - List unitList = unitMap.get(key); - for(String lineid : unitList){ + + for(String lineid : deptGetChildrenDTO.getLineIds()){ for (RMpPollutionDPO pollution : pollutionDayList){ if (lineid.equals(pollution.getLineId())){ processList.add(pollution); @@ -224,7 +242,7 @@ public class PollutionServiceImpl implements PollutionService { } } Map inMap = new HashMap<>(); - inMap.put("orgId",key); + inMap.put("orgId",deptGetChildrenDTO.getDeptId()); inMap.put("dataDate",local); for (DictData dictData : dictDataList){ processData(dictData, processList, inMap); diff --git a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/line/DataExceptionService.java b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/line/DataExceptionService.java index 60b77d618..af05bd6d7 100644 --- a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/line/DataExceptionService.java +++ b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/line/DataExceptionService.java @@ -1,7 +1,7 @@ package com.njcn.prepare.harmonic.service.mysql.line; -import com.njcn.device.pq.enums.DeviceResponseEnum; +import com.njcn.device.biz.enums.DeviceResponseEnum; import com.njcn.prepare.harmonic.pojo.param.LineParam; /**