cloud-etl-engine/cloud-etl-server/src/main/java/com/muyu/controller/EngineVersionController.java

107 lines
3.5 KiB
Java
Raw Blame History

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

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;
/**
* @Authorqdm
* @Packagecom.muyu.controller
* @Projectcloud-etl-engine
* @nameEngineVersionController
* @Date2024/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, "规则引擎版本");
}
}