代码调整

This commit is contained in:
2022-11-10 10:36:08 +08:00
parent 6a3a05d45f
commit 75563a8e24
169 changed files with 1138 additions and 7595 deletions

View File

@@ -105,6 +105,12 @@
<artifactId>common-minio</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>com.njcn</groupId>
<artifactId>prepare-api</artifactId>
<version>${project.version}</version>
</dependency>
</dependencies>
<build>

View File

@@ -1,31 +0,0 @@
package com.njcn.prepare.harmonic.api.line;
import com.njcn.common.pojo.constant.ServerInfo;
import com.njcn.common.pojo.response.HttpResult;
import com.njcn.prepare.harmonic.api.line.fallback.CoustomReportFeignClientFallbackFactory;
import com.njcn.prepare.harmonic.pojo.param.LineParam;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
/**
* 自定义报表
* @author qijian
* @date 2022/10/20
*/
@FeignClient(
value = ServerInfo.HARMONIC_PREPARE,//对应模块名
path = "/report",//对应controller请求类
fallbackFactory = CoustomReportFeignClientFallbackFactory.class//服务降级处理类
)
public interface CoustmReportFeignClient {
/**
* 批量处理报表
* @author qijian
* @date 2022/10/19
*/
@PostMapping("/batchReport")
HttpResult<Boolean> batchReport(@RequestBody LineParam reportParam);
}

View File

@@ -1,31 +0,0 @@
package com.njcn.prepare.harmonic.api.line;
import com.njcn.common.pojo.constant.ServerInfo;
import com.njcn.common.pojo.response.HttpResult;
import com.njcn.prepare.harmonic.api.line.fallback.DayDataFeignClientFallbackFactory;
import com.njcn.prepare.harmonic.pojo.param.LineParam;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
/**
* 自定义报表
* @author qijian
* @date 2022/10/20
*/
@FeignClient(
value = ServerInfo.HARMONIC_PREPARE,//对应模块名
path = "/daydata",//对应controller请求类
fallbackFactory = DayDataFeignClientFallbackFactory.class//服务降级处理类
)
public interface DayDataFeignClient {
/**
* 批量处理报表
* @author qijian
* @date 2022/10/19
*/
@PostMapping("/dayDataHanlder")
HttpResult<Boolean> dayDataHanlder(@RequestBody LineParam jobParam);
}

View File

@@ -1,27 +0,0 @@
package com.njcn.prepare.harmonic.api.line;
import com.njcn.common.pojo.constant.ServerInfo;
import com.njcn.common.pojo.response.HttpResult;
import com.njcn.prepare.harmonic.api.line.fallback.DistortionRateFeignClientFallbackFactory;
import com.njcn.prepare.harmonic.pojo.param.LineParam;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
/**
* 谐波畸变率
* @author xiaoyao
* @version 1.0.0
* @createTime 2022/11/4 15:58
*/
@FeignClient(
value = ServerInfo.HARMONIC_PREPARE,
path = "/distortion",
fallbackFactory = DistortionRateFeignClientFallbackFactory.class
)
public interface DistortionRateFeignClient {
@PostMapping("/distortionRate")
HttpResult<String> distortionRate(@RequestBody @Validated LineParam lineParam);
}

View File

@@ -1,28 +0,0 @@
package com.njcn.prepare.harmonic.api.line;
import com.njcn.common.pojo.constant.ServerInfo;
import com.njcn.common.pojo.response.HttpResult;
import com.njcn.prepare.harmonic.api.line.fallback.DistortionRateFeignClientFallbackFactory;
import com.njcn.prepare.harmonic.pojo.param.LineParam;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
/**
* 稳态综合评估
* @author xiaoyao
* @version 1.0.0
* @createTime 2022/11/7 15:11
*/
@FeignClient(
value = ServerInfo.HARMONIC_PREPARE,
path = "/general",
fallbackFactory = DistortionRateFeignClientFallbackFactory.class
)
public interface HarmonicGeneralFeignClient {
@PostMapping("/generalData")
HttpResult<String> generalData(@RequestBody @Validated LineParam lineParam);
}

