feat:初始化数据资产客户端,规则引擎客户端

dev
gtl 2024-05-09 08:48:36 +08:00
parent 49606ab287
commit 81c1289111
77 changed files with 675 additions and 130 deletions

View File

@ -22,7 +22,12 @@ public class ServiceNameConstants {
public static final String FILE_SERVICE = "ruoyi-file";
/**
* serviceid
* serviceid
*/
public static final String PRODUCT_SERVICE = "ruoyi-product";
public static final String DATA_ACCESS_SERVICE = "ruoyi-data-asset";
/**
* serviceid
*/
public static final String RULE_ENGINE_SERVICE = "ruoyi-rule-engine";
}

View File

@ -15,6 +15,7 @@
<module>ruoyi-file</module>
<module>ruoyi-data_asset</module>
<module>ruoyi-rule_engine</module>
<module>ruoyi-data_transform</module>
</modules>
<artifactId>ruoyi-modules</artifactId>

View File

@ -18,6 +18,7 @@
<module>ruoyi-data_asset-common</module>
<module>ruoyi-data_asset-remote</module>
<module>ruoyi-data_asset-server</module>
<module>ruoyi-data_asset-client</module>
</modules>
<properties>

View File

@ -0,0 +1,27 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>com.muyu</groupId>
<artifactId>ruoyi-data_asset</artifactId>
<version>3.6.3</version>
</parent>
<groupId>com.ruoyi</groupId>
<artifactId>ruoyi-data_asset-client</artifactId>
<description>ruoyi-data_asset-client数据资产客户端模块</description>
<properties>
<maven.compiler.source>17</maven.compiler.source>
<maven.compiler.target>17</maven.compiler.target>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<dependencies>
<dependency>
<groupId>com.muyu</groupId>
<artifactId>ruoyi-data_asset-remote</artifactId>
<version>3.6.3</version>
</dependency>
</dependencies>
</project>

View File

@ -0,0 +1,34 @@
package com.ruoyi.dataAsset.config;
import com.ruoyi.common.core.domain.Result;
import com.ruoyi.common.core.web.page.TableDataInfo;
import com.ruoyi.dataAsset.domain.DataSource;
import com.ruoyi.dataAsset.domain.req.DataSourceQueryReq;
import com.ruoyi.dataAsset.remote.RemoteDataAssetService;
import lombok.extern.log4j.Log4j2;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.ApplicationArguments;
import org.springframework.boot.ApplicationRunner;
/**
*
* @ClassName DataAssetApplicationRunner
* @Author
* @Date 2024/5/8 20:41
*/
@Log4j2
public class DataAssetApplicationRunner implements ApplicationRunner {
@Autowired
private RemoteDataAssetService remoteDataAssetService;
@Override
public void run(ApplicationArguments args) throws Exception {
Result<TableDataInfo<DataSource>> result = remoteDataAssetService.list(new DataSourceQueryReq());
if(Result.isSuccess(result)){
log.info(result.getData());
}else {
log.error(result.getMsg());
}
}
}

View File

@ -0,0 +1,15 @@
package com.ruoyi.dataAsset.config;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Import;
/**
*
* @ClassName DataAssetClientConfig
* @Author
* @Date 2024/5/8 20:30
*/
@ComponentScan
@Import(DataAssetApplicationRunner.class)
public class DataAssetClientConfig {
}

View File

@ -24,6 +24,7 @@
<groupId>com.muyu</groupId>
<artifactId>muyu-common-core</artifactId>
</dependency>
<!-- 阿里 druid 数据库连接池 -->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid</artifactId>

View File

@ -18,5 +18,17 @@
<maven.compiler.target>17</maven.compiler.target>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<dependencies>
<!-- 数据资产公共模块 -->
<dependency>
<groupId>com.muyu</groupId>
<artifactId>ruoyi-data_asset-common</artifactId>
<version>3.6.3</version>
</dependency>
<!-- MuYu 公共 安全模块 -->
<dependency>
<groupId>com.muyu</groupId>
<artifactId>muyu-common-security</artifactId>
</dependency>
</dependencies>
</project>

View File

@ -0,0 +1,32 @@
package com.ruoyi.dataAsset.remote;
import com.ruoyi.common.core.constant.ServiceNameConstants;
import com.ruoyi.common.core.domain.Result;
import com.ruoyi.common.core.web.page.TableDataInfo;
import com.ruoyi.common.security.annotation.InnerAuth;
import com.ruoyi.dataAsset.domain.DataSource;
import com.ruoyi.dataAsset.domain.req.DataSourceQueryReq;
import com.ruoyi.dataAsset.remote.factory.RemoteDataAssetFactory;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;
/**
*
* @ClassName RemoteDataAssetService
* @Author
* @Date 2024/5/7 13:54
*/
@FeignClient(
contextId = "remoteDataAssetService",
value = ServiceNameConstants.DATA_ACCESS_SERVICE,
fallbackFactory = RemoteDataAssetFactory.class,
path = "/source"
)
public interface RemoteDataAssetService {
/**
*
*/
@GetMapping("/list")
public Result<TableDataInfo<DataSource>> list(@RequestParam("dataSourceQueryReq") DataSourceQueryReq dataSourceQueryReq);
}

