134 lines
4.9 KiB
Java
134 lines
4.9 KiB
Java
package com.muyu.controller;
|
||
|
||
import com.muyu.common.core.domain.Result;
|
||
import com.muyu.common.domain.RuleData;
|
||
import com.muyu.common.domain.RuleVersion;
|
||
import com.muyu.common.domain.req.RuleDataAddReq;
|
||
import com.muyu.common.domain.req.RuleDataUpdReq;
|
||
import com.muyu.common.domain.req.RuleVersionAddReq;
|
||
import com.muyu.common.domain.req.RuleVersionUpdReq;
|
||
import com.muyu.common.domain.resp.RuleVersionResp;
|
||
import com.muyu.servier.RuleVersionService;
|
||
import com.muyu.upload.ALiYunUpload;
|
||
import io.swagger.v3.oas.annotations.Operation;
|
||
import io.swagger.v3.oas.annotations.media.Schema;
|
||
import io.swagger.v3.oas.annotations.tags.Tag;
|
||
import lombok.extern.log4j.Log4j2;
|
||
import org.springframework.beans.factory.annotation.Autowired;
|
||
import org.springframework.validation.annotation.Validated;
|
||
import org.springframework.web.bind.annotation.*;
|
||
|
||
import java.util.List;
|
||
|
||
/**
|
||
* @Author:蓬叁
|
||
* @Package:com.muyu.controller
|
||
* @Project:cloud-rule
|
||
* @name:RuleVersionController
|
||
* @Date:2024/8/27 上午11:42
|
||
*/
|
||
@Log4j2
|
||
@RestController
|
||
@RequestMapping("/ruleVersion")
|
||
@Tag(name = "规则版本控制层",description = "进行版本制定,查看等操作")
|
||
public class RuleVersionController {
|
||
|
||
@Autowired private RuleVersionService ruleVersionService;
|
||
|
||
/**
|
||
* 查询规则版本接口
|
||
* @param ruleId
|
||
* @return 查询结果
|
||
*/
|
||
@RequestMapping(path = "/list/{ruleId}",method = RequestMethod.POST)
|
||
@Operation(summary = "查询接口规则版本", description = "对当前规则下的版本进行查询版本信息")
|
||
public Result<List<RuleVersionResp>> selectList(
|
||
@PathVariable("ruleId") Long ruleId
|
||
){
|
||
return Result.success(ruleVersionService.selectList(ruleId));
|
||
}
|
||
|
||
/**
|
||
* 规则版本接口添加
|
||
* @param ruleVersionAddReq
|
||
* @return 添加结果
|
||
*/
|
||
@PostMapping("/add")
|
||
@Operation(summary = "规则版本接口添加",description = "根据客户需求创建对应规则版本")
|
||
public Result<String> add(
|
||
@Validated @RequestBody RuleVersionAddReq ruleVersionAddReq
|
||
){
|
||
ruleVersionService.save(RuleVersion.addBuild(ruleVersionAddReq));
|
||
Result<Object> objectResult = ALiYunUpload.uploadFiles(ruleVersionAddReq.getRuleVersionText(), ruleVersionAddReq.getRuleVersionType());
|
||
System.out.println(objectResult.getMsg());
|
||
return Result.success(null,"操作成功");
|
||
}
|
||
|
||
/**
|
||
* 规则版本接口修改
|
||
* @param ruleVersionId
|
||
* @param ruleVersionUpdReq
|
||
* @return 修改结果
|
||
*/
|
||
@PutMapping("/upd/{ruleVersionId}")
|
||
@Operation(summary = "规则版本接口修改",description = "对激活、测试、状态等进行修改")
|
||
public Result<String> update(
|
||
@Schema(title = "客户ID",type = "Long",defaultValue = "1",description = "修改接口规则版本信息需要唯一条件")
|
||
@PathVariable("ruleVersionId") Long ruleVersionId,
|
||
@Validated @RequestBody RuleVersionUpdReq ruleVersionUpdReq){
|
||
ruleVersionService.updateStatus(ruleVersionId,ruleVersionUpdReq);
|
||
return Result.success(null,"操作成功");
|
||
}
|
||
|
||
/**
|
||
* 根据ID获取规则版本信息
|
||
* @param ruleVersionId
|
||
* @return ID查询返回信息
|
||
*/
|
||
@GetMapping("/{ruleVersionId}")
|
||
@Operation(summary = "根据ID获取规则版本信息",description = "通过ID获取接口规则版本信息")
|
||
public Result<RuleVersion> findById(@PathVariable("ruleVersionId") Long ruleVersionId){
|
||
return Result.success(ruleVersionService.getById(ruleVersionId),"操作成功");
|
||
}
|
||
|
||
/**
|
||
*通过ID关闭激活
|
||
* @param ruleVersionId 请求ID
|
||
* @return 禁用结果
|
||
*/
|
||
@GetMapping("/unstart/{ruleVersionId}")
|
||
@Operation(summary = "通过ID关闭激活",description = "通过ID关闭激活之后,禁止用户在使用此规则")
|
||
public Result<String> unstart(@PathVariable("ruleVersionId") Long ruleVersionId){
|
||
this.ruleVersionService.unstart(ruleVersionId);
|
||
return Result.success(null,"操作成功");
|
||
}
|
||
|
||
/**
|
||
*通过ID启动激活
|
||
* @param ruleVersionId 请求ID
|
||
* @return 启动结果
|
||
*/
|
||
@GetMapping("/start/{ruleVersionId}")
|
||
@Operation(summary = "通过ID启动激活",description = "通过ID启动激活之后,禁止用户在使用此规则")
|
||
public Result<String> start(@PathVariable("ruleVersionId") Long ruleVersionId){
|
||
this.ruleVersionService.start(ruleVersionId);
|
||
return Result.success(null,"操作成功");
|
||
}
|
||
|
||
/**
|
||
* 生成规则版本代码
|
||
* @param ruleVersion
|
||
* @return 生成结果
|
||
*/
|
||
@PostMapping("/generatedCode")
|
||
@Operation(summary = "生成规则版本代码",description = "通过名称和编码生成版本类")
|
||
public Result<RuleVersion> generatedCode(
|
||
@Validated @RequestBody RuleVersion ruleVersion
|
||
){
|
||
return Result.success(ruleVersionService.generatedCode(ruleVersion));
|
||
}
|
||
|
||
|
||
|
||
}
|