scorpio 2 anos atrás
pai
commit
e459e27f4c
1 arquivos alterados com 4 adições e 2 exclusões
  1. 4 2
      src/views/home/component/form_dialog.vue

+ 4 - 2
src/views/home/component/form_dialog.vue

@@ -100,7 +100,7 @@
         <!--        </div>-->
         <div class="flex flex-justify-start flex-center">
           <span class="bold grey ml-5 ">字段选择</span>
-          <el-checkbox class='ml-20' @change='allChange'>全 选</el-checkbox>
+          <el-checkbox v-if='fieldType[selectIndex]' class='ml-20' v-model='fieldType[selectIndex].checkAll' @change='allChange'>全 选</el-checkbox>
           <div class='flex flex-center' v-if='selectIndex === 2'>
             <div class='bold ml-10 text-right' style='width: 80px'>筛选:</div>
             <el-select
@@ -235,6 +235,7 @@ export default {
       checkList: [],
       selectIndex: -1,
       resultParams: [],
+      checkAll: false,
       inspectList: [],
       page: {
         current: 1,
@@ -351,7 +352,7 @@ export default {
      */
     parseList (list, index, reset) {
       const tmps = list.map(e => {
-        e.checked = reset ? false : this.fieldType[index].params === undefined ? false : this.fieldType[index].params.findIndex(sub => sub.id === e.id) > -1
+        e.checked = e.checked === 1 ? true : reset ? false : this.fieldType[index].params === undefined ? false : this.fieldType[index].params.findIndex(sub => sub.id === e.id) > -1
         return e
       }).filter(sub => sub.code !== 'name')
       if (this.fieldType[index].params !== undefined && reset === false) {
@@ -365,6 +366,7 @@ export default {
         this.fieldType[index].params = tmps
       }
       this.fieldType[index].count = this.fieldType[index].params.filter(e => e.checked).length
+      this.fieldType[index].checkAll = this.fieldType[index].count === this.fieldType[index].params.length
     },
     importExcel () {
       if (this.attaches && this.attaches.length === 0) {