View File

@ -0,0 +1,27 @@
package com.ruoyi.dataAsset.remote.factory;
import com.ruoyi.common.core.domain.Result;
import com.ruoyi.common.core.web.page.TableDataInfo;
import com.ruoyi.dataAsset.domain.DataSource;
import com.ruoyi.dataAsset.domain.req.DataSourceQueryReq;
import com.ruoyi.dataAsset.remote.RemoteDataAssetService;
import org.springframework.cloud.openfeign.FallbackFactory;
/**
*
* @ClassName RemoteDataAssetFactory
* @Author
* @Date 2024/5/7 11:59
*/
public class RemoteDataAssetFactory implements FallbackFactory<RemoteDataAssetService> {
@Override
public RemoteDataAssetService create(Throwable cause) {
return new RemoteDataAssetService() {
@Override
public Result<TableDataInfo<DataSource>> list(DataSourceQueryReq dataSourceQueryReq) {
return Result.error(cause.getMessage());
}
};
}
}

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<configuration scan="true" scanPeriod="60 seconds" debug="false">
<!-- 日志存放路径 -->
<property name="log.path" value="logs/muyu-etl"/>
<property name="log.path" value="logs/ruoyi-data_asset"/>
<!-- 日志输出格式 -->
<property name="log.pattern" value="%d{HH:mm:ss.SSS} [%thread] %-5level %logger{20} - [%method,%line] - %msg%n"/>

View File

@ -0,0 +1,102 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>com.muyu</groupId>
<artifactId>ruoyi-modules</artifactId>
<version>3.6.3</version>
</parent>
<artifactId>ruoyi-data_transform</artifactId>
<description>ruoyi-data_transform数据转换模块</description>
<properties>
<maven.compiler.source>17</maven.compiler.source>
<maven.compiler.target>17</maven.compiler.target>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<dependencies>
<!-- MuYu 公共 安全模块 -->
<dependency>
<groupId>com.muyu</groupId>
<artifactId>muyu-common-security</artifactId>
</dependency>
<!-- MuYu 公共 swagger -->
<dependency>
<groupId>com.muyu</groupId>
<artifactId>muyu-common-swagger</artifactId>
</dependency>
<!-- 数据资产客户端模块 -->
<dependency>
<groupId>com.ruoyi</groupId>
<artifactId>ruoyi-data_asset-client</artifactId>
<version>3.6.3</version>
</dependency>
<!-- 规则引擎客户端模块 -->
<dependency>
<groupId>com.ruoyi</groupId>
<artifactId>ruoyi-rule_engine-client</artifactId>
<version>3.6.3</version>
</dependency>
<!-- SpringCloud Alibaba Nacos -->
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
</dependency>
<!-- SpringCloud Alibaba Nacos Config -->
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
</dependency>
<!-- SpringCloud Alibaba Sentinel -->
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-sentinel</artifactId>
</dependency>
<!-- SpringBoot Actuator -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
<!-- Swagger UI -->
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger-ui</artifactId>
<version>${swagger.fox.version}</version>
</dependency>
<!-- Mysql Connector -->
<dependency>
<groupId>com.mysql</groupId>
<artifactId>mysql-connector-j</artifactId>
</dependency>
<!-- MuYu Common DataScope -->
<dependency>
<groupId>com.muyu</groupId>
<artifactId>muyu-common-datascope</artifactId>
</dependency>
<!-- MuYu Common Swagger -->
<dependency>
<groupId>com.muyu</groupId>
<artifactId>muyu-common-swagger</artifactId>
</dependency>
<!-- Sql Server 驱动 -->
<dependency>
<groupId>com.microsoft.sqlserver</groupId>
<artifactId>mssql-jdbc</artifactId>
<version>9.4.0.jre8</version>
</dependency>
</dependencies>
</project>

View File

@ -0,0 +1,23 @@
package com.ruoyi.dataTransform;
import com.ruoyi.common.security.annotation.EnableCustomConfig;
import com.ruoyi.common.security.annotation.EnableMyFeignClients;
import com.ruoyi.common.swagger.annotation.EnableCustomSwagger2;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration;
/**
* data_transform
*
* @author gtl
*/
@EnableCustomConfig
@EnableCustomSwagger2
@EnableMyFeignClients
@SpringBootApplication(exclude = {DataSourceAutoConfiguration.class})
public class GtlDataTransformApplication {
public static void main(String[] args) {
SpringApplication.run(GtlDataTransformApplication.class,args);
}
}