View File

@@ -1,27 +0,0 @@
package com.njcn.prepare.harmonic.api.line;
import com.njcn.common.pojo.constant.ServerInfo;
import com.njcn.common.pojo.response.HttpResult;
import com.njcn.prepare.harmonic.api.line.fallback.HarmonicMetricFeignClientFallbackFactory;
import com.njcn.prepare.harmonic.pojo.param.LineParam;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
/**
* @author xiaoyao
* @version 1.0.0
* @createTime 2022/11/7 15:12
*/
@FeignClient(
value = ServerInfo.HARMONIC_PREPARE,
path = "/metric",
fallbackFactory = HarmonicMetricFeignClientFallbackFactory.class
)
public interface HarmonicMetricFeignClient {
@PostMapping("/metricData")
HttpResult<String> metricData(@RequestBody @Validated LineParam lineParam);
}

View File

@@ -1,32 +0,0 @@
package com.njcn.prepare.harmonic.api.line;
import com.njcn.common.pojo.constant.ServerInfo;
import com.njcn.common.pojo.response.HttpResult;
import com.njcn.prepare.harmonic.api.line.fallback.IntegrityFeignClientFallbackFactory;
import com.njcn.prepare.harmonic.pojo.param.LineParam;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
/**
* 自定义报表
* @author qijian
* @date 2022/10/20
*/
@FeignClient(
value = ServerInfo.HARMONIC_PREPARE,//对应模块名
path = "/integrity",//对应controller请求类
fallbackFactory = IntegrityFeignClientFallbackFactory.class//服务降级处理类
)
public interface IntegrityFeignClient {
/**
* 批量处理报表
* @author qijian
* @date 2022/10/19
*/
@PostMapping("/computeDataIntegrity")
HttpResult<String> computeDataIntegrity(@RequestBody @Validated LineParam lineParam);
}

View File

@@ -1,32 +0,0 @@
package com.njcn.prepare.harmonic.api.line;
import com.njcn.common.pojo.constant.ServerInfo;
import com.njcn.common.pojo.response.HttpResult;
import com.njcn.prepare.harmonic.api.line.fallback.LimitTargetFeignClientFallbackFactory;
import com.njcn.prepare.harmonic.pojo.param.LineParam;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
/**
* 自定义报表
* @author qijian
* @date 2022/10/20
*/
@FeignClient(
value = ServerInfo.HARMONIC_PREPARE,//对应模块名
path = "/limitTarget",//对应controller请求类
fallbackFactory = LimitTargetFeignClientFallbackFactory.class//服务降级处理类
)
public interface LimitTargetFeignClient {
/**
* 批量处理报表
* @author qijian
* @date 2022/10/19
*/
@PostMapping("/getLimitTargetData")
HttpResult<String> getLimitTargetData(@RequestBody @Validated LineParam lineParam);
}

View File

@@ -1,29 +0,0 @@
package com.njcn.prepare.harmonic.api.line;
import com.njcn.common.pojo.constant.ServerInfo;
import com.njcn.common.pojo.response.HttpResult;
import com.njcn.prepare.harmonic.api.line.fallback.LimitrateFeignClientFallbackFactory;
import com.njcn.prepare.harmonic.pojo.param.LineParam;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
/**
* 自定义报表
* @author qijian
* @date 2022/10/20
*/
@FeignClient(
value = ServerInfo.HARMONIC_PREPARE,//对应模块名
path = "/limitrate",//对应controller请求类
fallbackFactory = LimitrateFeignClientFallbackFactory.class//服务降级处理类
)
public interface LimitrateFeignClient {
/**
* 越限
*/
@PostMapping("/LimitRateHanlder")
HttpResult<Boolean> limitRateHanlder(@RequestBody LineParam limitRateHanlderParam );
}

