diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/constant/GenConstants.java b/ruoyi-common/src/main/java/com/ruoyi/common/constant/GenConstants.java index e7382b3f1..8afad55ee 100644 --- a/ruoyi-common/src/main/java/com/ruoyi/common/constant/GenConstants.java +++ b/ruoyi-common/src/main/java/com/ruoyi/common/constant/GenConstants.java @@ -41,8 +41,8 @@ public class GenConstants public static final String[] COLUMNTYPE_TIME = { "datetime", "time", "date", "timestamp" }; /** 数据库数字类型 */ - public static final String[] COLUMNTYPE_NUMBER = { "tinyint", "smallint", "mediumint", "int", "number", "integer", - "bit", "bigint", "float", "double", "decimal" }; + public static final String[] COLUMNTYPE_NUMBER = { "bigint", "tinyint", "smallint", "mediumint", "int", "integer", "bit", + "number", "numeric", "float", "double", "decimal" }; /** 页面不需要编辑字段 */ public static final String[] COLUMNNAME_NOT_EDIT = { "id", "create_by", "create_time", "del_flag" }; 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 e28c0bb0e..558b88bf7 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,6 +1,8 @@ package com.ruoyi.generator.util; import java.util.Arrays; + +import org.apache.commons.lang3.ArrayUtils; import org.apache.commons.lang3.RegExUtils; import com.ruoyi.common.constant.GenConstants; import com.ruoyi.common.utils.StringUtils; @@ -60,14 +62,13 @@ public class GenUtils { column.setHtmlType(GenConstants.HTML_INPUT); + int index = ArrayUtils.indexOf(GenConstants.COLUMNTYPE_NUMBER, dataType); // 如果是浮点型 统一用BigDecimal - String[] str = StringUtils.split(StringUtils.substringBetween(column.getColumnType(), "(", ")"), ","); - if (str != null && str.length == 2 && Integer.parseInt(str[1]) > 0) - { + if (index > 6) { column.setJavaType(GenConstants.TYPE_BIGDECIMAL); } // 如果是整形 - else if (str != null && str.length == 1 && Integer.parseInt(str[0]) <= 10) + else if (index > 0) { column.setJavaType(GenConstants.TYPE_INTEGER); }