<template>
  <el-dialog
    title="表单字段列表"
    :append-to-body="true"
    :modal-append-to-body="true"
    :close-on-click-modal="falseValue"
    :visible.sync="showDialog"
    :modal="falseValue"
    custom-class="dialog-style list-dialog dialog-checkbox pd_0"
    width="1200px"
    @close="dialogClose"
    v-el-drag-dialog
    v-el-dialog-center
  >
    <div class="cont" style="height:450px">
      <vxe-grid
        class="is-pointer"
        ref="table-m1"
        v-bind="vxeOption"
        @resizable-change="$vxeTableUtil.onColumnWitchChange"
        @custom="$vxeTableUtil.customHandle"
        @checkbox-change="addDataTable"
        @checkbox-all="checkAll"
        @cell-dblclick="checkWithSubmit"
      >
        <template #form>
          <div class="clearfix screen-btns">
            <div class="fr">
              <vxe-button icon="el-icon-brush" class="button-sty" @click="resetEvent" type="text" status="primary"
                          plain>{{$t1('重置')}}
              </vxe-button>
              <vxe-button status="warning" icon="el-icon-search" class="button-sty" @click="searchEvent">
                {{ $t1('搜索') }}
              </vxe-button>
            </div>
          </div>
          <!--          <vxe-form class="screen-box" title-width="92px" title-align="right" :data="formData" @submit="searchEvent"
                              @reset="resetEvent">
                      <vxe-form-item title="地区名称:" field="name">
                        <template v-slot>
                          <el-input v-model="formData.name" size="small" clearable/>
                        </template>
                      </vxe-form-item>
                      <vxe-form-item title="地区全称:" field="fullName">
                        <template v-slot>
                          <el-input v-model="formData.fullName" size="small" clearable/>
                        </template>
                      </vxe-form-item>
                    </vxe-form>-->
        </template>
      </vxe-grid>
    </div>
    <label id="labBtn" class="transverse">
      <div class="icon">
        <i class="el-icon-more"></i>
        <i class="el-icon-more"></i>
      </div>
    </label>
    <div class="multipleChoice">
      <el-tooltip :enterable="false" effect="dark" :content="$t1('全部删除')" placement="top"><a
        class="allDel icon-quanbushanchu"
        @click="clearChecked()"></a>
      </el-tooltip>
      <div class="list">
        <div class="item" v-for="(checkRow, index) in checkRows" :key="index">
          <p>{{ checkRow.fieldDesc }}</p>
          <a class="el-icon-close" @click="clearTable1Select(index)"></a>
        </div>
      </div>
    </div>
    <span slot="footer" class="dialog-footer">
			<span class="fl tips" v-if="!selectMulti">{{ $t1('注：双击确认选择（单选）') }}</span>
			<el-button type="primary" plain class="button-sty" @click="dialogClose">
				<i class="el-icon-close el-icon"></i>
				{{ $t1('取 消') }}
			</el-button>
			<el-button type="primary" @click="dialogPrimary" class="button-sty">
				<i class="el-icon-check el-icon"></i>
				{{ $t1('确 定') }}
			</el-button>
		</span>
  </el-dialog>
</template>

<script>
import {selectDialogMixins} from '@base/mixins/selectDialog/index.js';

export default {
  props: ['visiable', 'multi', 'rows', 'param', 'formCode'],
  mixins: [selectDialogMixins],
  created() {
    this.initSetting();
  },
  mounted() {
    this.initTableM1();
  },
  data() {
    var that = this;
    return {
      showDialog: true,
      falseValue: false,
      selectMulti: true,
      formData: {},
      vxeOption: {}
    };
  },
  methods: {
    async initTableM1() {
      let that = this;
      let tableRef = 'table-m1';
      let tableOption = {
        vue: that,
        tableRef: tableRef,
        tableName: 'user-form_form_field_dialog-m1',
        path: USER_PREFIX + '/form_template_field/getList',
        param: () => {
          return {
            stringOne: this.formCode
          };
        },
        columns: [
          {type: 'checkbox', fixed: 'left', width: 48, resizable: false},
          {
            title: "字段描述",
            field: "fieldDesc",
            width: 150
          },
          {
            title: "字段key",
            field: "fieldName",
            width: 150
          },
          {
            width: 47,
            fixed: 'right',
            title: '',
            sortable: false
          }
        ],
        config: {
          checkboxConfig: {
            checkStrictly: true,
            showHeader: this.selectMulti,
            trigger: 'row'
          },
          proxyConfig: {
            props: {
              result: "objx", // 配置响应结果列表字段
              total: "objx.length", // 配置响应结果总页数字段
            }
          }
        }
      };
      this.$vxeTableUtil.initVxeTable(tableOption).then(opts => {
        that.vxeOption = opts;
      });
    }
  }
}
</script>

<style scoped>

</style>
