107 lines
3.5 KiB
Java
107 lines
3.5 KiB
Java
package com.muyu.controller;
|
||
|
||
import com.muyu.common.core.domain.Result;
|
||
import com.muyu.common.core.utils.poi.ExcelUtil;
|
||
import com.muyu.common.security.annotation.RequiresPermissions;
|
||
import com.muyu.domain.EngineVersion;
|
||
import com.muyu.domain.model.TestData;
|
||
import com.muyu.req.EngineVersionQueryReq;
|
||
import com.muyu.req.VersionClassCreateReq;
|
||
import com.muyu.resp.EngineConfigScopeResp;
|
||
import com.muyu.resp.VersionClassCreateResp;
|
||
import com.muyu.service.EngineVersionService;
|
||
import jakarta.servlet.http.HttpServletResponse;
|
||
import org.springframework.beans.factory.annotation.Autowired;
|
||
import org.springframework.web.bind.annotation.*;
|
||
|
||
import java.util.List;
|
||
|
||
/**
|
||
* @Author:qdm
|
||
* @Package:com.muyu.controller
|
||
* @Project:cloud-etl-engine
|
||
* @name:EngineVersionController
|
||
* @Date:2024/8/22 21:59
|
||
*/
|
||
@RestController
|
||
@RequestMapping("/version")
|
||
public class EngineVersionController {
|
||
|
||
@Autowired
|
||
EngineVersionService engineVersionService;
|
||
|
||
/**
|
||
* 查询引擎规则配置列表
|
||
*/
|
||
@GetMapping("/list")
|
||
public Result<List<EngineVersion>> list(EngineVersionQueryReq engineConfigQueryReq) {
|
||
return Result.success(engineVersionService.list(EngineVersion.queryBuild(engineConfigQueryReq)));
|
||
}
|
||
|
||
@PostMapping("/insert")
|
||
public Result<EngineVersion> insert(@RequestBody EngineVersion engineVersion) {
|
||
return engineVersionService.add(engineVersion);
|
||
}
|
||
|
||
@PostMapping("/update")
|
||
public EngineVersion update(@RequestBody EngineVersion engineVersion) {
|
||
return engineVersionService.updateMsg(engineVersion);
|
||
}
|
||
|
||
@PostMapping("/delete/{id}")
|
||
public Result delete(@PathVariable Long id) {
|
||
boolean b = engineVersionService.removeById(id);
|
||
return Result.success(b);
|
||
}
|
||
|
||
@GetMapping("/getVersion/{id}")
|
||
public Result<EngineVersion> getVersion(@PathVariable("id") Long id) {
|
||
EngineVersion engineVersion = engineVersionService.getById(id);
|
||
return Result.success(engineVersion);
|
||
}
|
||
|
||
/**
|
||
* 获取引擎配置作用域列表
|
||
*/
|
||
@GetMapping("/getScopeList")
|
||
public Result<List<EngineConfigScopeResp>> getScopeList() {
|
||
return Result.success(engineVersionService.getScopeList());
|
||
}
|
||
|
||
/**
|
||
* 通过引擎作用域编号获取引擎配置作用域信息
|
||
*/
|
||
@RequiresPermissions("rule-engine:version:list")
|
||
@GetMapping("/getScopeInfo/{id}")
|
||
public Result<EngineConfigScopeResp> getScopeInfoById(@PathVariable Integer id) {
|
||
return Result.success(engineVersionService.getScopeInfoById(id));
|
||
}
|
||
|
||
/**
|
||
* 测试引擎规则配置
|
||
*/
|
||
@PostMapping(value = "/test")
|
||
public Result<Object> ruleTest(@RequestBody TestData testData) {
|
||
return Result.success(engineVersionService.ruleTest(testData));
|
||
}
|
||
|
||
/**
|
||
* 创建代码版本类名和代码模板
|
||
*/
|
||
@PostMapping("/createVersionClass")
|
||
public Result<VersionClassCreateResp> createVersionClass(@RequestBody VersionClassCreateReq req) {
|
||
VersionClassCreateResp versionClassCreateResp = engineVersionService.createVersionClass(req);
|
||
return Result.success(versionClassCreateResp);
|
||
}
|
||
|
||
/**
|
||
* 导出
|
||
*/
|
||
@PostMapping("/export")
|
||
public void export(HttpServletResponse httpServletResponse, EngineVersion engineVersion) {
|
||
List<EngineVersion> list = engineVersionService.list();
|
||
ExcelUtil<EngineVersion> engineMaintenanceExcelUtil = new ExcelUtil<>(EngineVersion.class);
|
||
engineMaintenanceExcelUtil.exportExcel(httpServletResponse, list, "规则引擎版本");
|
||
}
|
||
}
|