View File

@@ -1,31 +0,0 @@
package com.njcn.prepare.harmonic.api.line;
import com.njcn.common.pojo.constant.ServerInfo;
import com.njcn.common.pojo.response.HttpResult;
import com.njcn.prepare.harmonic.api.line.fallback.NormalFeignClientFallbackFactory;
import com.njcn.prepare.harmonic.pojo.param.LineParam;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
/**
* 监测点谐波异常
* @date 2022/10/20
*/
@FeignClient(
value = ServerInfo.HARMONIC_PREPARE,
path = "/normalLimit",
fallbackFactory = NormalFeignClientFallbackFactory.class
)
public interface NormalLimitFeignClient {
/**
* 批量处理报表
* @author qijian
* @date 2022/10/19
*/
@PostMapping("/getNormLimitData")
HttpResult<String> getNormLimitData(@RequestBody @Validated LineParam lineParam) ;
}

View File

@@ -1,30 +0,0 @@
package com.njcn.prepare.harmonic.api.line;
import com.njcn.common.pojo.constant.ServerInfo;
import com.njcn.common.pojo.response.HttpResult;
import com.njcn.prepare.harmonic.api.line.fallback.OnlineRateFeignClientFallbackFactory;
import com.njcn.prepare.harmonic.pojo.param.LineParam;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
/**
* 自定义报表
* @author qijian
* @date 2022/10/20
*/
@FeignClient(
value = ServerInfo.HARMONIC_PREPARE,//对应模块名
path = "/onlineRate",//对应controller请求类
fallbackFactory = OnlineRateFeignClientFallbackFactory.class//服务降级处理类
)
public interface OnlineRateFeignClient {
/**
* 在线率
*/
@PostMapping("/getOnlineRateData")
HttpResult<String> getOnlineRateData(@RequestBody @Validated LineParam lineParam);
}

View File

@@ -1,30 +0,0 @@
package com.njcn.prepare.harmonic.api.line;
import com.njcn.common.pojo.constant.ServerInfo;
import com.njcn.common.pojo.response.HttpResult;
import com.njcn.prepare.harmonic.api.line.fallback.PollutionFeignClientFallbackFactory;
import com.njcn.prepare.harmonic.pojo.param.LineParam;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
/**
* 自定义报表
* @author qijian
* @date 2022/10/20
*/
@FeignClient(
value = ServerInfo.HARMONIC_PREPARE,//对应模块名
path = "/pollution",//对应controller请求类
fallbackFactory = PollutionFeignClientFallbackFactory.class//服务降级处理类
)
public interface PollutionFeignClient {
/**
* 污区
*/
@PostMapping("/processPollutionData")
HttpResult<String> processPollutionData(@RequestBody @Validated LineParam lineParam);
}

View File

@@ -1,44 +0,0 @@
package com.njcn.prepare.harmonic.api.line.fallback;
import com.njcn.common.pojo.enums.response.CommonResponseEnum;
import com.njcn.common.pojo.exception.BusinessException;
import com.njcn.common.pojo.response.HttpResult;
import com.njcn.device.pq.utils.DeviceEnumUtil;
import com.njcn.prepare.harmonic.api.line.CoustmReportFeignClient;
import com.njcn.prepare.harmonic.api.line.DayDataFeignClient;
import com.njcn.prepare.harmonic.pojo.param.LimitRateHanlderParam;
import com.njcn.prepare.harmonic.pojo.param.LineParam;
import feign.hystrix.FallbackFactory;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Component;
import org.springframework.web.bind.annotation.RequestBody;
/**
* ReportFeignClientFallbackFactory
*
* @author qijian
* @version 1.0.0
* @createTime 2022/10/24 - 9:52
*/
@Slf4j
@Component
public class CoustomReportFeignClientFallbackFactory implements FallbackFactory<CoustmReportFeignClient> {
@Override
public CoustmReportFeignClient 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 CoustmReportFeignClient() {
@Override
public HttpResult<Boolean> batchReport(@RequestBody LineParam reportParam){
log.error("{}异常,降级处理,异常为:{}", "生成自定义报表: ", throwable.toString());
throw new BusinessException(finalExceptionEnum);
}
};
}
}

