From afc4f9552fad069e045eaa4f5ecd7635c7d9ecdd Mon Sep 17 00:00:00 2001
From: 疯狂的狮子li <15040126243@163.com>
Date: 星期五, 22 七月 2022 12:34:14 +0800
Subject: [PATCH] update 更改首页过时的技术
---
ruoyi-generator/src/main/java/com/ruoyi/generator/util/GenUtils.java | 489 +++++++++++++++++++++++++----------------------------
1 files changed, 232 insertions(+), 257 deletions(-)
diff --git a/ruoyi-generator/src/main/java/com/ruoyi/generator/util/GenUtils.java b/ruoyi-generator/src/main/java/com/ruoyi/generator/util/GenUtils.java
index e28c0bb..b6c2248 100644
--- a/ruoyi-generator/src/main/java/com/ruoyi/generator/util/GenUtils.java
+++ b/ruoyi-generator/src/main/java/com/ruoyi/generator/util/GenUtils.java
@@ -1,257 +1,232 @@
-package com.ruoyi.generator.util;
-
-import java.util.Arrays;
-import org.apache.commons.lang3.RegExUtils;
-import com.ruoyi.common.constant.GenConstants;
-import com.ruoyi.common.utils.StringUtils;
-import com.ruoyi.generator.config.GenConfig;
-import com.ruoyi.generator.domain.GenTable;
-import com.ruoyi.generator.domain.GenTableColumn;
-
-/**
- * 浠g爜鐢熸垚鍣� 宸ュ叿绫�
- *
- * @author ruoyi
- */
-public class GenUtils
-{
- /**
- * 鍒濆鍖栬〃淇℃伅
- */
- public static void initTable(GenTable genTable, String operName)
- {
- genTable.setClassName(convertClassName(genTable.getTableName()));
- genTable.setPackageName(GenConfig.getPackageName());
- genTable.setModuleName(getModuleName(GenConfig.getPackageName()));
- genTable.setBusinessName(getBusinessName(genTable.getTableName()));
- genTable.setFunctionName(replaceText(genTable.getTableComment()));
- genTable.setFunctionAuthor(GenConfig.getAuthor());
- genTable.setCreateBy(operName);
- }
-
- /**
- * 鍒濆鍖栧垪灞炴�у瓧娈�
- */
- public static void initColumnField(GenTableColumn column, GenTable table)
- {
- String dataType = getDbType(column.getColumnType());
- String columnName = column.getColumnName();
- column.setTableId(table.getTableId());
- column.setCreateBy(table.getCreateBy());
- // 璁剧疆java瀛楁鍚�
- column.setJavaField(StringUtils.toCamelCase(columnName));
- // 璁剧疆榛樿绫诲瀷
- column.setJavaType(GenConstants.TYPE_STRING);
- column.setQueryType(GenConstants.QUERY_EQ);
-
- if (arraysContains(GenConstants.COLUMNTYPE_STR, dataType) || arraysContains(GenConstants.COLUMNTYPE_TEXT, dataType))
- {
- // 瀛楃涓查暱搴﹁秴杩�500璁剧疆涓烘枃鏈煙
- Integer columnLength = getColumnLength(column.getColumnType());
- String htmlType = columnLength >= 500 || arraysContains(GenConstants.COLUMNTYPE_TEXT, dataType) ? GenConstants.HTML_TEXTAREA : GenConstants.HTML_INPUT;
- column.setHtmlType(htmlType);
- }
- else if (arraysContains(GenConstants.COLUMNTYPE_TIME, dataType))
- {
- column.setJavaType(GenConstants.TYPE_DATE);
- column.setHtmlType(GenConstants.HTML_DATETIME);
- }
- else if (arraysContains(GenConstants.COLUMNTYPE_NUMBER, dataType))
- {
- column.setHtmlType(GenConstants.HTML_INPUT);
-
- // 濡傛灉鏄诞鐐瑰瀷 缁熶竴鐢˙igDecimal
- String[] str = StringUtils.split(StringUtils.substringBetween(column.getColumnType(), "(", ")"), ",");
- if (str != null && str.length == 2 && Integer.parseInt(str[1]) > 0)
- {
- column.setJavaType(GenConstants.TYPE_BIGDECIMAL);
- }
- // 濡傛灉鏄暣褰�
- else if (str != null && str.length == 1 && Integer.parseInt(str[0]) <= 10)
- {
- column.setJavaType(GenConstants.TYPE_INTEGER);
- }
- // 闀挎暣褰�
- else
- {
- column.setJavaType(GenConstants.TYPE_LONG);
- }
- }
-
- // 鎻掑叆瀛楁锛堥粯璁ゆ墍鏈夊瓧娈甸兘闇�瑕佹彃鍏ワ級
- column.setIsInsert(GenConstants.REQUIRE);
-
- // 缂栬緫瀛楁
- if (!arraysContains(GenConstants.COLUMNNAME_NOT_EDIT, columnName) && !column.isPk())
- {
- column.setIsEdit(GenConstants.REQUIRE);
- }
- // 鍒楄〃瀛楁
- if (!arraysContains(GenConstants.COLUMNNAME_NOT_LIST, columnName) && !column.isPk())
- {
- column.setIsList(GenConstants.REQUIRE);
- }
- // 鏌ヨ瀛楁
- if (!arraysContains(GenConstants.COLUMNNAME_NOT_QUERY, columnName) && !column.isPk())
- {
- column.setIsQuery(GenConstants.REQUIRE);
- }
-
- // 鏌ヨ瀛楁绫诲瀷
- if (StringUtils.endsWithIgnoreCase(columnName, "name"))
- {
- column.setQueryType(GenConstants.QUERY_LIKE);
- }
- // 鐘舵�佸瓧娈佃缃崟閫夋
- if (StringUtils.endsWithIgnoreCase(columnName, "status"))
- {
- column.setHtmlType(GenConstants.HTML_RADIO);
- }
- // 绫诲瀷&鎬у埆瀛楁璁剧疆涓嬫媺妗�
- else if (StringUtils.endsWithIgnoreCase(columnName, "type")
- || StringUtils.endsWithIgnoreCase(columnName, "sex"))
- {
- column.setHtmlType(GenConstants.HTML_SELECT);
- }
- // 鍥剧墖瀛楁璁剧疆鍥剧墖涓婁紶鎺т欢
- else if (StringUtils.endsWithIgnoreCase(columnName, "image"))
- {
- column.setHtmlType(GenConstants.HTML_IMAGE_UPLOAD);
- }
- // 鏂囦欢瀛楁璁剧疆鏂囦欢涓婁紶鎺т欢
- else if (StringUtils.endsWithIgnoreCase(columnName, "file"))
- {
- column.setHtmlType(GenConstants.HTML_FILE_UPLOAD);
- }
- // 鍐呭瀛楁璁剧疆瀵屾枃鏈帶浠�
- else if (StringUtils.endsWithIgnoreCase(columnName, "content"))
- {
- column.setHtmlType(GenConstants.HTML_EDITOR);
- }
- }
-
- /**
- * 鏍¢獙鏁扮粍鏄惁鍖呭惈鎸囧畾鍊�
- *
- * @param arr 鏁扮粍
- * @param targetValue 鍊�
- * @return 鏄惁鍖呭惈
- */
- public static boolean arraysContains(String[] arr, String targetValue)
- {
- return Arrays.asList(arr).contains(targetValue);
- }
-
- /**
- * 鑾峰彇妯″潡鍚�
- *
- * @param packageName 鍖呭悕
- * @return 妯″潡鍚�
- */
- public static String getModuleName(String packageName)
- {
- int lastIndex = packageName.lastIndexOf(".");
- int nameLength = packageName.length();
- return StringUtils.substring(packageName, lastIndex + 1, nameLength);
- }
-
- /**
- * 鑾峰彇涓氬姟鍚�
- *
- * @param tableName 琛ㄥ悕
- * @return 涓氬姟鍚�
- */
- public static String getBusinessName(String tableName)
- {
- int lastIndex = tableName.lastIndexOf("_");
- int nameLength = tableName.length();
- return StringUtils.substring(tableName, lastIndex + 1, nameLength);
- }
-
- /**
- * 琛ㄥ悕杞崲鎴怞ava绫诲悕
- *
- * @param tableName 琛ㄥ悕绉�
- * @return 绫诲悕
- */
- public static String convertClassName(String tableName)
- {
- boolean autoRemovePre = GenConfig.getAutoRemovePre();
- String tablePrefix = GenConfig.getTablePrefix();
- if (autoRemovePre && StringUtils.isNotEmpty(tablePrefix))
- {
- String[] searchList = StringUtils.split(tablePrefix, ",");
- tableName = replaceFirst(tableName, searchList);
- }
- return StringUtils.convertToCamelCase(tableName);
- }
-
- /**
- * 鎵归噺鏇挎崲鍓嶇紑
- *
- * @param replacementm 鏇挎崲鍊�
- * @param searchList 鏇挎崲鍒楄〃
- * @return
- */
- public static String replaceFirst(String replacementm, String[] searchList)
- {
- String text = replacementm;
- for (String searchString : searchList)
- {
- if (replacementm.startsWith(searchString))
- {
- text = replacementm.replaceFirst(searchString, "");
- break;
- }
- }
- return text;
- }
-
- /**
- * 鍏抽敭瀛楁浛鎹�
- *
- * @param text 闇�瑕佽鏇挎崲鐨勫悕瀛�
- * @return 鏇挎崲鍚庣殑鍚嶅瓧
- */
- public static String replaceText(String text)
- {
- return RegExUtils.replaceAll(text, "(?:琛▅鑻ヤ緷)", "");
- }
-
- /**
- * 鑾峰彇鏁版嵁搴撶被鍨嬪瓧娈�
- *
- * @param columnType 鍒楃被鍨�
- * @return 鎴彇鍚庣殑鍒楃被鍨�
- */
- public static String getDbType(String columnType)
- {
- if (StringUtils.indexOf(columnType, "(") > 0)
- {
- return StringUtils.substringBefore(columnType, "(");
- }
- else
- {
- return columnType;
- }
- }
-
- /**
- * 鑾峰彇瀛楁闀垮害
- *
- * @param columnType 鍒楃被鍨�
- * @return 鎴彇鍚庣殑鍒楃被鍨�
- */
- public static Integer getColumnLength(String columnType)
- {
- if (StringUtils.indexOf(columnType, "(") > 0)
- {
- String length = StringUtils.substringBetween(columnType, "(", ")");
- return Integer.valueOf(length);
- }
- else
- {
- return 0;
- }
- }
-}
+package com.ruoyi.generator.util;
+
+import com.ruoyi.common.constant.GenConstants;
+import com.ruoyi.common.utils.StringUtils;
+import com.ruoyi.generator.config.GenConfig;
+import com.ruoyi.generator.domain.GenTable;
+import com.ruoyi.generator.domain.GenTableColumn;
+import lombok.AccessLevel;
+import lombok.NoArgsConstructor;
+import org.apache.commons.lang3.RegExUtils;
+
+import java.util.Arrays;
+
+/**
+ * 浠g爜鐢熸垚鍣� 宸ュ叿绫�
+ *
+ * @author ruoyi
+ */
+@NoArgsConstructor(access = AccessLevel.PRIVATE)
+public class GenUtils {
+
+ /**
+ * 鍒濆鍖栬〃淇℃伅
+ */
+ public static void initTable(GenTable genTable, String operName) {
+ genTable.setClassName(convertClassName(genTable.getTableName()));
+ genTable.setPackageName(GenConfig.getPackageName());
+ genTable.setModuleName(getModuleName(GenConfig.getPackageName()));
+ genTable.setBusinessName(getBusinessName(genTable.getTableName()));
+ genTable.setFunctionName(replaceText(genTable.getTableComment()));
+ genTable.setFunctionAuthor(GenConfig.getAuthor());
+ genTable.setCreateBy(operName);
+ }
+
+ /**
+ * 鍒濆鍖栧垪灞炴�у瓧娈�
+ */
+ public static void initColumnField(GenTableColumn column, GenTable table) {
+ String dataType = getDbType(column.getColumnType());
+ String columnName = column.getColumnName();
+ column.setTableId(table.getTableId());
+ column.setCreateBy(table.getCreateBy());
+ // 璁剧疆java瀛楁鍚�
+ column.setJavaField(StringUtils.toCamelCase(columnName));
+ // 璁剧疆榛樿绫诲瀷
+ column.setJavaType(GenConstants.TYPE_STRING);
+ column.setQueryType(GenConstants.QUERY_EQ);
+
+ if (arraysContains(GenConstants.COLUMNTYPE_STR, dataType) || arraysContains(GenConstants.COLUMNTYPE_TEXT, dataType)) {
+ // 瀛楃涓查暱搴﹁秴杩�500璁剧疆涓烘枃鏈煙
+ Integer columnLength = getColumnLength(column.getColumnType());
+ String htmlType = columnLength >= 500 || arraysContains(GenConstants.COLUMNTYPE_TEXT, dataType) ? GenConstants.HTML_TEXTAREA : GenConstants.HTML_INPUT;
+ column.setHtmlType(htmlType);
+ } else if (arraysContains(GenConstants.COLUMNTYPE_TIME, dataType)) {
+ column.setJavaType(GenConstants.TYPE_DATE);
+ column.setHtmlType(GenConstants.HTML_DATETIME);
+ } else if (arraysContains(GenConstants.COLUMNTYPE_NUMBER, dataType)) {
+ column.setHtmlType(GenConstants.HTML_INPUT);
+
+ // 濡傛灉鏄诞鐐瑰瀷 缁熶竴鐢˙igDecimal
+ String[] str = StringUtils.split(StringUtils.substringBetween(column.getColumnType(), "(", ")"), ",");
+ if (str != null && str.length == 2 && Integer.parseInt(str[1]) > 0) {
+ column.setJavaType(GenConstants.TYPE_BIGDECIMAL);
+ }
+ // 濡傛灉鏄暣褰�
+ else if (str != null && str.length == 1 && Integer.parseInt(str[0]) <= 10) {
+ column.setJavaType(GenConstants.TYPE_INTEGER);
+ }
+ // 闀挎暣褰�
+ else {
+ column.setJavaType(GenConstants.TYPE_LONG);
+ }
+ }
+
+ // BO瀵硅薄 榛樿鎻掑叆鍕鹃��
+ if (!arraysContains(GenConstants.COLUMNNAME_NOT_ADD, columnName) && !column.isPk()) {
+ column.setIsInsert(GenConstants.REQUIRE);
+ }
+ // BO瀵硅薄 榛樿缂栬緫鍕鹃��
+ if (!arraysContains(GenConstants.COLUMNNAME_NOT_EDIT, columnName)) {
+ column.setIsEdit(GenConstants.REQUIRE);
+ }
+ // BO瀵硅薄 榛樿鏄惁蹇呭~鍕鹃��
+ if (!arraysContains(GenConstants.COLUMNNAME_NOT_EDIT, columnName)) {
+ column.setIsRequired(GenConstants.REQUIRE);
+ }
+ // VO瀵硅薄 榛樿杩斿洖鍕鹃��
+ if (!arraysContains(GenConstants.COLUMNNAME_NOT_LIST, columnName)) {
+ column.setIsList(GenConstants.REQUIRE);
+ }
+ // BO瀵硅薄 榛樿鏌ヨ鍕鹃��
+ if (!arraysContains(GenConstants.COLUMNNAME_NOT_QUERY, columnName) && !column.isPk()) {
+ column.setIsQuery(GenConstants.REQUIRE);
+ }
+
+ // 鏌ヨ瀛楁绫诲瀷
+ if (StringUtils.endsWithIgnoreCase(columnName, "name")) {
+ column.setQueryType(GenConstants.QUERY_LIKE);
+ }
+ // 鐘舵�佸瓧娈佃缃崟閫夋
+ if (StringUtils.endsWithIgnoreCase(columnName, "status")) {
+ column.setHtmlType(GenConstants.HTML_RADIO);
+ }
+ // 绫诲瀷&鎬у埆瀛楁璁剧疆涓嬫媺妗�
+ else if (StringUtils.endsWithIgnoreCase(columnName, "type")
+ || StringUtils.endsWithIgnoreCase(columnName, "sex")) {
+ column.setHtmlType(GenConstants.HTML_SELECT);
+ }
+ // 鍥剧墖瀛楁璁剧疆鍥剧墖涓婁紶鎺т欢
+ else if (StringUtils.endsWithIgnoreCase(columnName, "image")) {
+ column.setHtmlType(GenConstants.HTML_IMAGE_UPLOAD);
+ }
+ // 鏂囦欢瀛楁璁剧疆鏂囦欢涓婁紶鎺т欢
+ else if (StringUtils.endsWithIgnoreCase(columnName, "file")) {
+ column.setHtmlType(GenConstants.HTML_FILE_UPLOAD);
+ }
+ // 鍐呭瀛楁璁剧疆瀵屾枃鏈帶浠�
+ else if (StringUtils.endsWithIgnoreCase(columnName, "content")) {
+ column.setHtmlType(GenConstants.HTML_EDITOR);
+ }
+ }
+
+ /**
+ * 鏍¢獙鏁扮粍鏄惁鍖呭惈鎸囧畾鍊�
+ *
+ * @param arr 鏁扮粍
+ * @param targetValue 鍊�
+ * @return 鏄惁鍖呭惈
+ */
+ public static boolean arraysContains(String[] arr, String targetValue) {
+ return Arrays.asList(arr).contains(targetValue);
+ }
+
+ /**
+ * 鑾峰彇妯″潡鍚�
+ *
+ * @param packageName 鍖呭悕
+ * @return 妯″潡鍚�
+ */
+ public static String getModuleName(String packageName) {
+ int lastIndex = packageName.lastIndexOf(".");
+ int nameLength = packageName.length();
+ return StringUtils.substring(packageName, lastIndex + 1, nameLength);
+ }
+
+ /**
+ * 鑾峰彇涓氬姟鍚�
+ *
+ * @param tableName 琛ㄥ悕
+ * @return 涓氬姟鍚�
+ */
+ public static String getBusinessName(String tableName) {
+ int firstIndex = tableName.indexOf("_");
+ int nameLength = tableName.length();
+ String businessName = StringUtils.substring(tableName, firstIndex + 1, nameLength);
+ businessName = StringUtils.toCamelCase(businessName);
+ return businessName;
+ }
+
+ /**
+ * 琛ㄥ悕杞崲鎴怞ava绫诲悕
+ *
+ * @param tableName 琛ㄥ悕绉�
+ * @return 绫诲悕
+ */
+ public static String convertClassName(String tableName) {
+ boolean autoRemovePre = GenConfig.getAutoRemovePre();
+ String tablePrefix = GenConfig.getTablePrefix();
+ if (autoRemovePre && StringUtils.isNotEmpty(tablePrefix)) {
+ String[] searchList = StringUtils.split(tablePrefix, ",");
+ tableName = replaceFirst(tableName, searchList);
+ }
+ return StringUtils.convertToCamelCase(tableName);
+ }
+
+ /**
+ * 鎵归噺鏇挎崲鍓嶇紑
+ *
+ * @param replacementm 鏇挎崲鍊�
+ * @param searchList 鏇挎崲鍒楄〃
+ * @return
+ */
+ public static String replaceFirst(String replacementm, String[] searchList) {
+ String text = replacementm;
+ for (String searchString : searchList) {
+ if (replacementm.startsWith(searchString)) {
+ text = replacementm.replaceFirst(searchString, "");
+ break;
+ }
+ }
+ return text;
+ }
+
+ /**
+ * 鍏抽敭瀛楁浛鎹�
+ *
+ * @param text 闇�瑕佽鏇挎崲鐨勫悕瀛�
+ * @return 鏇挎崲鍚庣殑鍚嶅瓧
+ */
+ public static String replaceText(String text) {
+ return RegExUtils.replaceAll(text, "(?:琛▅鑻ヤ緷)", "");
+ }
+
+ /**
+ * 鑾峰彇鏁版嵁搴撶被鍨嬪瓧娈�
+ *
+ * @param columnType 鍒楃被鍨�
+ * @return 鎴彇鍚庣殑鍒楃被鍨�
+ */
+ public static String getDbType(String columnType) {
+ if (StringUtils.indexOf(columnType, '(') > 0) {
+ return StringUtils.substringBefore(columnType, "(");
+ } else {
+ return columnType;
+ }
+ }
+
+ /**
+ * 鑾峰彇瀛楁闀垮害
+ *
+ * @param columnType 鍒楃被鍨�
+ * @return 鎴彇鍚庣殑鍒楃被鍨�
+ */
+ public static Integer getColumnLength(String columnType) {
+ if (StringUtils.indexOf(columnType, '(') > 0) {
+ String length = StringUtils.substringBetween(columnType, "(", ")");
+ return Integer.valueOf(length);
+ } else {
+ return 0;
+ }
+ }
+}
--
Gitblit v1.9.3