RuoYi
2020-11-16 abf81c250a27085f1f8dcfff0af77ee43111b7d1
代码生成支持上传控件
已修改5个文件
48 ■■■■■ 文件已修改
src/main/java/com/ruoyi/common/constant/GenConstants.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ruoyi/project/tool/gen/domain/GenTableColumn.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ruoyi/project/tool/gen/util/GenUtils.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/vm/vue/index-tree.vue.vm 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/vm/vue/index.vue.vm 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ruoyi/common/constant/GenConstants.java
@@ -74,6 +74,9 @@
    /** 日期控件 */
    public static final String HTML_DATETIME = "datetime";
    /** 上传控件 */
    public static final String HTML_UPLOAD_IMAGE = "uploadImage";
    /** 富文本控件 */
    public static final String HTML_EDITOR = "editor";
src/main/java/com/ruoyi/project/tool/gen/domain/GenTableColumn.java
@@ -59,7 +59,7 @@
    /** 查询方式(EQ等于、NE不等于、GT大于、LT小于、LIKE模糊、BETWEEN范围) */
    private String queryType;
    /** 显示类型(input文本框、textarea文本域、select下拉框、checkbox复选框、radio单选框、datetime日期控件、editor富文本控件) */
    /** 显示类型(input文本框、textarea文本域、select下拉框、checkbox复选框、radio单选框、datetime日期控件、upload上传控件、editor富文本控件) */
    private String htmlType;
    /** 字典类型 */
src/main/java/com/ruoyi/project/tool/gen/util/GenUtils.java
@@ -111,6 +111,11 @@
        {
            column.setHtmlType(GenConstants.HTML_SELECT);
        }
        // 文件字段设置上传控件
        else if (StringUtils.endsWithIgnoreCase(columnName, "image"))
        {
            column.setHtmlType(GenConstants.HTML_UPLOAD_IMAGE);
        }
        // 内容字段设置富文本控件
        else if (StringUtils.endsWithIgnoreCase(columnName, "content"))
        {
src/main/resources/vm/vue/index-tree.vue.vm
@@ -139,6 +139,10 @@
        <el-form-item label="${comment}" prop="${field}">
          <el-input v-model="form.${field}" placeholder="请输入${comment}" />
        </el-form-item>
#elseif($column.htmlType == "uploadImage")
        <el-form-item label="${comment}">
          <uploadImage v-model="form.${field}"/>
        </el-form-item>
#elseif($column.htmlType == "editor")
        <el-form-item label="${comment}">
          <editor v-model="form.${field}" :min-height="192"/>
@@ -226,6 +230,12 @@
import Treeselect from "@riophae/vue-treeselect";
import "@riophae/vue-treeselect/dist/vue-treeselect.css";
#foreach($column in $columns)
#if($column.insert && !$column.superColumn && !$column.pk && $column.htmlType == "uploadImage")
import UploadImage from '@/components/UploadImage';
#break
#end
#end
#foreach($column in $columns)
#if($column.insert && !$column.superColumn && !$column.pk && $column.htmlType == "editor")
import Editor from '@/components/Editor';
#break
@@ -236,6 +246,12 @@
  name: "${BusinessName}",
  components: {
#foreach($column in $columns)
#if($column.insert && !$column.superColumn && !$column.pk && $column.htmlType == "uploadImage")
    UploadImage,
#break
#end
#end
#foreach($column in $columns)
#if($column.insert && !$column.superColumn && !$column.pk && $column.htmlType == "editor")
    Editor,
#break
src/main/resources/vm/vue/index.vue.vm
@@ -168,6 +168,10 @@
        <el-form-item label="${comment}" prop="${field}">
          <el-input v-model="form.${field}" placeholder="请输入${comment}" />
        </el-form-item>
#elseif($column.htmlType == "uploadImage")
        <el-form-item label="${comment}">
          <uploadImage v-model="form.${field}"/>
        </el-form-item>
#elseif($column.htmlType == "editor")
        <el-form-item label="${comment}">
          <editor v-model="form.${field}" :min-height="192"/>
@@ -253,6 +257,12 @@
<script>
import { list${BusinessName}, get${BusinessName}, del${BusinessName}, add${BusinessName}, update${BusinessName}, export${BusinessName} } from "@/api/${moduleName}/${businessName}";
#foreach($column in $columns)
#if($column.insert && !$column.superColumn && !$column.pk && $column.htmlType == "uploadImage")
import UploadImage from '@/components/UploadImage';
#break
#end
#end
#foreach($column in $columns)
#if($column.insert && !$column.superColumn && !$column.pk && $column.htmlType == "editor")
import Editor from '@/components/Editor';
#break
@@ -261,12 +271,20 @@
export default {
  name: "${BusinessName}",
  components: {
#foreach($column in $columns)
#if($column.insert && !$column.superColumn && !$column.pk && $column.htmlType == "editor")
  components: { Editor },
#if($column.insert && !$column.superColumn && !$column.pk && $column.htmlType == "uploadImage")
    UploadImage,
#break
#end
#end
#foreach($column in $columns)
#if($column.insert && !$column.superColumn && !$column.pk && $column.htmlType == "editor")
    Editor,
#break
#end
#end
  },
  data() {
    return {
      // 遮罩层