View File

@@ -1,42 +0,0 @@
package com.njcn.prepare.harmonic.api.line.fallback;
import com.njcn.common.pojo.enums.response.CommonResponseEnum;
import com.njcn.common.pojo.exception.BusinessException;
import com.njcn.common.pojo.response.HttpResult;
import com.njcn.device.pq.utils.DeviceEnumUtil;
import com.njcn.prepare.harmonic.api.line.DayDataFeignClient;
import com.njcn.prepare.harmonic.pojo.param.LineParam;
import feign.hystrix.FallbackFactory;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Component;
import org.springframework.web.bind.annotation.RequestBody;
/**
* ReportFeignClientFallbackFactory
*
* @author qijian
* @version 1.0.0
* @createTime 2022/10/24 - 9:52
*/
@Slf4j
@Component
public class DayDataFeignClientFallbackFactory implements FallbackFactory<DayDataFeignClient> {
@Override
public DayDataFeignClient 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 DayDataFeignClient() {
@Override
public HttpResult<Boolean> dayDataHanlder(@RequestBody LineParam jobParam){
log.error("{}异常,降级处理,异常为:{}", "Date数据转Day数据: ", throwable.toString());
throw new BusinessException(finalExceptionEnum);
}
};
}
}

View File

@@ -1,40 +0,0 @@
package com.njcn.prepare.harmonic.api.line.fallback;
import com.njcn.common.pojo.enums.response.CommonResponseEnum;
import com.njcn.common.pojo.exception.BusinessException;
import com.njcn.common.pojo.response.HttpResult;
import com.njcn.device.pq.utils.DeviceEnumUtil;
import com.njcn.prepare.harmonic.api.line.DistortionRateFeignClient;
import com.njcn.prepare.harmonic.pojo.param.LineParam;
import feign.hystrix.FallbackFactory;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Component;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.RequestBody;
/**
* @author xiaoyao
* @version 1.0.0
* @createTime 2022/11/7 14:37
*/
@Slf4j
@Component
public class DistortionRateFeignClientFallbackFactory implements FallbackFactory<DistortionRateFeignClient> {
@Override
public DistortionRateFeignClient 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 DistortionRateFeignClient() {
@Override
public HttpResult<String> distortionRate(@RequestBody @Validated LineParam lineParam){
log.error("{}异常,降级处理,异常为:{}", "谐波畸变率: ", throwable.toString());
throw new BusinessException(finalExceptionEnum);
}
};
}
}

View File

@@ -1,40 +0,0 @@
package com.njcn.prepare.harmonic.api.line.fallback;
import com.njcn.common.pojo.enums.response.CommonResponseEnum;
import com.njcn.common.pojo.exception.BusinessException;
import com.njcn.common.pojo.response.HttpResult;
import com.njcn.device.pq.utils.DeviceEnumUtil;
import com.njcn.prepare.harmonic.api.line.HarmonicGeneralFeignClient;
import com.njcn.prepare.harmonic.pojo.param.LineParam;
import feign.hystrix.FallbackFactory;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Component;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.RequestBody;
/**
* @author xiaoyao
* @version 1.0.0
* @createTime 2022/11/7 15:17
*/
@Slf4j
@Component
public class HarmonicGeneralFeignClientFallbackFactory implements FallbackFactory<HarmonicGeneralFeignClient> {
@Override
public HarmonicGeneralFeignClient 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 HarmonicGeneralFeignClient() {
@Override
public HttpResult<String> generalData(@RequestBody @Validated LineParam lineParam){
log.error("{}异常,降级处理,异常为:{}", "稳态综合评估: ", throwable.toString());
throw new BusinessException(finalExceptionEnum);
}
};
}
}