View File

@ -0,0 +1,8 @@
Spring Boot Version: ${spring-boot.version}
Spring Application Name: ${spring.application.name}
__ .__ .__
____ _/ |_ | | _______ __ __ ____ ___.__.|__|
/ ___\ \ __\| | ______ \_ __ \| | \ / _ \ < | || |
/ /_/ > | | | |__ /_____/ | | \/| | /( <_> ) \___ || |
\___ / |__| |____/ |__| |____/ \____/ / ____||__|
/_____/ \/

View File

@ -0,0 +1,30 @@
# Tomcat
server:
port: 9206
# Spring
spring:
application:
# 应用名称
name: ruoyi-data-transform
profiles:
# 环境配置
active: dev
cloud:
nacos:
discovery:
# 服务注册地址
server-addr: 47.98.98.250:8848
namespace: 143f1a53-e544-4782-8667-877c532e2c66
config:
# 配置中心地址
server-addr: 47.98.98.250:8848
namespace: 143f1a53-e544-4782-8667-877c532e2c66
# 配置文件格式
file-extension: yml
# 共享配置
shared-configs:
- application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension}
logging:
level:
com.ruoyi.dataTransform.mapper: DEBUG

View File

@ -0,0 +1,74 @@
<?xml version="1.0" encoding="UTF-8"?>
<configuration scan="true" scanPeriod="60 seconds" debug="false">
<!-- 日志存放路径 -->
<property name="log.path" value="logs/ruoyi-data_transform"/>
<!-- 日志输出格式 -->
<property name="log.pattern" value="%d{HH:mm:ss.SSS} [%thread] %-5level %logger{20} - [%method,%line] - %msg%n"/>
<!-- 控制台输出 -->
<appender name="console" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>${log.pattern}</pattern>
</encoder>
</appender>
<!-- 系统日志输出 -->
<appender name="file_info" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${log.path}/info.log</file>
<!-- 循环政策:基于时间创建日志文件 -->
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<!-- 日志文件名格式 -->
<fileNamePattern>${log.path}/info.%d{yyyy-MM-dd}.log</fileNamePattern>
<!-- 日志最大的历史 60天 -->
<maxHistory>60</maxHistory>
</rollingPolicy>
<encoder>
<pattern>${log.pattern}</pattern>
</encoder>
<filter class="ch.qos.logback.classic.filter.LevelFilter">
<!-- 过滤的级别 -->
<level>INFO</level>
<!-- 匹配时的操作:接收(记录) -->
<onMatch>ACCEPT</onMatch>
<!-- 不匹配时的操作:拒绝(不记录) -->
<onMismatch>DENY</onMismatch>
</filter>
</appender>
<appender name="file_error" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${log.path}/error.log</file>
<!-- 循环政策:基于时间创建日志文件 -->
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<!-- 日志文件名格式 -->
<fileNamePattern>${log.path}/error.%d{yyyy-MM-dd}.log</fileNamePattern>
<!-- 日志最大的历史 60天 -->
<maxHistory>60</maxHistory>
</rollingPolicy>
<encoder>
<pattern>${log.pattern}</pattern>
</encoder>
<filter class="ch.qos.logback.classic.filter.LevelFilter">
<!-- 过滤的级别 -->
<level>ERROR</level>
<!-- 匹配时的操作:接收(记录) -->
<onMatch>ACCEPT</onMatch>
<!-- 不匹配时的操作:拒绝(不记录) -->
<onMismatch>DENY</onMismatch>
</filter>
</appender>
<!-- 系统模块日志级别控制 -->
<logger name="com.ruoyi" level="info"/>
<!-- Spring日志级别控制 -->
<logger name="org.springframework" level="warn"/>
<root level="info">
<appender-ref ref="console"/>
</root>
<!--系统操作日志-->
<root level="info">
<appender-ref ref="file_info"/>
<appender-ref ref="file_error"/>
</root>
</configuration>

View File

@ -18,6 +18,7 @@
<module>ruoyi-rule_engine-common</module>
<module>ruoyi-rule_engine-remote</module>
<module>ruoyi-rule_engine-server</module>
<module>ruoyi-rule_engine-client</module>
</modules>
<properties>

View File

@ -0,0 +1,27 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>com.muyu</groupId>
<artifactId>ruoyi-rule_engine</artifactId>
<version>3.6.3</version>
</parent>
<groupId>com.ruoyi</groupId>
<artifactId>ruoyi-rule_engine-client</artifactId>
<description>ruoyi-rule_engine-client规则引擎客户端</description>
<properties>
<maven.compiler.source>17</maven.compiler.source>
<maven.compiler.target>17</maven.compiler.target>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<dependencies>
<dependency>
<groupId>com.muyu</groupId>
<artifactId>ruoyi-rule_engine-remote</artifactId>
<version>3.6.3</version>
</dependency>
</dependencies>
</project>

