diff --git a/cloud-rule-common/src/main/java/com/muyu/common/domain/DataRecord.java b/cloud-rule-common/src/main/java/com/muyu/common/domain/DataRecord.java new file mode 100644 index 0000000..cbdde10 --- /dev/null +++ b/cloud-rule-common/src/main/java/com/muyu/common/domain/DataRecord.java @@ -0,0 +1,25 @@ +package com.muyu.common.domain; + +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * @Author:蓬叁 + * @Package:com.muyu.common.domain + * @Project:cloud-rule + * @name:DataRecord + * @Date:2024/9/7 上午10:18 + */ +@Data +@Builder +@AllArgsConstructor +@NoArgsConstructor +public class DataRecord { + + private String ruleVersionType; + + private RuleData[] ruleData; + +} diff --git a/cloud-rule-common/src/main/java/com/muyu/common/domain/DataSet.java b/cloud-rule-common/src/main/java/com/muyu/common/domain/DataSet.java new file mode 100644 index 0000000..3abc886 --- /dev/null +++ b/cloud-rule-common/src/main/java/com/muyu/common/domain/DataSet.java @@ -0,0 +1,25 @@ +package com.muyu.common.domain; + +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * @Author:蓬叁 + * @Package:com.muyu.common.domain + * @Project:cloud-rule + * @name:DataSet + * @Date:2024/9/7 上午10:25 + */ +@Data +@Builder +@AllArgsConstructor +@NoArgsConstructor +public class DataSet { + + private String ruleVersionType; + + private RuleData[][] ruleData; + +} diff --git a/cloud-rule-common/src/main/java/com/muyu/common/domain/SingleField.java b/cloud-rule-common/src/main/java/com/muyu/common/domain/SingleField.java new file mode 100644 index 0000000..10e92df --- /dev/null +++ b/cloud-rule-common/src/main/java/com/muyu/common/domain/SingleField.java @@ -0,0 +1,23 @@ +package com.muyu.common.domain; + +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * @Author:蓬叁 + * @Package:com.muyu.common.domain + * @Project:cloud-rule + * @name:SingleField + * @Date:2024/9/6 下午8:05 + */ +@Data +@Builder +@AllArgsConstructor +@NoArgsConstructor +public class SingleField { + + + +} diff --git a/cloud-rule-engine/src/main/java/com/muyu/constant/GenerateConstant.java b/cloud-rule-engine/src/main/java/com/muyu/constant/GenerateConstant.java index 5bb7600..bb3f2dc 100644 --- a/cloud-rule-engine/src/main/java/com/muyu/constant/GenerateConstant.java +++ b/cloud-rule-engine/src/main/java/com/muyu/constant/GenerateConstant.java @@ -22,7 +22,10 @@ public class GenerateConstant { public static final String DATA_FIELD = "DataEngineValueActuator"; public static final String DATA_RECORD = "DataEngineRecordActuator"; public static final String DATA_SET = "DataEngineSetActuator"; - public static final String ACTION_IMPORT = "import com.muyu.common.domain.DataValue;"; + public static final String TYPE_FIELD = "DataValue"; + public static final String TYPE_RECORD = "DataRecord"; + public static final String TYPE_SET = "DataSet"; + public static final String ACTION_IMPORT = "import com.muyu.common.domain.;"; public static final String SCOPE_IMPORT = "import com.muyu.engine.basic.abstracts."; public static final String PACKAGE_PATH = "package com.muyu.generate;\n"; @@ -38,10 +41,11 @@ public class GenerateConstant { public static String generateConstant(RuleData ruleData, RuleVersion ruleVersion){ SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss"); String format = simpleDateFormat.format(new Date()); - String level = selectType(ruleData.getRuleRegion()); + String type = selectType(ruleData.getRuleRegion()); + String level = selectData(ruleData.getRuleRegion()); return PACKAGE_PATH + "\n" + - ACTION_IMPORT + "\n" + - SCOPE_IMPORT+level+";\n" + + ACTION_IMPORT + type + ";\n" + + SCOPE_IMPORT + level + ";\n" + "\n" + "/**\n" + " * @Author: "+ SecurityUtils.getUsername() +"\n" + @@ -56,7 +60,7 @@ public class GenerateConstant { "}"; } - public static String selectType(String level){ + public static String selectData(String level){ String type = ""; switch (level) { case "F": @@ -72,4 +76,20 @@ public class GenerateConstant { return type; } + public static String selectType(String level){ + String type = ""; + switch (level) { + case "F": + type = TYPE_FIELD; + break; + case "R": + type = TYPE_RECORD; + break; + case "C": + type = TYPE_SET; + break; + } + return type; + } + } diff --git a/cloud-rule-engine/src/main/java/com/muyu/engine/basic/abstracts/DataEngineRecordActuator.java b/cloud-rule-engine/src/main/java/com/muyu/engine/basic/abstracts/DataEngineRecordActuator.java index d063ed4..97dce89 100644 --- a/cloud-rule-engine/src/main/java/com/muyu/engine/basic/abstracts/DataEngineRecordActuator.java +++ b/cloud-rule-engine/src/main/java/com/muyu/engine/basic/abstracts/DataEngineRecordActuator.java @@ -3,7 +3,6 @@ package com.muyu.engine.basic.abstracts; import com.muyu.common.domain.DataValue; import com.muyu.engine.basic.BasicEngine; import com.muyu.engine.basic.handler.DataEngineRecordHandler; -import com.muyu.engine.basic.handler.DataEngineSetHandler; /** * @Author:蓬叁 @@ -13,14 +12,14 @@ import com.muyu.engine.basic.handler.DataEngineSetHandler; * @Date:2024/8/30 上午11:13 * @Description: 记录 */ -public abstract class DataEngineRecordActuator implements BasicEngine { +public abstract class DataEngineRecordActuator implements BasicEngine { - public void set(DataValue dataValue){ + public void set(DataValue[] dataValue){ DataEngineRecordHandler.set(dataValue); } //获取原始值 - public DataValue get(){ + public DataValue[] get(){ return DataEngineRecordHandler.get(); } @@ -32,4 +31,5 @@ public abstract class DataEngineRecordActuator implements BasicEngine public abstract void run(); + } diff --git a/cloud-rule-engine/src/main/java/com/muyu/engine/basic/abstracts/DataEngineRowActuator.java b/cloud-rule-engine/src/main/java/com/muyu/engine/basic/abstracts/DataEngineRowActuator.java deleted file mode 100644 index 712c6c8..0000000 --- a/cloud-rule-engine/src/main/java/com/muyu/engine/basic/abstracts/DataEngineRowActuator.java +++ /dev/null @@ -1,26 +0,0 @@ -package com.muyu.engine.basic.abstracts; - -import com.muyu.common.domain.DataValue; -import com.muyu.engine.basic.BasicEngine; -import com.muyu.engine.basic.handler.DataEngineRowHandler; - -/** - * @Author:蓬叁 - * @Package:com.muyu.engine.basic.handler - * @Project:cloud-rule - * @name:DataEngineValueActuator - * @Date:2024/8/29 下午4:21 - * @Description: 数据值处理对象 - */ -public abstract class DataEngineRowActuator implements BasicEngine { - - public void set(DataValue[] dataValue){ - DataEngineRowHandler.set(dataValue); - } - - //获取原始值 - public DataValue[] get(){ - return DataEngineRowHandler.get(); - } - -} diff --git a/cloud-rule-engine/src/main/java/com/muyu/engine/basic/handler/DataEngineRecordHandler.java b/cloud-rule-engine/src/main/java/com/muyu/engine/basic/handler/DataEngineRecordHandler.java index b44d900..fa0582b 100644 --- a/cloud-rule-engine/src/main/java/com/muyu/engine/basic/handler/DataEngineRecordHandler.java +++ b/cloud-rule-engine/src/main/java/com/muyu/engine/basic/handler/DataEngineRecordHandler.java @@ -13,11 +13,11 @@ import com.muyu.common.domain.DataValue; */ public class DataEngineRecordHandler { - public static void set(DataValue dataValue){ + public static void set(DataValue[] dataValue){ DataEngineHandler.set(dataValue); } - public static DataValue get(){ + public static DataValue[] get(){ return DataEngineHandler.get(); } @@ -26,7 +26,7 @@ public class DataEngineRecordHandler { } public static Object getValue(){ - return get().getValue(); + return get().getClass(); } public static Integer getIntegerValue(){ diff --git a/cloud-rule-engine/src/main/java/com/muyu/engine/basic/handler/DataEngineRowHandler.java b/cloud-rule-engine/src/main/java/com/muyu/engine/basic/handler/DataEngineRowHandler.java deleted file mode 100644 index 70e3fd6..0000000 --- a/cloud-rule-engine/src/main/java/com/muyu/engine/basic/handler/DataEngineRowHandler.java +++ /dev/null @@ -1,23 +0,0 @@ -package com.muyu.engine.basic.handler; - -import com.muyu.common.domain.DataValue; - -/** - * @Author:蓬叁 - * @Package:com.muyu.engine.basic.handler - * @Project:cloud-rule - * @name:DataEngineValueHandler - * @Date:2024/8/29 下午3:21 - * @Description: 数据记录/行作用域 - */ -public class DataEngineRowHandler { - - public static void set(DataValue[] dataValue){ - DataEngineHandler.set(dataValue); - } - - public static DataValue[] get(){ - return DataEngineHandler.get(); - } - -} diff --git a/cloud-rule-engine/src/main/java/com/muyu/generate/GenerateEmailAWEOIF.java b/cloud-rule-engine/src/main/java/com/muyu/generate/GenerateEmailAWEOIF.java index a197c75..8170173 100644 --- a/cloud-rule-engine/src/main/java/com/muyu/generate/GenerateEmailAWEOIF.java +++ b/cloud-rule-engine/src/main/java/com/muyu/generate/GenerateEmailAWEOIF.java @@ -12,5 +12,11 @@ import com.muyu.engine.basic.abstracts.DataEngineValueActuator; public class GenerateEmailAWEOIF extends DataEngineValueActuator { @Override public void run () { + DataValue dataValue = get(); + if (dataValue == null){ + System.out.println("数据为空,需要丢弃。"); + } else { + System.out.println("数据非空,数据:" + dataValue); + } } } diff --git a/cloud-rule-engine/src/main/java/com/muyu/server/ENGINE_VALUE_JDIES732842_V1.java b/cloud-rule-engine/src/main/java/com/muyu/server/ENGINE_VALUE_JDIES732842_V1.java index 4575bee..df07a83 100644 --- a/cloud-rule-engine/src/main/java/com/muyu/server/ENGINE_VALUE_JDIES732842_V1.java +++ b/cloud-rule-engine/src/main/java/com/muyu/server/ENGINE_VALUE_JDIES732842_V1.java @@ -1,6 +1,8 @@ package com.muyu.server; +import com.muyu.common.domain.DataRecord; import com.muyu.common.domain.DataValue; +import com.muyu.common.domain.RuleData; import com.muyu.engine.basic.abstracts.DataEngineValueActuator; /** diff --git a/cloud-rule-server/src/main/java/com/muyu/controller/RuleVersionController.java b/cloud-rule-server/src/main/java/com/muyu/controller/RuleVersionController.java index 32d4fda..c9bd5ee 100644 --- a/cloud-rule-server/src/main/java/com/muyu/controller/RuleVersionController.java +++ b/cloud-rule-server/src/main/java/com/muyu/controller/RuleVersionController.java @@ -162,4 +162,10 @@ public class RuleVersionController { return Result.success(null,"测试成功"); } + public Result test( + + ){ + return Result.success(); + } + }