View File

@@ -1,40 +0,0 @@
package com.njcn.prepare.harmonic.api.line.fallback;
import com.njcn.common.pojo.enums.response.CommonResponseEnum;
import com.njcn.common.pojo.exception.BusinessException;
import com.njcn.common.pojo.response.HttpResult;
import com.njcn.device.pq.utils.DeviceEnumUtil;
import com.njcn.prepare.harmonic.api.line.HarmonicMetricFeignClient;
import com.njcn.prepare.harmonic.pojo.param.LineParam;
import feign.hystrix.FallbackFactory;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Component;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.RequestBody;
/**
* @author xiaoyao
* @version 1.0.0
* @createTime 2022/11/7 15:14
*/
@Slf4j
@Component
public class HarmonicMetricFeignClientFallbackFactory implements FallbackFactory<HarmonicMetricFeignClient> {
@Override
public HarmonicMetricFeignClient 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 HarmonicMetricFeignClient() {
@Override
public HttpResult<String> metricData(@RequestBody @Validated LineParam lineParam){
log.error("{}异常,降级处理,异常为:{}", "稳态指标评估: ", throwable.toString());
throw new BusinessException(finalExceptionEnum);
}
};
}
}

View File

@@ -1,39 +0,0 @@
package com.njcn.prepare.harmonic.api.line.fallback;
import com.njcn.common.pojo.enums.response.CommonResponseEnum;
import com.njcn.common.pojo.exception.BusinessException;
import com.njcn.common.pojo.response.HttpResult;
import com.njcn.device.pq.utils.DeviceEnumUtil;
import com.njcn.prepare.harmonic.api.line.IntegrityFeignClient;
import com.njcn.prepare.harmonic.pojo.param.LineParam;
import feign.hystrix.FallbackFactory;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Component;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.RequestBody;
/**
* IntegrityFeignClientFallbackFactory
*/
@Slf4j
@Component
public class IntegrityFeignClientFallbackFactory implements FallbackFactory<IntegrityFeignClient> {
@Override
public IntegrityFeignClient 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 IntegrityFeignClient() {
@Override
public HttpResult<String> computeDataIntegrity(@RequestBody @Validated LineParam lineParam) {
log.error("{}异常,降级处理,异常为:{}", "数据完整性处理: ", throwable.toString());
throw new BusinessException(finalExceptionEnum);
}
};
}
}

View File

@@ -1,43 +0,0 @@
package com.njcn.prepare.harmonic.api.line.fallback;
import com.njcn.common.pojo.enums.response.CommonResponseEnum;
import com.njcn.common.pojo.exception.BusinessException;
import com.njcn.common.pojo.response.HttpResult;
import com.njcn.device.pq.utils.DeviceEnumUtil;
import com.njcn.prepare.harmonic.api.line.LimitTargetFeignClient;
import com.njcn.prepare.harmonic.pojo.param.LineParam;
import feign.hystrix.FallbackFactory;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Component;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.RequestBody;
/**
* ReportFeignClientFallbackFactory
*
* @author qijian
* @version 1.0.0
* @createTime 2022/10/24 - 9:52
*/
@Slf4j
@Component
public class LimitTargetFeignClientFallbackFactory implements FallbackFactory<LimitTargetFeignClient> {
@Override
public LimitTargetFeignClient 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 LimitTargetFeignClient() {
@Override
public HttpResult<String> getLimitTargetData(@RequestBody @Validated LineParam lineParam) {
log.error("{}异常,降级处理,异常为:{}", "越限数据: ", throwable.toString());
throw new BusinessException(finalExceptionEnum);
}
};
}
}

View File

