From a78b5b7b2ac6eff4462548ed523f2e01076e77f3 Mon Sep 17 00:00:00 2001
From: 捏造的信仰 <yiding.he@gmail.com>
Date: Tue, 23 Aug 2022 13:36:29 +0800
Subject: [PATCH] 修复执行任务时,若方法入口在任务的父类,则无法执行的问题 实际项目开发中,可能会为所有定时任务类建一个共同的父类,任务的执行入口在父类定义,以便管理。此时使用 `getDeclaredMethod()` 是无法从子类找到要执行的方法的,而是要换用 `getMethod()` 方法。
---
ruoyi-generator/src/main/java/com/ruoyi/generator/util/VelocityUtils.java | 33 +++++++++++++++++++++++++--------
1 files changed, 25 insertions(+), 8 deletions(-)
diff --git a/ruoyi-generator/src/main/java/com/ruoyi/generator/util/VelocityUtils.java b/ruoyi-generator/src/main/java/com/ruoyi/generator/util/VelocityUtils.java
index 1dadf2c..733c714 100644
--- a/ruoyi-generator/src/main/java/com/ruoyi/generator/util/VelocityUtils.java
+++ b/ruoyi-generator/src/main/java/com/ruoyi/generator/util/VelocityUtils.java
@@ -3,8 +3,10 @@
import java.util.ArrayList;
import java.util.HashSet;
import java.util.List;
+import java.util.Set;
import org.apache.velocity.VelocityContext;
-import com.alibaba.fastjson.JSONObject;
+import com.alibaba.fastjson2.JSON;
+import com.alibaba.fastjson2.JSONObject;
import com.ruoyi.common.constant.GenConstants;
import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.common.utils.StringUtils;
@@ -74,7 +76,7 @@
public static void setMenuVelocityContext(VelocityContext context, GenTable genTable)
{
String options = genTable.getOptions();
- JSONObject paramsObj = JSONObject.parseObject(options);
+ JSONObject paramsObj = JSON.parseObject(options);
String parentMenuId = getParentMenuId(paramsObj);
context.put("parentMenuId", parentMenuId);
}
@@ -82,7 +84,7 @@
public static void setTreeVelocityContext(VelocityContext context, GenTable genTable)
{
String options = genTable.getOptions();
- JSONObject paramsObj = JSONObject.parseObject(options);
+ JSONObject paramsObj = JSON.parseObject(options);
String treeCode = getTreecode(paramsObj);
String treeParentCode = getTreeParentCode(paramsObj);
String treeName = getTreeName(paramsObj);
@@ -227,8 +229,7 @@
public static String getPackagePrefix(String packageName)
{
int lastIndex = packageName.lastIndexOf(".");
- String basePackage = StringUtils.substring(packageName, 0, lastIndex);
- return basePackage;
+ return StringUtils.substring(packageName, 0, lastIndex);
}
/**
@@ -270,7 +271,24 @@
public static String getDicts(GenTable genTable)
{
List<GenTableColumn> columns = genTable.getColumns();
- List<String> dicts = new ArrayList<String>();
+ Set<String> dicts = new HashSet<String>();
+ addDicts(dicts, columns);
+ if (StringUtils.isNotNull(genTable.getSubTable()))
+ {
+ List<GenTableColumn> subColumns = genTable.getSubTable().getColumns();
+ addDicts(dicts, subColumns);
+ }
+ return StringUtils.join(dicts, ", ");
+ }
+
+ /**
+ * 添加字典列表
+ *
+ * @param dicts 字典列表
+ * @param columns 列集合
+ */
+ public static void addDicts(Set<String> dicts, List<GenTableColumn> columns)
+ {
for (GenTableColumn column : columns)
{
if (!column.isSuperColumn() && StringUtils.isNotEmpty(column.getDictType()) && StringUtils.equalsAny(
@@ -280,7 +298,6 @@
dicts.add("'" + column.getDictType() + "'");
}
}
- return StringUtils.join(dicts, ", ");
}
/**
@@ -365,7 +382,7 @@
public static int getExpandColumn(GenTable genTable)
{
String options = genTable.getOptions();
- JSONObject paramsObj = JSONObject.parseObject(options);
+ JSONObject paramsObj = JSON.parseObject(options);
String treeName = paramsObj.getString(GenConstants.TREE_NAME);
int num = 0;
for (GenTableColumn column : genTable.getColumns())
--
Gitblit v1.9.2