diff --git a/cloud-etl-client/pom.xml b/cloud-etl-client/pom.xml
index 592a2cb..c9d6f8b 100644
--- a/cloud-etl-client/pom.xml
+++ b/cloud-etl-client/pom.xml
@@ -11,10 +11,14 @@
cloud-etl-client
-
- 17
- 17
- UTF-8
-
+
+
+ com.muyu
+ cloud-etl-common
+ 1.0.0
+
+
+
+
diff --git a/cloud-etl-client/src/main/java/com/muyu/Main.java b/cloud-etl-client/src/main/java/com/muyu/Main.java
deleted file mode 100644
index 95690d4..0000000
--- a/cloud-etl-client/src/main/java/com/muyu/Main.java
+++ /dev/null
@@ -1,7 +0,0 @@
-package com.muyu;
-
-public class Main {
- public static void main(String[] args) {
- System.out.println("Hello world!");
- }
-}
\ No newline at end of file
diff --git a/cloud-etl-client/src/main/java/com/muyu/config/RuleEngineClientConfig.java b/cloud-etl-client/src/main/java/com/muyu/config/RuleEngineClientConfig.java
new file mode 100644
index 0000000..733bc28
--- /dev/null
+++ b/cloud-etl-client/src/main/java/com/muyu/config/RuleEngineClientConfig.java
@@ -0,0 +1,85 @@
+//package com.muyu.config;
+//
+//import com.muyu.common.core.domain.Result;
+//import com.muyu.ruleEngine.context.DataModelContextHolder;
+//import com.muyu.ruleEngine.context.DataSetContextHolder;
+//import com.muyu.ruleEngine.context.RecordContextHolder;
+//import com.muyu.ruleEngine.domain.EngineVersion;
+//import com.muyu.ruleEngine.domain.req.EngineVersionTestReq;
+//import com.muyu.ruleEngine.dynamicLoad.DynamicLoader;
+//import com.muyu.ruleEngine.model.DataModel;
+//import com.muyu.ruleEngine.model.DataSetModel;
+//import com.muyu.ruleEngine.model.RecordModel;
+//import com.muyu.ruleEngine.model.process.DataProcessModel;
+//import com.muyu.ruleEngine.model.process.DataSetProcessModel;
+//import com.muyu.ruleEngine.model.process.RecordProcessModel;
+//import com.muyu.source.engine.client.ruleEngineInit.RuleEngineInit;
+//import com.muyu.source.remote.RemoteVersionService;
+//import lombok.extern.log4j.Log4j2;
+//import org.springframework.beans.factory.annotation.Autowired;
+//import org.springframework.context.annotation.ComponentScan;
+//import org.springframework.context.annotation.Import;
+//
+//import java.lang.reflect.Method;
+//import java.util.ArrayList;
+//import java.util.List;
+//import java.util.Map;
+//
+///**
+// * 规则引擎客户端配置类
+// *
+// * @author CHX
+// * on 2024/5/9 星期四
+// */
+//@Log4j2
+//@ComponentScan
+//@Import(value = {RuleEngineClientRunner.class})
+//public class RuleEngineClientConfig {
+//
+// @Autowired
+// private RemoteVersionService remoteVersionService;
+//
+// public Result engineVersionTest(EngineVersionTestReq testReq) {
+// if (testReq.getScope() == 4) {
+// DataProcessModel dataProcessModel = DataProcessModel.builder().dataModel(testReq.getDataModel()).build();
+// DataModelContextHolder.set(dataProcessModel);
+// } else if (testReq.getScope() == 3) {
+// RecordModel recordModel = RecordModel.builder().dataModels(testReq.getDataModelList()).build();
+// RecordProcessModel recordProcessModel = RecordProcessModel.builder()
+// .keys(testReq.getKeys())
+// .recordModel(recordModel)
+// .build();
+// RecordContextHolder.set(recordProcessModel);
+// } else if (testReq.getScope() == 2) {
+// List recordModelList = new ArrayList<>();
+// List> dataModelLists = testReq.getDataModelLists();
+// dataModelLists.stream().forEach(dataModelList -> {
+// RecordModel recordModel = RecordModel.builder().dataModels(dataModelList).build();
+// recordModelList.add(recordModel);
+// });
+// DataSetModel dataSetModel = DataSetModel.builder()
+// .recordModels(recordModelList)
+// .build();
+// DataSetProcessModel dataSetProcessModel = DataSetProcessModel.builder()
+// .dataSetModel(dataSetModel)
+// .build();
+// DataSetContextHolder.set(dataSetProcessModel);
+// }
+// Result versionResult = remoteVersionService.getVersion(testReq.getEngineVersionId());
+// EngineVersion engineVersion = versionResult.getData();
+// Map engineMap = RuleEngineInit.getEngineMap(testReq.getEngineVersionId());
+//
+// try {
+// @SuppressWarnings("resource")
+// DynamicLoader.MemoryClassLoader classLoader = new DynamicLoader.MemoryClassLoader(engineMap);
+// Class> aClass = classLoader.loadClass(engineVersion.getVersionClass());
+// Method method = aClass.getDeclaredMethod("execution");
+// Object o = aClass.newInstance();
+// method.invoke(o);
+// } catch (Exception e) {
+// log.info(e.getMessage());
+// return Result.success("程序异常: 信息[" + e.getLocalizedMessage() + "]异常");
+// }
+// return Result.success("测试正常,无异常数据返回");
+// }
+//}
diff --git a/cloud-etl-client/src/main/java/com/muyu/config/RuleEngineClientRunner.java b/cloud-etl-client/src/main/java/com/muyu/config/RuleEngineClientRunner.java
new file mode 100644
index 0000000..6c005a6
--- /dev/null
+++ b/cloud-etl-client/src/main/java/com/muyu/config/RuleEngineClientRunner.java
@@ -0,0 +1,34 @@
+//package com.muyu.config;
+//
+//import com.muyu.common.core.domain.Result;
+//import com.muyu.ruleEngine.domain.EngineVersion;
+//import com.muyu.source.engine.client.ruleEngineInit.RuleEngineInit;
+//import com.muyu.source.remote.RemoteVersionService;
+//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;
+//
+///**
+// * 初始化加载
+// *
+// * @author CHX
+// * on 2024/5/9 星期四
+// */
+//@Log4j2
+//public class RuleEngineClientRunner implements ApplicationRunner {
+//
+// @Autowired
+// private RemoteVersionService remoteVersionService;
+//
+// @Override
+// public void run(ApplicationArguments args) throws Exception {
+// Result> versionListResult = remoteVersionService.getVersionList();
+// log.info(versionListResult);
+// List engineVersionList = versionListResult.getData();
+// RuleEngineInit.init(engineVersionList);
+//
+// }
+//}
diff --git a/cloud-etl-client/src/main/java/com/muyu/ruleEngineLnit/RuleEngineInit.java b/cloud-etl-client/src/main/java/com/muyu/ruleEngineLnit/RuleEngineInit.java
new file mode 100644
index 0000000..1977ef9
--- /dev/null
+++ b/cloud-etl-client/src/main/java/com/muyu/ruleEngineLnit/RuleEngineInit.java
@@ -0,0 +1,37 @@
+//package com.muyu.ruleEngineLnit;
+//
+//import com.muyu.ruleEngine.constant.RuleOperationConstants;
+//import com.muyu.ruleEngine.domain.EngineVersion;
+//import com.muyu.ruleEngine.dynamicLoad.DynamicLoader;
+//import org.springframework.stereotype.Component;
+//
+//import java.util.HashMap;
+//import java.util.List;
+//import java.util.Map;
+//
+///**
+// * 规则引擎初始化
+// *
+// * @author CHX
+// * on 2024/5/14 星期二
+// */
+//@Component
+//public class RuleEngineInit {
+// private static Map> engineMap = new HashMap();
+//
+// public static void init(List engineVersionList){
+//// Map map = new HashMap<>();
+// engineVersionList.stream().forEach(engineVersion -> {
+// // 获取版本内容
+// String content = engineVersion.getRuleContent().replaceAll("\r\n", "");
+// // 对source进行编译生成class文件存放在Map中,这里用bytecode接收
+// Map bytecode = DynamicLoader.compile(engineVersion.getVersionClass() +
+// RuleOperationConstants.FILE_SUFFIX, content);
+// engineMap.put(engineVersion.getId(), bytecode);
+// });
+// }
+//
+// public static Map getEngineMap(Long ruleId) {
+// return engineMap.get(ruleId);
+// }
+//}
diff --git a/cloud-etl-common/src/main/java/com/muyu/domain/EngineMaintenance.java b/cloud-etl-common/src/main/java/com/muyu/domain/EngineMaintenance.java
new file mode 100644
index 0000000..2cbcefb
--- /dev/null
+++ b/cloud-etl-common/src/main/java/com/muyu/domain/EngineMaintenance.java
@@ -0,0 +1,21 @@
+package com.muyu.domain;
+
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+import lombok.experimental.SuperBuilder;
+
+/**
+ * @Author:qdm
+ * @Package:com.muyu.domain
+ * @Project:cloud-etl-engine
+ * @name:EngineMaintenance
+ * @Date:2024/8/22 15:38
+ */
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+@SuperBuilder
+public class EngineMaintenance {
+
+}
diff --git a/cloud-etl-server/src/main/java/com/muyu/controller/EngIneController.java b/cloud-etl-server/src/main/java/com/muyu/controller/EngIneController.java
new file mode 100644
index 0000000..d72ec8d
--- /dev/null
+++ b/cloud-etl-server/src/main/java/com/muyu/controller/EngIneController.java
@@ -0,0 +1,31 @@
+package com.muyu.controller;
+
+import com.muyu.common.core.domain.Result;
+import com.muyu.service.EngIneService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.util.List;
+
+/**
+ * @Author:qdm
+ * @Package:com.muyu.controller
+ * @Project:cloud-etl-engine
+ * @name:EngIneController
+ * @Date:2024/8/22 15:36
+ */
+@RestController
+@RequestMapping("/engine")
+public class EngIneController {
+
+ @Autowired
+ EngIneService engIneService;
+
+ @GetMapping("/getMaintenanceList")
+ public Result> getMaintenanceList() {
+ List list = engineMaintenanceService.list();
+ return Result.success(list);
+ }
+}
diff --git a/cloud-etl-server/src/main/java/com/muyu/service/EngIneService.java b/cloud-etl-server/src/main/java/com/muyu/service/EngIneService.java
new file mode 100644
index 0000000..d2788cb
--- /dev/null
+++ b/cloud-etl-server/src/main/java/com/muyu/service/EngIneService.java
@@ -0,0 +1,11 @@
+package com.muyu.service;
+
+/**
+ * @Author:qdm
+ * @Package:com.muyu.service
+ * @Project:cloud-etl-engine
+ * @name:EngIneService
+ * @Date:2024/8/22 15:37
+ */
+public interface EngIneService {
+}
diff --git a/cloud-etl-server/src/main/java/com/muyu/service/serviceImpl/EngIneServiceImpl.java b/cloud-etl-server/src/main/java/com/muyu/service/serviceImpl/EngIneServiceImpl.java
new file mode 100644
index 0000000..c90dcaa
--- /dev/null
+++ b/cloud-etl-server/src/main/java/com/muyu/service/serviceImpl/EngIneServiceImpl.java
@@ -0,0 +1,20 @@
+package com.muyu.service.serviceImpl;
+
+import com.muyu.mapper.EngineMapper;
+import com.muyu.service.EngIneService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+/**
+ * @Author:qdm
+ * @Package:com.muyu.service.serviceImpl
+ * @Project:cloud-etl-engine
+ * @name:EngIneServiceImpl
+ * @Date:2024/8/22 15:37
+ */
+@Service
+public class EngIneServiceImpl implements EngIneService {
+
+ @Autowired
+ EngineMapper engineMapper;
+}