@@ -1,42 +0,0 @@
package com.njcn.prepare.harmonic.api.line.fallback;
import com.njcn.common.pojo.enums.response.CommonResponseEnum;
import com.njcn.common.pojo.exception.BusinessException;
import com.njcn.common.pojo.response.HttpResult;
import com.njcn.device.pq.utils.DeviceEnumUtil;
import com.njcn.prepare.harmonic.api.line.LimitrateFeignClient;
import com.njcn.prepare.harmonic.pojo.param.LineParam;
import feign.hystrix.FallbackFactory;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Component;
import org.springframework.web.bind.annotation.RequestBody;
/**
* ReportFeignClientFallbackFactory
*
* @author qijian
* @version 1.0.0
* @createTime 2022/10/24 - 9:52
*/
@Slf4j
@Component
public class LimitrateFeignClientFallbackFactory implements FallbackFactory<LimitrateFeignClient> {
@Override
public LimitrateFeignClient 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 LimitrateFeignClient() {
@Override
public HttpResult<Boolean> limitRateHanlder(@RequestBody LineParam limitRateHanlderParam ){
log.error("{}异常,降级处理,异常为:{}", "越限数据处理: ", throwable.toString());
throw new BusinessException(finalExceptionEnum);
}
};
}
}

View File

@@ -1,37 +0,0 @@
package com.njcn.prepare.harmonic.api.line.fallback;
import com.njcn.common.pojo.enums.response.CommonResponseEnum;
import com.njcn.common.pojo.exception.BusinessException;
import com.njcn.common.pojo.response.HttpResult;
import com.njcn.device.pq.utils.DeviceEnumUtil;
import com.njcn.prepare.harmonic.api.line.NormalLimitFeignClient;
import com.njcn.prepare.harmonic.pojo.param.LineParam;
import feign.hystrix.FallbackFactory;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Component;
/**
* NormalFeignClientFallbackFactory
*/
@Slf4j
@Component
public class NormalFeignClientFallbackFactory implements FallbackFactory<NormalLimitFeignClient> {
@Override
public NormalLimitFeignClient 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 NormalLimitFeignClient() {
@Override
public HttpResult<String> getNormLimitData(LineParam lineParam) {
log.error("{}异常,降级处理,异常为:{}", "告警数据: ", throwable.toString());
throw new BusinessException(finalExceptionEnum);
}
};
}
}

View File

@@ -1,39 +0,0 @@
package com.njcn.prepare.harmonic.api.line.fallback;
import com.njcn.common.pojo.enums.response.CommonResponseEnum;
import com.njcn.common.pojo.exception.BusinessException;
import com.njcn.common.pojo.response.HttpResult;
import com.njcn.device.pq.utils.DeviceEnumUtil;
import com.njcn.prepare.harmonic.api.line.OnlineRateFeignClient;
import com.njcn.prepare.harmonic.pojo.param.LineParam;
import feign.hystrix.FallbackFactory;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Component;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.RequestBody;
/**
* OnlineRateFeignClientFallbackFactory
*/
@Slf4j
@Component
public class OnlineRateFeignClientFallbackFactory implements FallbackFactory<OnlineRateFeignClient> {
@Override
public OnlineRateFeignClient 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 OnlineRateFeignClient() {
@Override
public HttpResult<String> getOnlineRateData(@RequestBody @Validated LineParam lineParam){
log.error("{}异常,降级处理,异常为:{}", "在线率: ", throwable.toString());
throw new BusinessException(finalExceptionEnum);
}
};
}
}

View File

@@ -1,40 +0,0 @@
package com.njcn.prepare.harmonic.api.line.fallback;
import com.njcn.common.pojo.enums.response.CommonResponseEnum;
import com.njcn.common.pojo.exception.BusinessException;
import com.njcn.common.pojo.response.HttpResult;
import com.njcn.device.pq.utils.DeviceEnumUtil;
import com.njcn.prepare.harmonic.api.line.PollutionFeignClient;
import com.njcn.prepare.harmonic.pojo.param.LineParam;
import feign.hystrix.FallbackFactory;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Component;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.RequestBody;
/**
* PollutionFeignClientFallbackFactory
*
*/
@Slf4j
@Component
public class PollutionFeignClientFallbackFactory implements FallbackFactory<PollutionFeignClient> {
@Override
public PollutionFeignClient 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 PollutionFeignClient() {
@Override
public HttpResult<String> processPollutionData(@RequestBody @Validated LineParam lineParam){
log.error("{}异常,降级处理,异常为:{}", "污区数据: ", throwable.toString());
throw new BusinessException(finalExceptionEnum);
}
};
}
}

