diff --git a/muyu-modules/muyu-rule_engine/muyu-rule_engine-common/src/main/java/com/muyu/ruleEngine/domain/resp/EngineVersionListResp.java b/muyu-modules/muyu-rule_engine/muyu-rule_engine-common/src/main/java/com/muyu/ruleEngine/domain/resp/EngineVersionListResp.java new file mode 100644 index 0000000..ffdf650 --- /dev/null +++ b/muyu-modules/muyu-rule_engine/muyu-rule_engine-common/src/main/java/com/muyu/ruleEngine/domain/resp/EngineVersionListResp.java @@ -0,0 +1,55 @@ +package com.muyu.ruleEngine.domain.resp; + +import com.muyu.ruleEngine.domain.EngineVersion; +import java.util.List; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; +import lombok.experimental.SuperBuilder; + +/** + * 引擎版本 + * + * @author HuFangMing + * @ClassName: EngineVersionListResp + * @createTime: 2024/5/9 14:21 + */ + +@Data +@SuperBuilder +@AllArgsConstructor +@NoArgsConstructor +public class EngineVersionListResp { +/**编号*/ +private Long id; +/**名称*/ +private String name; +/** + * 类型 + */ +private Long type; +/**作用域*/ +private Integer scope; +/** + * 引擎编码 + * + */ +private String engineCode; +/** + * 是否激活 + */ +private String isActivate; +/** + * 状态 + */ +private String status; +/** + * 描述 + */ +private String description; + +/** + * 规则引擎版本列表 + */ +private List engineVersionList; +} diff --git a/muyu-modules/muyu-rule_engine/muyu-rule_engine-server/src/main/java/com/muyu/ruleEngine/controller/EngineConfigController.java b/muyu-modules/muyu-rule_engine/muyu-rule_engine-server/src/main/java/com/muyu/ruleEngine/controller/EngineConfigController.java index 5346986..464088f 100644 --- a/muyu-modules/muyu-rule_engine/muyu-rule_engine-server/src/main/java/com/muyu/ruleEngine/controller/EngineConfigController.java +++ b/muyu-modules/muyu-rule_engine/muyu-rule_engine-server/src/main/java/com/muyu/ruleEngine/controller/EngineConfigController.java @@ -43,35 +43,8 @@ public class EngineConfigController extends BaseController { @Autowired private EngineConfigService engineConfigService; - /** - * 获取引擎配置作用域列表 - */ - @ApiOperation("获取引擎配置作用域列表") - @RequiresPermissions("rule_engine:config:list") - @GetMapping("/getScopeList") - public Result> getScopeList() { - return Result.success(engineConfigService.getScopeList()); - } - - /** - * 通过引擎作用域编号获取引擎配置作用域信息 - */ - @ApiOperation("通过引擎作用域编号获取引擎配置作用域信息") - @RequiresPermissions("rule_engine:config:list") - @GetMapping("/getScopeInfo/{id}") - public Result getScopeInfoById(@PathVariable Integer id) { - return Result.success(engineConfigService.getScopeInfoById(id)); - } - /** - * 生成引擎版本类并返回规则模版 - */ - @PostMapping("/createVersionClass") - @RequiresPermissions("ruleEngine:config:createVersionClass") - public Result createVersionClass(@RequestBody VersionClassCreateReq versionClassCreateReq) { - return Result.success(engineConfigService.createVersionClass(versionClassCreateReq)); - } } diff --git a/muyu-modules/muyu-rule_engine/muyu-rule_engine-server/src/main/java/com/muyu/ruleEngine/controller/EngineMaintenanceController.java b/muyu-modules/muyu-rule_engine/muyu-rule_engine-server/src/main/java/com/muyu/ruleEngine/controller/EngineMaintenanceController.java index dfbf75e..6623524 100644 --- a/muyu-modules/muyu-rule_engine/muyu-rule_engine-server/src/main/java/com/muyu/ruleEngine/controller/EngineMaintenanceController.java +++ b/muyu-modules/muyu-rule_engine/muyu-rule_engine-server/src/main/java/com/muyu/ruleEngine/controller/EngineMaintenanceController.java @@ -1,5 +1,6 @@ package com.muyu.ruleEngine.controller; +import com.muyu.ruleEngine.domain.resp.EngineVersionListResp; import java.util.List; import javax.servlet.http.HttpServletResponse; import com.muyu.common.core.utils.poi.ExcelUtil; @@ -132,4 +133,14 @@ public class EngineMaintenanceController extends BaseController { public Result remove(@PathVariable List ids) { return toAjax(engineMaintenanceService.removeBatchEngineMaintenanceByIds(ids)); } + + /** + * 查询规则引擎版本列表 + */ +@RequiresPermissions("rule_engine:maintenance:edit") +@PutMapping("/getRuleEngineInfo/{id}") + public Result getRuleEngineInfo(@PathVariable Long id){ + EngineVersionListResp engineConfigListResp=engineMaintenanceService.getRuleEngineInfo(id); + return Result.success(engineConfigListResp); +} } diff --git a/muyu-modules/muyu-rule_engine/muyu-rule_engine-server/src/main/java/com/muyu/ruleEngine/controller/EngineVersionController.java b/muyu-modules/muyu-rule_engine/muyu-rule_engine-server/src/main/java/com/muyu/ruleEngine/controller/EngineVersionController.java index a7a731d..04132d5 100644 --- a/muyu-modules/muyu-rule_engine/muyu-rule_engine-server/src/main/java/com/muyu/ruleEngine/controller/EngineVersionController.java +++ b/muyu-modules/muyu-rule_engine/muyu-rule_engine-server/src/main/java/com/muyu/ruleEngine/controller/EngineVersionController.java @@ -12,6 +12,7 @@ import com.muyu.ruleEngine.domain.req.EngineConfigEditReq; import com.muyu.ruleEngine.domain.req.EngineConfigQueryReq; import com.muyu.ruleEngine.domain.req.EngineConfigSaveReq; import com.muyu.ruleEngine.domain.req.VersionClassCreateReq; +import com.muyu.ruleEngine.domain.resp.EngineConfigScopeResp; import com.muyu.ruleEngine.domain.resp.VersionClassCreateResp; import com.muyu.ruleEngine.service.EngineVersionService; import io.swagger.annotations.Api; @@ -108,4 +109,23 @@ public class EngineVersionController extends BaseController { return toAjax(engineVersionService.removeBatchByIds(ids)); } + /** + * 获取引擎配置作用域列表 + */ + @ApiOperation("获取引擎配置作用域列表") + @RequiresPermissions("rule_engine:config:list") + @GetMapping("/getScopeList") + public Result> getScopeList() { + return Result.success(engineVersionService.getScopeList()); + } + + /** + * 通过引擎作用域编号获取引擎配置作用域信息 + */ + @ApiOperation("通过引擎作用域编号获取引擎配置作用域信息") + @RequiresPermissions("rule_engine:config:list") + @GetMapping("/getScopeInfo/{id}") + public Result getScopeInfoById(@PathVariable Integer id) { + return Result.success(engineVersionService.getScopeInfoById(id)); + } } diff --git a/muyu-modules/muyu-rule_engine/muyu-rule_engine-server/src/main/java/com/muyu/ruleEngine/service/EngineConfigService.java b/muyu-modules/muyu-rule_engine/muyu-rule_engine-server/src/main/java/com/muyu/ruleEngine/service/EngineConfigService.java index ce48093..0930c25 100644 --- a/muyu-modules/muyu-rule_engine/muyu-rule_engine-server/src/main/java/com/muyu/ruleEngine/service/EngineConfigService.java +++ b/muyu-modules/muyu-rule_engine/muyu-rule_engine-server/src/main/java/com/muyu/ruleEngine/service/EngineConfigService.java @@ -15,23 +15,9 @@ import java.util.List; * @date 2024-05-02 */ public interface EngineConfigService { - /** - * 查询引擎配置作用域列表 - * - * @return 引擎规则作用域集合 - */ - public List getScopeList(); - /** - * 通过引擎作用域编号获取引擎配置作用域信息 - * @param id 引擎作用域编号 - * @return 引擎配置作用域信息 - */ - EngineConfigScopeResp getScopeInfoById(Integer id); - - diff --git a/muyu-modules/muyu-rule_engine/muyu-rule_engine-server/src/main/java/com/muyu/ruleEngine/service/EngineMaintenanceService.java b/muyu-modules/muyu-rule_engine/muyu-rule_engine-server/src/main/java/com/muyu/ruleEngine/service/EngineMaintenanceService.java index d053e8b..d64c9b6 100644 --- a/muyu-modules/muyu-rule_engine/muyu-rule_engine-server/src/main/java/com/muyu/ruleEngine/service/EngineMaintenanceService.java +++ b/muyu-modules/muyu-rule_engine/muyu-rule_engine-server/src/main/java/com/muyu/ruleEngine/service/EngineMaintenanceService.java @@ -1,5 +1,6 @@ package com.muyu.ruleEngine.service; +import com.muyu.ruleEngine.domain.resp.EngineVersionListResp; import java.util.List; import com.muyu.ruleEngine.domain.EngineMaintenance; import com.baomidou.mybatisplus.extension.service.IService; @@ -38,4 +39,6 @@ public interface EngineMaintenanceService extends IService { * @param id 引擎维护编号 */ void updateCloseStatus(Long id); + + EngineVersionListResp getRuleEngineInfo(Long id); } diff --git a/muyu-modules/muyu-rule_engine/muyu-rule_engine-server/src/main/java/com/muyu/ruleEngine/service/EngineVersionService.java b/muyu-modules/muyu-rule_engine/muyu-rule_engine-server/src/main/java/com/muyu/ruleEngine/service/EngineVersionService.java index 68c6846..e51ac12 100644 --- a/muyu-modules/muyu-rule_engine/muyu-rule_engine-server/src/main/java/com/muyu/ruleEngine/service/EngineVersionService.java +++ b/muyu-modules/muyu-rule_engine/muyu-rule_engine-server/src/main/java/com/muyu/ruleEngine/service/EngineVersionService.java @@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.extension.service.IService; import com.muyu.ruleEngine.domain.EngineVersion; import com.muyu.ruleEngine.domain.model.TestData; import com.muyu.ruleEngine.domain.req.VersionClassCreateReq; +import com.muyu.ruleEngine.domain.resp.EngineConfigScopeResp; import com.muyu.ruleEngine.domain.resp.VersionClassCreateResp; import java.util.List; @@ -37,4 +38,20 @@ public interface EngineVersionService extends IService { * @return 版本创建响应类 */ VersionClassCreateResp createVersionClass(VersionClassCreateReq req); + + /** + * 查询引擎配置作用域列表 + * + * @return 引擎规则作用域集合 + */ + public List getScopeList(); + + + + /** + * 通过引擎作用域编号获取引擎配置作用域信息 + * @param id 引擎作用域编号 + * @return 引擎配置作用域信息 + */ + EngineConfigScopeResp getScopeInfoById(Integer id); } diff --git a/muyu-modules/muyu-rule_engine/muyu-rule_engine-server/src/main/java/com/muyu/ruleEngine/service/impl/EngineConfigServiceImpl.java b/muyu-modules/muyu-rule_engine/muyu-rule_engine-server/src/main/java/com/muyu/ruleEngine/service/impl/EngineConfigServiceImpl.java index f4faae6..af46ada 100644 --- a/muyu-modules/muyu-rule_engine/muyu-rule_engine-server/src/main/java/com/muyu/ruleEngine/service/impl/EngineConfigServiceImpl.java +++ b/muyu-modules/muyu-rule_engine/muyu-rule_engine-server/src/main/java/com/muyu/ruleEngine/service/impl/EngineConfigServiceImpl.java @@ -36,56 +36,9 @@ import java.util.Map; @Service public class EngineConfigServiceImpl implements EngineConfigService { - /** - * 查询引擎配置作用域列表 - * - * @return 引擎规则作用域集合 - */ - @Override - public List getScopeList() { - List list=new ArrayList<>(); - try { - int index=0; - for (String scope : ConfigCodeConstants.CONFIG_FILE_NAME_ARRAY) { - if(index==0){ - index++; - continue; - } - String path=ConfigCodeConstants.BASE_FILE_PATH+scope; - String code = Files.readString(Paths.get(path)); - String type=ConfigCodeConstants.CONFIG_FILE_TYPE_ARRAY[index++]; - list.add(EngineConfigScopeResp.builder().type(type).name(scope).code(code).build()); - } - } catch (IOException e) { - throw new RuntimeException(e); - } - return list; - } - - - /** - * 通过引擎作用域编号获取引擎配置作用域信息 - * @param id 引擎作用域编号 - * @return 引擎配置作用域信息 - */ - @Override - public EngineConfigScopeResp getScopeInfoById(Integer id) { - String scope=ConfigCodeConstants.CONFIG_FILE_NAME_ARRAY[id]; - String type=ConfigCodeConstants.CONFIG_FILE_TYPE_ARRAY[id]; - String path=ConfigCodeConstants.BASE_FILE_PATH+scope; - String code = null; - try { - code = Files.readString(Paths.get(path)); - } catch (IOException e) { - throw new RuntimeException(e); - } - return EngineConfigScopeResp.builder().type(type).name(scope).code(code).build(); - } - - @Override public VersionClassCreateResp createVersionClass(VersionClassCreateReq versionClassCreateReq) { diff --git a/muyu-modules/muyu-rule_engine/muyu-rule_engine-server/src/main/java/com/muyu/ruleEngine/service/impl/EngineMaintenanceServiceImpl.java b/muyu-modules/muyu-rule_engine/muyu-rule_engine-server/src/main/java/com/muyu/ruleEngine/service/impl/EngineMaintenanceServiceImpl.java index 58e8c3a..ebed40d 100644 --- a/muyu-modules/muyu-rule_engine/muyu-rule_engine-server/src/main/java/com/muyu/ruleEngine/service/impl/EngineMaintenanceServiceImpl.java +++ b/muyu-modules/muyu-rule_engine/muyu-rule_engine-server/src/main/java/com/muyu/ruleEngine/service/impl/EngineMaintenanceServiceImpl.java @@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.muyu.common.core.utils.ObjUtils; import com.muyu.ruleEngine.domain.EngineMaintenance; import com.muyu.ruleEngine.domain.EngineVersion; +import com.muyu.ruleEngine.domain.resp.EngineVersionListResp; import com.muyu.ruleEngine.mapper.EngineMaintenanceMapper; import com.muyu.ruleEngine.service.EngineMaintenanceService; @@ -99,5 +100,27 @@ public class EngineMaintenanceServiceImpl extends ServiceImpl() {{ + eq(EngineMaintenance::getId, id); + }}); + List engineVersions = engineVersionService.list(); + List engineVersionList = engineVersions.stream().filter(engineVersion -> + engineVersion.getEngineMaintenanceId().equals(engineMaintenance.getId()) + ).toList(); + return EngineVersionListResp.builder() + .id(engineMaintenance.getId()) + .name(engineMaintenance.getName()) + .type(engineMaintenance.getType()) + .scope(engineMaintenance.getScope()) + .engineCode(engineMaintenance.getEngineCode()) + .isActivate(engineMaintenance.getIsActivate()) + .status(engineMaintenance.getStatus()) + .description(engineMaintenance.getDescription()) + .engineVersionList(engineVersionList) + .build(); + } + } diff --git a/muyu-modules/muyu-rule_engine/muyu-rule_engine-server/src/main/java/com/muyu/ruleEngine/service/impl/EngineVersionServiceImpl.java b/muyu-modules/muyu-rule_engine/muyu-rule_engine-server/src/main/java/com/muyu/ruleEngine/service/impl/EngineVersionServiceImpl.java index 259997a..916d1c8 100644 --- a/muyu-modules/muyu-rule_engine/muyu-rule_engine-server/src/main/java/com/muyu/ruleEngine/service/impl/EngineVersionServiceImpl.java +++ b/muyu-modules/muyu-rule_engine/muyu-rule_engine-server/src/main/java/com/muyu/ruleEngine/service/impl/EngineVersionServiceImpl.java @@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.muyu.common.core.exception.ServiceException; import com.muyu.common.core.utils.ObjUtils; +import com.muyu.ruleEngine.constant.ConfigCodeConstants; import com.muyu.ruleEngine.constant.EngineVersionConstants; import com.muyu.ruleEngine.constant.RuleOperationConstants; import com.muyu.ruleEngine.domain.EngineVersion; @@ -15,6 +16,10 @@ import com.muyu.ruleEngine.dynamicLoad.DynamicLoader; import com.muyu.ruleEngine.mapper.EngineVersionMapper; import com.muyu.ruleEngine.service.EngineConfigService; import com.muyu.ruleEngine.service.EngineVersionService; +import java.io.IOException; +import java.nio.file.Files; +import java.nio.file.Paths; +import java.util.ArrayList; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -33,7 +38,7 @@ import java.util.Map; public class EngineVersionServiceImpl extends ServiceImpl implements EngineVersionService { @Autowired - private EngineConfigService engineConfigService; + private EngineVersionService engineVersionService; /** * 查询引擎规则配置列表 @@ -102,7 +107,7 @@ public class EngineVersionServiceImpl extends ServiceImpl getScopeList() { + List list=new ArrayList<>(); + try { + int index=0; + for (String scope : ConfigCodeConstants.CONFIG_FILE_NAME_ARRAY) { + if(index==0){ + index++; + continue; + } + String path=ConfigCodeConstants.BASE_FILE_PATH+scope; + String code = Files.readString(Paths.get(path)); + String type=ConfigCodeConstants.CONFIG_FILE_TYPE_ARRAY[index++]; + list.add(EngineConfigScopeResp.builder().type(type).name(scope).code(code).build()); + } + } catch (IOException e) { + throw new RuntimeException(e); + } + return list; + } + + + + /** + * 通过引擎作用域编号获取引擎配置作用域信息 + * @param id 引擎作用域编号 + * @return 引擎配置作用域信息 + */ + @Override + public EngineConfigScopeResp getScopeInfoById(Integer id) { + String scope=ConfigCodeConstants.CONFIG_FILE_NAME_ARRAY[id]; + String type=ConfigCodeConstants.CONFIG_FILE_TYPE_ARRAY[id]; + String path=ConfigCodeConstants.BASE_FILE_PATH+scope; + String code = null; + try { + code = Files.readString(Paths.get(path)); + } catch (IOException e) { + throw new RuntimeException(e); + } + return EngineConfigScopeResp.builder().type(type).name(scope).code(code).build(); + } + }