소스 검색

代码生成支持文件上传组件

RuoYi 4 년 전
부모
커밋
edd090a098

+ 4 - 1
ruoyi-common/src/main/java/com/ruoyi/common/constant/GenConstants.java

@@ -76,9 +76,12 @@ public class GenConstants
     /** 日期控件 */
     public static final String HTML_DATETIME = "datetime";
 
-    /** 图上传 */
+    /** 图上传控件 */
     public static final String HTML_IMAGE_UPLOAD = "imageUpload";
 
+    /** 文件上传控件 */
+    public static final String HTML_FILE_UPLOAD = "fileUpload";
+
     /** 富文本控件 */
     public static final String HTML_EDITOR = "editor";
 

+ 6 - 1
ruoyi-generator/src/main/java/com/ruoyi/generator/util/GenUtils.java

@@ -112,11 +112,16 @@ public class GenUtils
         {
             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"))
         {

+ 15 - 0
ruoyi-generator/src/main/resources/vm/vue/index-tree.vue.vm

@@ -157,6 +157,10 @@
         <el-form-item label="${comment}">
           <imageUpload v-model="form.${field}"/>
         </el-form-item>
+#elseif($column.htmlType == "fileUpload")
+        <el-form-item label="${comment}">
+          <imageUpload v-model="form.${field}"/>
+        </el-form-item>
 #elseif($column.htmlType == "editor")
         <el-form-item label="${comment}">
           <editor v-model="form.${field}" :min-height="192"/>
@@ -249,6 +253,11 @@ import ImageUpload from '@/components/ImageUpload';
 #break
 #end
 #end
+#if($column.insert && !$column.superColumn && !$column.pk && $column.htmlType == "fileUpload")
+import FileUpload from '@/components/FileUpload';
+#break
+#end
+#end
 #foreach($column in $columns)
 #if($column.insert && !$column.superColumn && !$column.pk && $column.htmlType == "editor")
 import Editor from '@/components/Editor';
@@ -266,6 +275,12 @@ export default {
 #end
 #end
 #foreach($column in $columns)
+#if($column.insert && !$column.superColumn && !$column.pk && $column.htmlType == "fileUpload")
+    FileUpload,
+#break
+#end
+#end
+#foreach($column in $columns)
 #if($column.insert && !$column.superColumn && !$column.pk && $column.htmlType == "editor")
     Editor,
 #break

+ 16 - 0
ruoyi-generator/src/main/resources/vm/vue/index.vue.vm

@@ -189,6 +189,10 @@
         <el-form-item label="${comment}">
           <imageUpload v-model="form.${field}"/>
         </el-form-item>
+#elseif($column.htmlType == "fileUpload")
+        <el-form-item label="${comment}">
+          <fileUpload v-model="form.${field}"/>
+        </el-form-item>
 #elseif($column.htmlType == "editor")
         <el-form-item label="${comment}">
           <editor v-model="form.${field}" :min-height="192"/>
@@ -280,6 +284,12 @@ import ImageUpload from '@/components/ImageUpload';
 #end
 #end
 #foreach($column in $columns)
+#if($column.insert && !$column.superColumn && !$column.pk && $column.htmlType == "fileUpload")
+import FileUpload from '@/components/FileUpload';
+#break
+#end
+#end
+#foreach($column in $columns)
 #if($column.insert && !$column.superColumn && !$column.pk && $column.htmlType == "editor")
 import Editor from '@/components/Editor';
 #break
@@ -296,6 +306,12 @@ export default {
 #end
 #end
 #foreach($column in $columns)
+#if($column.insert && !$column.superColumn && !$column.pk && $column.htmlType == "fileUpload")
+    FileUpload,
+#break
+#end
+#end
+#foreach($column in $columns)
 #if($column.insert && !$column.superColumn && !$column.pk && $column.htmlType == "editor")
     Editor,
 #break

+ 2 - 1
ruoyi-ui/src/views/tool/gen/editTable.vue

@@ -90,7 +90,8 @@
                 <el-option label="单选框" value="radio" />
                 <el-option label="复选框" value="checkbox" />
                 <el-option label="日期控件" value="datetime" />
-                <el-option label="单图上传" value="imageUpload" />
+                <el-option label="图片上传" value="imageUpload" />
+                <el-option label="文件上传" value="fileUpload" />
                 <el-option label="富文本控件" value="editor" />
               </el-select>
             </template>