View File

@ -0,0 +1,34 @@
package com.ruoyi.dataAsset.client.config;
import com.ruoyi.common.core.domain.Result;
import com.ruoyi.dataAsset.domain.EngineVersion;
import com.ruoyi.dataAsset.domain.req.EngineVersionQueryReq;
import com.ruoyi.dataAsset.remote.RemoteRuleEngineService;
import lombok.extern.log4j.Log4j2;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.ApplicationArguments;
import org.springframework.boot.ApplicationRunner;
import java.util.List;
/**
*
* @ClassName RuleEngineApplicationRunner
* @Author
* @Date 2024/5/8 19:36
*/
@Log4j2
public class RuleEngineApplicationRunner implements ApplicationRunner {
@Autowired
private RemoteRuleEngineService remoteRuleEngineService;
@Override
public void run(ApplicationArguments args) throws Exception {
Result<List<EngineVersion>> result = remoteRuleEngineService.list(new EngineVersionQueryReq());
if(Result.isSuccess(result)){
log.info(result.getData());
}else {
log.error(result.getMsg());
}
}
}

View File

@ -0,0 +1,16 @@
package com.ruoyi.dataAsset.client.config;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Import;
/**
*
* @ClassName RuleEngineClientConfig
* @Author
* @Date 2024/5/8 19:31
*/
@ComponentScan
@Import(RuleEngineApplicationRunner.class)
public class RuleEngineClientConfig {
}

View File

@ -1,6 +1,6 @@
package com.ruoyi.ruleEngine.context;
package com.ruoyi.dataAsset.context;
import com.ruoyi.ruleEngine.model.process.DataModelProcessModel;
import com.ruoyi.dataAsset.model.process.DataModelProcessModel;
import lombok.Data;
import lombok.experimental.SuperBuilder;

View File

@ -1,6 +1,6 @@
package com.ruoyi.ruleEngine.context;
package com.ruoyi.dataAsset.context;
import com.ruoyi.ruleEngine.model.process.DataSetProcessModel;
import com.ruoyi.dataAsset.model.process.DataSetProcessModel;
import lombok.Data;
import lombok.experimental.SuperBuilder;

View File

@ -1,6 +1,6 @@
package com.ruoyi.ruleEngine.context;
package com.ruoyi.dataAsset.context;
import com.ruoyi.ruleEngine.model.process.RecordProcessModel;
import com.ruoyi.dataAsset.model.process.RecordProcessModel;
import lombok.Data;
import lombok.experimental.SuperBuilder;

View File

