diff --git a/.idea/codeStyles/Project.xml b/.idea/codeStyles/Project.xml
index 8772891..6591e49 100644
--- a/.idea/codeStyles/Project.xml
+++ b/.idea/codeStyles/Project.xml
@@ -104,5 +104,10 @@
+
+
+
+
+
\ No newline at end of file
diff --git a/leopard-server/src/main/java/com/lanyuanxiaoyao/leopard/server/controller/TaskTemplateController.java b/leopard-server/src/main/java/com/lanyuanxiaoyao/leopard/server/controller/TaskTemplateController.java
index 2503348..850bbd1 100644
--- a/leopard-server/src/main/java/com/lanyuanxiaoyao/leopard/server/controller/TaskTemplateController.java
+++ b/leopard-server/src/main/java/com/lanyuanxiaoyao/leopard/server/controller/TaskTemplateController.java
@@ -1,6 +1,7 @@
package com.lanyuanxiaoyao.leopard.server.controller;
import cn.hutool.core.util.IdUtil;
+import cn.hutool.core.util.StrUtil;
import com.lanyuanxiaoyao.leopard.core.entity.TaskTemplate;
import com.lanyuanxiaoyao.leopard.server.service.TaskTemplateService;
import com.lanyuanxiaoyao.service.template.controller.SimpleControllerSupport;
@@ -30,7 +31,7 @@ public class TaskTemplateController extends SimpleControllerSupport {
super(repository);
}
+ private void validateExpression(String expression) {
+ var response = LiteFlowChainELBuilder.validateWithEx(expression);
+ if (!response.isSuccess()) {
+ throw new RuntimeException(response.getCause());
+ }
+ }
+
@Override
public Long save(TaskTemplate entity) {
+ validateExpression(entity.getExpression());
Long id = super.save(entity);
LiteflowMetaOperator.reloadAllChain();
return id;
@@ -21,6 +30,7 @@ public class TaskTemplateService extends SimpleServiceSupport {
@Override
public void save(Iterable taskTemplates) {
+ taskTemplates.forEach(template -> validateExpression(template.getExpression()));
super.save(taskTemplates);
LiteflowMetaOperator.reloadAllChain();
}