From c041523ff100a6a43ebc4411125a3e566e19f193 Mon Sep 17 00:00:00 2001
From: jinlin <jinlin>
Date: 星期五, 24 十一月 2023 14:16:16 +0800
Subject: [PATCH] Changes

---
 web/src/components/config-uploader/src/config-uploader.vue |   67 +++++++++++++++++++++++----------
 1 files changed, 46 insertions(+), 21 deletions(-)

diff --git a/web/src/components/config-uploader/src/config-uploader.vue b/web/src/components/config-uploader/src/config-uploader.vue
index 4d45202..1e5fe8e 100644
--- a/web/src/components/config-uploader/src/config-uploader.vue
+++ b/web/src/components/config-uploader/src/config-uploader.vue
@@ -1,9 +1,9 @@
 <template>
-  <div>
-    <el-collapse class="config-uploader" v-model="activeNames" v-if="oss && oss.groups.length>1">
+  <div v-if="oss">
+    <el-collapse class="config-uploader" v-model="activeNames" v-if="oss.groups.length>1">
       <el-collapse-item name="1" v-for="group in (oss.groups || [])" :key="group.busiFieldGroup">
         <template slot="title">
-          <el-tag v-if="!image">{{group.busiFieldGroup}}</el-tag>
+          <el-tag>{{group.busiFieldGroup}}</el-tag>
         </template>
         <!-- <zt-form-item :label="field.busiFieldName" :prop="field.busiField" v-for="field in group.fields"
                        :key="field.busiField" :rules="field.isRequired ? 'required':''" style="width: 100%;">
@@ -11,15 +11,17 @@
                         :accept="field.accept" :file-size="field.fileSize" @input="change(field.busiField)"/>
          </zt-form-item>-->
         <el-table :data="group.fields" :show-header="false">
-          <el-table-column width="250" style="text-align: left;white-space:nowrap;">
+          <el-table-column width="180" style="text-align: left;white-space:nowrap;">
             <template slot-scope="scope">
-              <span v-html="scope.row.busiFieldName"></span>
+              <span v-html="(scope.row.isRequired?'<font color=red>* </font>':'')+ scope.row.busiFieldName"></span>
             </template>
           </el-table-column>
           <el-table-column align="left">
             <template slot-scope="scope">
-              <zt-uploader :image="image" v-model="dataForm[scope.row.busiField]" multiple :limit="scope.row.fileLimit" :file-type="scope.row.fileType"
-                           :accept="scope.row.accept" :file-size="scope.row.fileSize" @getUploaderImg="getUploaderImg" @input="change(scope.row.busiField)"/>
+              <zt-uploader v-model="dataForm[scope.row.busiField]" :dataForm="dataForm" multiple
+                           :limit="scope.row.fileLimit" :file-type="scope.row.fileTypeArr"
+                           :showFileList2="false" :accept="scope.row.accept" :file-size="scope.row.fileSize"
+                           @input="change(scope.row.busiField)"/>
             </template>
           </el-table-column>
         </el-table>
@@ -32,16 +34,26 @@
            <zt-uploader v-model="dataForm[field.busiField]" multiple :limit="field.fileLimit" :file-type="field.fileType"
                         :accept="field.accept" :file-size="field.fileSize" @input="change(field.busiField)"/>
          </zt-form-item>-->
+        <template slot="title">
+          <el-tag>{{group.busiFieldGroup}}</el-tag>
+        </template>
+        <!-- <zt-form-item :label="field.busiFieldName" :prop="field.busiField" v-for="field in group.fields"
+                       :key="field.busiField" :rules="field.isRequired ? 'required':''" style="width: 100%;">
+           <zt-uploader v-model="dataForm[field.busiField]" multiple :limit="field.fileLimit" :file-type="field.fileType"
+                        :accept="field.accept" :file-size="field.fileSize" @input="change(field.busiField)"/>
+         </zt-form-item>-->
         <el-table :data="group.fields" :show-header="false">
-          <el-table-column width="250" style="text-align: left;white-space:nowrap;">
+          <el-table-column width="180" style="text-align: left;white-space:nowrap;">
             <template slot-scope="scope">
-              <span v-html="scope.row.busiFieldName"></span>
+              <span v-html="(scope.row.isRequired?'<font color=red>* </font>':'')+ scope.row.busiFieldName"></span>
             </template>
           </el-table-column>
           <el-table-column align="left">
             <template slot-scope="scope">
-              <zt-uploader :image="image" v-model="dataForm[scope.row.busiField]" multiple :limit="scope.row.fileLimit" :file-type="scope.row.fileType"
-                           :accept="scope.row.accept" :file-size="scope.row.fileSize" @getUploaderImg="getUploaderImg" @input="change(scope.row.busiField)"/>
+              <zt-uploader v-model="dataForm[scope.row.busiField]" :dataForm="dataForm" multiple
+                           :limit="scope.row.fileLimit" :file-type="scope.row.fileTypeArr"
+                           :showFileList2="false" :accept="scope.row.accept" :file-size="scope.row.fileSize"
+                           @input="change(scope.row.busiField)"/>
             </template>
           </el-table-column>
         </el-table>
@@ -58,7 +70,6 @@
     props: {
       value: Object,
       dataForm: Object,
-      image:false,
       busiType: String // 涓氬姟绫诲瀷
     },
     data() {
@@ -72,7 +83,15 @@
         let arr = []
         if (this.dataForm.files && this.dataForm.files.groups) {
           this.dataForm.files.groups.forEach(group => {
-            group.fields.forEach(field => arr.push(field))
+            group.fields.forEach(field => {
+              let arrType = []
+              if (field.fileTypes) {
+                arrType = field.fileTypes.split(',')
+              }
+              //this.$set(field, 'fileTypeArr', arrType)
+              field.fileTypeArr = arrType
+              arr.push(field)
+            })
           })
         }
         return arr
@@ -110,25 +129,31 @@
       getOss() {
         let arr = (this.$store.state.oss.configs || []).filter(config => config.busiType === this.busiType)
         if (arr.length > 0) {
+          arr[0].groups.forEach(group => {
+            group.fields.forEach(field => {
+              let arrType = []
+              if (field.fileTypes) {
+                arrType = field.fileTypes.split(',')
+              }
+              //this.$set(field, 'fileTypeArr', arrType)
+              field.fileTypeArr = arrType
+            })
+          })
+          console.log(JSON.parse(JSON.stringify(arr[0])),'JSON.parse(JSON.stringify(arr[0]))')
           return JSON.parse(JSON.stringify(arr[0]))
         }
         return null
       },
       change(busiField) {
-        console.log(busiField,'busiField busiField')
         this.fields.forEach(field => {
           if (field.busiField === busiField) {
             field.files.length = 0
             this.dataForm[busiField].forEach(file => field.files.push(file))
+            if (this.dataForm) {
+              this.dataForm.hasUploadFinsh = 100
+            }
           }
         })
-      },
-      getUploaderImg(list){
-        // this.imageList = list
-        if(list[0].url){
-          this.$emit('getImageUrl',list[0].url)
-        }
-
       }
     }
   }

--
Gitblit v1.9.1