1.定时任务提交

This commit is contained in:
wr
2024-01-09 10:59:19 +08:00
parent 51c5843cb7
commit 7f7d7cf058
10 changed files with 179 additions and 8 deletions

View File

@@ -0,0 +1,24 @@
package com.njcn.harmonic.api;
import com.njcn.common.pojo.constant.ServerInfo;
import com.njcn.common.pojo.response.HttpResult;
import com.njcn.harmonic.api.fallback.PqTypicalSourceFallbackFactory;
import com.njcn.harmonic.pojo.param.UploadParam;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
/**
* @author xuyang
*/
@FeignClient(
value = ServerInfo.HARMONIC,
path = "/pqTypicalSourceCreate",
fallbackFactory = PqTypicalSourceFallbackFactory.class,
contextId = "pqTypicalSourceCreate")
public interface PqTypicalSourceFeignClient {
@PostMapping("/send")
HttpResult<String> send(@RequestBody UploadParam uploadParam);
}

View File

@@ -0,0 +1,39 @@
package com.njcn.harmonic.api.fallback;
import com.njcn.common.pojo.enums.response.CommonResponseEnum;
import com.njcn.common.pojo.exception.BusinessException;
import com.njcn.common.pojo.response.HttpResult;
import com.njcn.harmonic.api.PqTypicalSourceFeignClient;
import com.njcn.harmonic.pojo.param.UploadParam;
import com.njcn.harmonic.utils.HarmonicEnumUtil;
import feign.hystrix.FallbackFactory;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Component;
/**
* @author xuyang
* @version 1.0.0
* @date 2023年12月15日 13:50
*/
@Slf4j
@Component
public class PqTypicalSourceFallbackFactory implements FallbackFactory<PqTypicalSourceFeignClient> {
@Override
public PqTypicalSourceFeignClient create(Throwable throwable) {
//判断抛出异常是否为解码器抛出的业务异常
Enum<?> exceptionEnum = CommonResponseEnum.SERVICE_FALLBACK;
if (throwable.getCause() instanceof BusinessException) {
BusinessException businessException = (BusinessException) throwable.getCause();
exceptionEnum = HarmonicEnumUtil.getExceptionEnum(businessException.getResult());
}
Enum<?> finalExceptionEnum = exceptionEnum;
return new PqTypicalSourceFeignClient() {
@Override
public HttpResult<String> send(UploadParam uploadParam) {
log.error("{}异常,降级处理,异常为:{}", "国网上送-典型源荷指标统计数据", throwable.toString());
throw new BusinessException(finalExceptionEnum);
}
};
}
}