@ -1,4 +1,4 @@
import com.ruoyi.ruleEngine.engine.scope.scope_engine;
import com.ruoyi.dataAsset.engine.scope.scope_engine;
/**
* 自定义引擎

View File

@ -1,4 +1,4 @@
package com.ruoyi.ruleEngine.domain;
package com.ruoyi.dataAsset.domain;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
@ -10,9 +10,9 @@ import lombok.AllArgsConstructor;
import lombok.experimental.SuperBuilder;
import io.swagger.annotations.*;
import com.ruoyi.common.core.annotation.Excel;
import com.ruoyi.ruleEngine.domain.req.EngineMaintenanceQueryReq;
import com.ruoyi.ruleEngine.domain.req.EngineMaintenanceSaveReq;
import com.ruoyi.ruleEngine.domain.req.EngineMaintenanceEditReq;
import com.ruoyi.dataAsset.domain.req.EngineMaintenanceQueryReq;
import com.ruoyi.dataAsset.domain.req.EngineMaintenanceSaveReq;
import com.ruoyi.dataAsset.domain.req.EngineMaintenanceEditReq;
import com.ruoyi.common.core.web.domain.BaseEntity;
import java.util.function.Supplier;
import java.util.Date;

View File

@ -1,4 +1,4 @@
package com.ruoyi.ruleEngine.domain;
package com.ruoyi.dataAsset.domain;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
@ -10,9 +10,9 @@ import lombok.AllArgsConstructor;
import lombok.experimental.SuperBuilder;
import io.swagger.annotations.*;
import com.ruoyi.common.core.annotation.Excel;
import com.ruoyi.ruleEngine.domain.req.EngineVersionQueryReq;
import com.ruoyi.ruleEngine.domain.req.EngineVersionSaveReq;
import com.ruoyi.ruleEngine.domain.req.EngineVersionEditReq;
import com.ruoyi.dataAsset.domain.req.EngineVersionQueryReq;
import com.ruoyi.dataAsset.domain.req.EngineVersionSaveReq;
import com.ruoyi.dataAsset.domain.req.EngineVersionEditReq;
import com.ruoyi.common.core.web.domain.BaseEntity;
import java.util.function.Supplier;
import java.util.Date;

View File

@ -1,4 +1,4 @@
package com.ruoyi.ruleEngine.domain.req;
package com.ruoyi.dataAsset.domain.req;
import com.ruoyi.common.core.annotation.Excel;
import lombok.Data;

View File

@ -1,4 +1,4 @@
package com.ruoyi.ruleEngine.domain.req;
package com.ruoyi.dataAsset.domain.req;
import com.ruoyi.common.core.annotation.Excel;
import lombok.Data;

View File

@ -1,4 +1,4 @@
package com.ruoyi.ruleEngine.domain.req;
package com.ruoyi.dataAsset.domain.req;
import com.ruoyi.common.core.annotation.Excel;
import lombok.Data;

View File

@ -1,4 +1,4 @@
package com.ruoyi.ruleEngine.domain.req;
package com.ruoyi.dataAsset.domain.req;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

View File

@ -1,7 +1,7 @@
package com.ruoyi.ruleEngine.engine.custom;
package com.ruoyi.dataAsset.engine.custom;
import com.ruoyi.ruleEngine.engine.action.ActionDiscard;
import com.ruoyi.ruleEngine.engine.scope.DataModelEngine;
import com.ruoyi.dataAsset.engine.action.ActionDiscard;
import com.ruoyi.dataAsset.engine.scope.DataModelEngine;
/**
*

View File

@ -1,9 +1,9 @@
package com.ruoyi.ruleEngine.engine.scope;
package com.ruoyi.dataAsset.engine.scope;
import com.ruoyi.ruleEngine.engine.Engine;
import com.ruoyi.ruleEngine.model.DataModel;
import com.ruoyi.ruleEngine.model.process.DataModelProcessModel;
import com.ruoyi.ruleEngine.context.DataModelContextHolder;
import com.ruoyi.dataAsset.engine.Engine;
import com.ruoyi.dataAsset.model.DataModel;
import com.ruoyi.dataAsset.model.process.DataModelProcessModel;
import com.ruoyi.dataAsset.context.DataModelContextHolder;
/**
*

View File

@ -1,10 +1,10 @@
package com.ruoyi.ruleEngine.engine.scope;
package com.ruoyi.dataAsset.engine.scope;
import com.ruoyi.ruleEngine.context.DataSetContextHolder;
import com.ruoyi.ruleEngine.engine.Engine;
import com.ruoyi.ruleEngine.model.DataSetModel;
import com.ruoyi.ruleEngine.model.RecordModel;
import com.ruoyi.ruleEngine.model.process.DataSetProcessModel;
import com.ruoyi.dataAsset.context.DataSetContextHolder;
import com.ruoyi.dataAsset.engine.Engine;
import com.ruoyi.dataAsset.model.DataSetModel;
import com.ruoyi.dataAsset.model.RecordModel;
import com.ruoyi.dataAsset.model.process.DataSetProcessModel;
import java.util.List;
/**

View File

@ -1,10 +1,10 @@
package com.ruoyi.ruleEngine.engine.scope;
package com.ruoyi.dataAsset.engine.scope;
import com.ruoyi.ruleEngine.context.RecordContextHolder;
import com.ruoyi.ruleEngine.engine.Engine;
import com.ruoyi.ruleEngine.model.DataModel;
import com.ruoyi.ruleEngine.model.RecordModel;
import com.ruoyi.ruleEngine.model.process.RecordProcessModel;
import com.ruoyi.dataAsset.context.RecordContextHolder;
import com.ruoyi.dataAsset.engine.Engine;
import com.ruoyi.dataAsset.model.DataModel;
import com.ruoyi.dataAsset.model.RecordModel;
import com.ruoyi.dataAsset.model.process.RecordProcessModel;
import java.util.List;
/**

View File

@ -1,4 +1,4 @@
package com.ruoyi.ruleEngine.model;
package com.ruoyi.dataAsset.model;
import lombok.AllArgsConstructor;
import lombok.Data;

View File

@ -1,4 +1,4 @@
package com.ruoyi.ruleEngine.model;
package com.ruoyi.dataAsset.model;
import lombok.AllArgsConstructor;
import lombok.Data;

View File

@ -1,6 +1,6 @@
package com.ruoyi.ruleEngine.model.process;
package com.ruoyi.dataAsset.model.process;
import com.ruoyi.ruleEngine.model.DataModel;
import com.ruoyi.dataAsset.model.DataModel;
import lombok.Data;
/**

View File

@ -1,6 +1,6 @@
package com.ruoyi.ruleEngine.model.process;
package com.ruoyi.dataAsset.model.process;
import com.ruoyi.ruleEngine.model.DataSetModel;
import com.ruoyi.dataAsset.model.DataSetModel;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

View File

@ -1,6 +1,6 @@
package com.ruoyi.ruleEngine.model.process;
package com.ruoyi.dataAsset.model.process;
import com.ruoyi.ruleEngine.model.RecordModel;
import com.ruoyi.dataAsset.model.RecordModel;
import lombok.Data;
import java.util.List;

View File

@ -1,10 +1,10 @@
package com.ruoyi.ruleEngine.util;
package com.ruoyi.dataAsset.util;
import com.ruoyi.ruleEngine.context.DataSetContextHolder;
import com.ruoyi.ruleEngine.model.DataModel;
import com.ruoyi.ruleEngine.model.DataSetModel;
import com.ruoyi.ruleEngine.model.RecordModel;
import com.ruoyi.ruleEngine.model.process.DataSetProcessModel;
import com.ruoyi.dataAsset.context.DataSetContextHolder;
import com.ruoyi.dataAsset.model.DataModel;
import com.ruoyi.dataAsset.model.DataSetModel;
import com.ruoyi.dataAsset.model.RecordModel;
import com.ruoyi.dataAsset.model.process.DataSetProcessModel;
import java.sql.*;
import java.util.ArrayList;
import java.util.List;

View File

@ -18,5 +18,17 @@
<maven.compiler.target>17</maven.compiler.target>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<dependencies>
<!-- 规则引擎 公共模块 -->
<dependency>
<groupId>com.muyu</groupId>
<artifactId>ruoyi-rule_engine-common</artifactId>
<version>3.6.3</version>
</dependency>
<!-- MuYu 公共 安全模块 -->
<dependency>
<groupId>com.muyu</groupId>
<artifactId>muyu-common-security</artifactId>
</dependency>
</dependencies>
</project>

View File

@ -0,0 +1,33 @@
package com.ruoyi.dataAsset.remote;
import com.ruoyi.common.core.constant.ServiceNameConstants;
import com.ruoyi.common.core.domain.Result;
import com.ruoyi.common.security.annotation.InnerAuth;
import com.ruoyi.dataAsset.domain.EngineVersion;
import com.ruoyi.dataAsset.domain.req.EngineVersionQueryReq;
import com.ruoyi.dataAsset.remote.factory.RemoteRuleEngineFactory;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;
import java.util.List;
/**
*
* @ClassName RemoteRuleEngineService
* @Author
* @Date 2024/5/7 13:54
*/
@FeignClient(
contextId = "remoteRuleEngineService",
value = ServiceNameConstants.RULE_ENGINE_SERVICE,
fallbackFactory = RemoteRuleEngineFactory.class,
path = "/version"
)
public interface RemoteRuleEngineService {
/**
*
*/
@GetMapping("/list")
public Result<List<EngineVersion>> list(@RequestParam("engineConfigQueryReq") EngineVersionQueryReq engineConfigQueryReq);
}

