模板解析功能提交

This commit is contained in:
2023-05-18 16:31:06 +08:00
parent 16c933d631
commit ce93551bf1
15 changed files with 230 additions and 10 deletions

View File

@@ -0,0 +1,24 @@
package com.njcn.algorithm.api;
import com.njcn.algorithm.api.fallback.CsEdDataFeignClientFallbackFactory;
import com.njcn.algorithm.pojo.dto.CsDictDTO;
import com.njcn.algorithm.pojo.po.CsEdDataPO;
import com.njcn.algorithm.pojo.vo.CsEdDataVO;
import com.njcn.common.pojo.constant.ServerInfo;
import com.njcn.common.pojo.response.HttpResult;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestParam;
import java.util.List;
/**
* @author xy
*/
@FeignClient(value = ServerInfo.ALGORITHM_BOOT, path = "/dict", fallbackFactory = CsEdDataFeignClientFallbackFactory.class,contextId = "edData")
public interface CsDictFeignClient {
@PostMapping("/getOwnAndFatherData")
HttpResult<CsDictDTO> getOwnAndFatherData(@RequestParam("name")String name);
}

View File

@@ -5,12 +5,20 @@ import com.njcn.algorithm.pojo.param.CsDevModelAddParm;
import com.njcn.algorithm.pojo.param.CsDevModelQueryListParm;
import com.njcn.algorithm.pojo.po.CsDevModelPO;
import com.njcn.algorithm.pojo.vo.CsDevModelPageVO;
import com.njcn.common.pojo.annotation.OperateInfo;
import com.njcn.common.pojo.constant.ServerInfo;
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 io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
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;
import org.springframework.web.bind.annotation.RequestParam;
/**
* @author xy
@@ -24,4 +32,7 @@ public interface DevModelFeignClient {
@PostMapping("/queryDevModelOne")
HttpResult<CsDevModelPageVO> queryDevModelOne(@RequestBody CsDevModelQueryListParm csDevModelQueryListParm);
@PostMapping("/findModel")
HttpResult<CsDevModelPO> findModel(@RequestParam("devType") String devType, @RequestParam("version") String version, @RequestParam("time") String time);
}

View File

@@ -0,0 +1,40 @@
package com.njcn.algorithm.api.fallback;
import com.njcn.algorithm.api.CsDictFeignClient;
import com.njcn.algorithm.api.CsEdDataFeignClient;
import com.njcn.algorithm.pojo.dto.CsDictDTO;
import com.njcn.algorithm.pojo.po.CsEdDataPO;
import com.njcn.algorithm.pojo.vo.CsEdDataVO;
import com.njcn.common.pojo.enums.response.CommonResponseEnum;
import com.njcn.common.pojo.exception.BusinessException;
import com.njcn.common.pojo.response.HttpResult;
import feign.hystrix.FallbackFactory;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Component;
import java.util.List;
/**
* @author xy
*/
@Slf4j
@Component
public class CsDictFeignClientFallbackFactory implements FallbackFactory<CsDictFeignClient> {
@Override
public CsDictFeignClient create(Throwable cause) {
//判断抛出异常是否为解码器抛出的业务异常
Enum<?> exceptionEnum = CommonResponseEnum.SERVICE_FALLBACK;
if (cause.getCause() instanceof BusinessException) {
BusinessException businessException = (BusinessException) cause.getCause();
}
Enum<?> finalExceptionEnum = exceptionEnum;
return new CsDictFeignClient() {
@Override
public HttpResult<CsDictDTO> getOwnAndFatherData(String name) {
log.error("{}异常,降级处理,异常为:{}","获取指标自身和父级信息",cause.toString());
throw new BusinessException(finalExceptionEnum);
}
};
}
}

View File

@@ -46,6 +46,12 @@ public class DevModelFeignClientFallbackFactory implements FallbackFactory<DevMo
log.error("{}异常,降级处理,异常为:{}","查询模板版本信息",cause.toString());
throw new BusinessException(finalExceptionEnum);
}
@Override
public HttpResult<CsDevModelPO> findModel(String devType, String version, String time) {
log.error("{}异常,降级处理,异常为:{}","根据条件查询模板",cause.toString());
throw new BusinessException(finalExceptionEnum);
}
};
}
}

View File

@@ -0,0 +1,25 @@
package com.njcn.algorithm.pojo.dto;
import lombok.Data;
import java.io.Serializable;
/**
* 类的介绍:
*
* @author xuyang
* @version 1.0.0
* @createTime 2023/5/18 11:08
*/
@Data
public class CsDictDTO implements Serializable {
private String id;
private String name;
private String fatherId;
private String fatherName;
}

View File

@@ -5,6 +5,7 @@ import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.time.LocalDateTime;
import java.util.Date;
/**
@@ -43,7 +44,7 @@ public class CsDevModelAddParm {
@ApiModelProperty(value = "版本日期")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
private Date versionDate;
private LocalDateTime versionDate;
/**
* 装置模板文件路径
@@ -51,5 +52,6 @@ public class CsDevModelAddParm {
@ApiModelProperty(value = "装置模板文件路径")
private String filePath;
@ApiModelProperty(value = "系统软件表Id")
private String softInfoId;
}

View File

@@ -7,6 +7,7 @@ import com.baomidou.mybatisplus.annotation.TableName;
import com.njcn.db.bo.BaseEntity;
import lombok.Data;
import java.time.LocalDateTime;
import java.util.Date;
/**
@@ -52,7 +53,7 @@ public class CsDevModelPO extends BaseEntity {
* 版本日期
*/
@TableField(value = "version_date")
private Date versionDate;
private LocalDateTime versionDate;
/**
* 装置模板文件路径
@@ -66,4 +67,7 @@ public class CsDevModelPO extends BaseEntity {
*/
@TableField(value = "status")
private String status;
@TableField(value = "soft_info_id")
private String softInfoId;
}