View File

@@ -1,10 +0,0 @@
package com.njcn.prepare.harmonic.api.voltage;
/**
* @author qijian
* @version 1.0.0
* @date 2022年10月24日 20:13
*/
public interface VoltageFeignClient {
}

View File

@@ -288,12 +288,17 @@ public class ReportServiceImpl implements ReportService {
.append(InfluxDBSqlConstant.AND).append(InfluxDBTableConstant.VALUE_TYPE).append(InfluxDBSqlConstant.EQ).append(InfluxDBSqlConstant.QM).append(data.getStatMethod()).append(InfluxDBSqlConstant.QM)
.append(InfluxDBSqlConstant.TZ);
} else {
sql.append(method).append(InfluxDBSqlConstant.LBK).append(data.getTemplateName()).append(InfluxDBSqlConstant.RBK).append(InfluxDBSqlConstant.AS_VALUE)
.append(InfluxDBSqlConstant.FROM).append(data.getClassId())
.append(InfluxDBSqlConstant.WHERE).append(InfluxDBTableConstant.LINE_ID).append(InfluxDBSqlConstant.EQ).append(InfluxDBSqlConstant.QM).append(lineId).append(InfluxDBSqlConstant.QM)
.append(InfluxDBSqlConstant.AND).append(InfluxDBTableConstant.VALUE_TYPE).append(InfluxDBSqlConstant.EQ).append(InfluxDBSqlConstant.QM).append(data.getStatMethod()).append(InfluxDBSqlConstant.QM)
.append(InfluxDBSqlConstant.AND).append(InfluxDBTableConstant.PHASIC_TYPE).append(InfluxDBSqlConstant.EQ).append(InfluxDBSqlConstant.QM).append(data.getPhase()).append(InfluxDBSqlConstant.QM)
.append(InfluxDBSqlConstant.TZ);
//cp95函数特殊处理 PERCENTILE(field_key, N)
if (InfluxDBSqlConstant.CP95.equals(method)){
sql.append(method).append(InfluxDBSqlConstant.LBK).append(data.getTemplateName()).append(InfluxDBSqlConstant.NUM_95).append(InfluxDBSqlConstant.RBK).append(InfluxDBSqlConstant.AS_VALUE);
}else{
sql.append(method).append(InfluxDBSqlConstant.LBK).append(data.getTemplateName()).append(InfluxDBSqlConstant.RBK).append(InfluxDBSqlConstant.AS_VALUE);
}
sql.append(InfluxDBSqlConstant.FROM).append(data.getClassId())
.append(InfluxDBSqlConstant.WHERE).append(InfluxDBTableConstant.LINE_ID).append(InfluxDBSqlConstant.EQ).append(InfluxDBSqlConstant.QM).append(lineId).append(InfluxDBSqlConstant.QM)
.append(InfluxDBSqlConstant.AND).append(InfluxDBTableConstant.VALUE_TYPE).append(InfluxDBSqlConstant.EQ).append(InfluxDBSqlConstant.QM).append(data.getStatMethod()).append(InfluxDBSqlConstant.QM)
.append(InfluxDBSqlConstant.AND).append(InfluxDBTableConstant.PHASIC_TYPE).append(InfluxDBSqlConstant.EQ).append(InfluxDBSqlConstant.QM).append(data.getPhase()).append(InfluxDBSqlConstant.QM)
.append(InfluxDBSqlConstant.TZ);
}
//根据不同的库表赋值