View File

@ -0,0 +1,26 @@
package com.ruoyi.dataAsset.remote.factory;
import com.ruoyi.common.core.domain.Result;
import com.ruoyi.dataAsset.domain.EngineVersion;
import com.ruoyi.dataAsset.domain.req.EngineVersionQueryReq;
import com.ruoyi.dataAsset.remote.RemoteRuleEngineService;
import org.springframework.cloud.openfeign.FallbackFactory;
import java.util.List;
/**
*
* @ClassName RemoteRuleEngineFactory
* @Author
* @Date 2024/5/7 11:59
*/
public class RemoteRuleEngineFactory implements FallbackFactory<RemoteRuleEngineService> {
@Override
public RemoteRuleEngineService create(Throwable cause) {
return new RemoteRuleEngineService() {
@Override
public Result<List<EngineVersion>> list(EngineVersionQueryReq engineConfigQueryReq) {
return Result.error(cause.getMessage());
}
};
}
}

View File

@ -119,7 +119,7 @@
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<mainClass>com.ruoyi.ruleEngine.GtlRuleEngineApplication</mainClass>
<mainClass>com.ruoyi.dataAsset.GtlRuleEngineApplication</mainClass>
</configuration>
</plugin>
</plugins>

View File

@ -1,4 +1,4 @@
package com.ruoyi.ruleEngine;
package com.ruoyi.dataAsset;
import com.ruoyi.common.security.annotation.EnableCustomConfig;
import com.ruoyi.common.security.annotation.EnableMyFeignClients;

View File

@ -1,10 +1,10 @@
package com.ruoyi.ruleEngine.controller;
package com.ruoyi.dataAsset.controller;
import com.ruoyi.common.core.domain.Result;
import com.ruoyi.common.core.web.controller.BaseController;
import com.ruoyi.common.security.annotation.RequiresPermissions;
import com.ruoyi.ruleEngine.domain.resp.EngineConfigScopeResp;
import com.ruoyi.ruleEngine.service.EngineConfigService;
import com.ruoyi.dataAsset.domain.resp.EngineConfigScopeResp;
import com.ruoyi.dataAsset.service.EngineConfigService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;

View File

@ -1,11 +1,11 @@
package com.ruoyi.ruleEngine.controller;
package com.ruoyi.dataAsset.controller;
import java.util.List;
import javax.servlet.http.HttpServletResponse;
import com.ruoyi.common.core.utils.poi.ExcelUtil;
import com.ruoyi.common.core.web.page.TableDataInfo;
import com.ruoyi.common.security.utils.SecurityUtils;
import com.ruoyi.ruleEngine.service.EngineMaintenanceService;
import com.ruoyi.dataAsset.service.EngineMaintenanceService;
import io.swagger.annotations.*;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
@ -21,10 +21,10 @@ import com.ruoyi.common.core.web.controller.BaseController;
import com.ruoyi.common.log.annotation.Log;
import com.ruoyi.common.log.enums.BusinessType;
import com.ruoyi.common.security.annotation.RequiresPermissions;
import com.ruoyi.ruleEngine.domain.EngineMaintenance;
import com.ruoyi.ruleEngine.domain.req.EngineMaintenanceQueryReq;
import com.ruoyi.ruleEngine.domain.req.EngineMaintenanceSaveReq;
import com.ruoyi.ruleEngine.domain.req.EngineMaintenanceEditReq;
import com.ruoyi.dataAsset.domain.EngineMaintenance;
import com.ruoyi.dataAsset.domain.req.EngineMaintenanceQueryReq;
import com.ruoyi.dataAsset.domain.req.EngineMaintenanceSaveReq;
import com.ruoyi.dataAsset.domain.req.EngineMaintenanceEditReq;
/**

View File

@ -1,4 +1,4 @@
package com.ruoyi.ruleEngine.controller;
package com.ruoyi.dataAsset.controller;
import com.ruoyi.common.core.domain.Result;
import com.ruoyi.common.core.web.controller.BaseController;
@ -6,14 +6,14 @@ import com.ruoyi.common.log.annotation.Log;
import com.ruoyi.common.log.enums.BusinessType;
import com.ruoyi.common.security.annotation.RequiresPermissions;
import com.ruoyi.common.security.utils.SecurityUtils;
import com.ruoyi.ruleEngine.domain.EngineVersion;
import com.ruoyi.ruleEngine.domain.model.TestData;
import com.ruoyi.ruleEngine.domain.req.EngineVersionEditReq;
import com.ruoyi.ruleEngine.domain.req.EngineVersionQueryReq;
import com.ruoyi.ruleEngine.domain.req.EngineVersionSaveReq;
import com.ruoyi.ruleEngine.domain.req.VersionClassCreateReq;
import com.ruoyi.ruleEngine.domain.resp.VersionClassCreateResp;
import com.ruoyi.ruleEngine.service.EngineVersionService;
import com.ruoyi.dataAsset.domain.EngineVersion;
import com.ruoyi.dataAsset.domain.model.TestData;
import com.ruoyi.dataAsset.domain.req.EngineVersionEditReq;
import com.ruoyi.dataAsset.domain.req.EngineVersionQueryReq;
import com.ruoyi.dataAsset.domain.req.EngineVersionSaveReq;
import com.ruoyi.dataAsset.domain.req.VersionClassCreateReq;
import com.ruoyi.dataAsset.domain.resp.VersionClassCreateResp;
import com.ruoyi.dataAsset.service.EngineVersionService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiOperation;

View File

@ -1,7 +1,7 @@
package com.ruoyi.ruleEngine.mapper;
package com.ruoyi.dataAsset.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.ruoyi.ruleEngine.domain.EngineMaintenance;
import com.ruoyi.dataAsset.domain.EngineMaintenance;
/**
* Mapper

View File

@ -1,7 +1,7 @@
package com.ruoyi.ruleEngine.mapper;
package com.ruoyi.dataAsset.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.ruoyi.ruleEngine.domain.EngineVersion;
import com.ruoyi.dataAsset.domain.EngineVersion;
/**
* Mapper

View File

@ -1,6 +1,6 @@
package com.ruoyi.ruleEngine.service;
package com.ruoyi.dataAsset.service;
import com.ruoyi.ruleEngine.domain.resp.EngineConfigScopeResp;
import com.ruoyi.dataAsset.domain.resp.EngineConfigScopeResp;
import java.util.List;
/**

View File

@ -1,7 +1,7 @@
package com.ruoyi.ruleEngine.service;
package com.ruoyi.dataAsset.service;
import java.util.List;
import com.ruoyi.ruleEngine.domain.EngineMaintenance;
import com.ruoyi.dataAsset.domain.EngineMaintenance;
import com.baomidou.mybatisplus.extension.service.IService;
/**

View File

@ -1,10 +1,10 @@
package com.ruoyi.ruleEngine.service;
package com.ruoyi.dataAsset.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.ruoyi.ruleEngine.domain.EngineVersion;
import com.ruoyi.ruleEngine.domain.model.TestData;
import com.ruoyi.ruleEngine.domain.req.VersionClassCreateReq;
import com.ruoyi.ruleEngine.domain.resp.VersionClassCreateResp;
import com.ruoyi.dataAsset.domain.EngineVersion;
import com.ruoyi.dataAsset.domain.model.TestData;
import com.ruoyi.dataAsset.domain.req.VersionClassCreateReq;
import com.ruoyi.dataAsset.domain.resp.VersionClassCreateResp;
import java.util.List;
/**

View File

@ -1,8 +1,8 @@
package com.ruoyi.ruleEngine.service.impl;
package com.ruoyi.dataAsset.service.impl;
import com.ruoyi.ruleEngine.constant.ConfigCodeConstants;
import com.ruoyi.ruleEngine.domain.resp.EngineConfigScopeResp;
import com.ruoyi.ruleEngine.service.EngineConfigService;
import com.ruoyi.dataAsset.constant.ConfigCodeConstants;
import com.ruoyi.dataAsset.domain.resp.EngineConfigScopeResp;
import com.ruoyi.dataAsset.service.EngineConfigService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import java.io.IOException;

View File

@ -1,16 +1,16 @@
package com.ruoyi.ruleEngine.service.impl;
package com.ruoyi.dataAsset.service.impl;
import java.util.List;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.ruoyi.common.core.utils.ObjUtils;
import com.ruoyi.ruleEngine.domain.EngineVersion;
import com.ruoyi.ruleEngine.service.EngineVersionService;
import com.ruoyi.dataAsset.domain.EngineVersion;
import com.ruoyi.dataAsset.service.EngineVersionService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.ruoyi.ruleEngine.mapper.EngineMaintenanceMapper;
import com.ruoyi.ruleEngine.domain.EngineMaintenance;
import com.ruoyi.ruleEngine.service.EngineMaintenanceService;
import com.ruoyi.dataAsset.mapper.EngineMaintenanceMapper;
import com.ruoyi.dataAsset.domain.EngineMaintenance;
import com.ruoyi.dataAsset.service.EngineMaintenanceService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import org.springframework.transaction.annotation.Transactional;

View File

@ -1,20 +1,20 @@
package com.ruoyi.ruleEngine.service.impl;
package com.ruoyi.dataAsset.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.common.core.exception.ServiceException;
import com.ruoyi.common.core.utils.ObjUtils;
import com.ruoyi.ruleEngine.constant.EngineVersionConstants;
import com.ruoyi.ruleEngine.constant.RuleOperationConstants;
import com.ruoyi.ruleEngine.domain.EngineVersion;
import com.ruoyi.ruleEngine.domain.model.TestData;
import com.ruoyi.ruleEngine.domain.req.VersionClassCreateReq;
import com.ruoyi.ruleEngine.domain.resp.EngineConfigScopeResp;
import com.ruoyi.ruleEngine.domain.resp.VersionClassCreateResp;
import com.ruoyi.ruleEngine.dynamicLoad.DynamicLoader;
import com.ruoyi.ruleEngine.mapper.EngineVersionMapper;
import com.ruoyi.ruleEngine.service.EngineConfigService;
import com.ruoyi.ruleEngine.service.EngineVersionService;
import com.ruoyi.dataAsset.constant.EngineVersionConstants;
import com.ruoyi.dataAsset.constant.RuleOperationConstants;
import com.ruoyi.dataAsset.domain.EngineVersion;
import com.ruoyi.dataAsset.domain.model.TestData;
import com.ruoyi.dataAsset.domain.req.VersionClassCreateReq;
import com.ruoyi.dataAsset.domain.resp.EngineConfigScopeResp;
import com.ruoyi.dataAsset.domain.resp.VersionClassCreateResp;
import com.ruoyi.dataAsset.dynamicLoad.DynamicLoader;
import com.ruoyi.dataAsset.mapper.EngineVersionMapper;
import com.ruoyi.dataAsset.service.EngineConfigService;
import com.ruoyi.dataAsset.service.EngineVersionService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

View File

@ -27,4 +27,4 @@ spring:
- application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension}
logging:
level:
com.ruoyi.ruleEngine.mapper: DEBUG
com.ruoyi.dataAsset.mapper: DEBUG

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<configuration scan="true" scanPeriod="60 seconds" debug="false">
<!-- 日志存放路径 -->
<property name="log.path" value="logs/muyu-ruleEngine"/>
<property name="log.path" value="logs/ruoyi-rule_engine"/>
<!-- 日志输出格式 -->
<property name="log.pattern" value="%d{HH:mm:ss.SSS} [%thread] %-5level %logger{20} - [%method,%line] - %msg%n"/>