<template>
  <a-card :bordered="false">
    <!-- 查询区域 -->
    <div class="table-page-search-wrapper">
      <a-form layout="inline" @keyup.enter.native="searchQuery">
        <a-row :gutter="24">
          <a-col :xl="6" :lg="7" :md="8" :sm="24">
            <a-form-item label="用地单位名称">
              <a-input placeholder="请输入用地单位名称" v-model="queryParam.createBy"/>
            </a-form-item>
          </a-col>
          <a-col :xl="6" :lg="7" :md="8" :sm="24">
            <a-form-item label="地块名称">
              <a-input placeholder="请输入地块名称" v-model="queryParam.dk"></a-input>
            </a-form-item>
          </a-col>
          <a-col :xl="6" :lg="7" :md="8" :sm="24">
            <a-form-item label="地块编号">
              <a-input placeholder="请输入地块编号" v-model="queryParam.dkbh"></a-input>
            </a-form-item>
          </a-col>
          <a-col :xl="6" :lg="7" :md="8" :sm="24">
            <a-form-item label="行政区划">
              <JAreaSelect ref="JArea" @Area="SelectArea"></JAreaSelect>
            </a-form-item>
          </a-col>
          <a-col :xl="6" :lg="7" :md="8" :sm="24">
            <a-form-item label="证书/合同/文件编号">
              <a-input placeholder="请输入证书/合同/文件编号" v-model="queryParam.wjbh"></a-input>
            </a-form-item>
          </a-col>


          <a-col :xl="6" :lg="7" :md="8" :sm="24">
            <a-form-item label="土地使用现状">
              <j-dict-select-tag type='list' v-model='queryParam.tdsyxz' dictCode='tdsyxz' placeholder='请选择土地使用现状'/>
            </a-form-item>
          </a-col>
          <a-col :xl="6" :lg="7" :md="8" :sm="24">
            <a-form-item label="是否通过审核">
              <j-dict-select-tag placeholder="请选择是否通过审核" v-model="queryParam.shzt" dictCode="shzt"/>
            </a-form-item>
          </a-col>
          <a-col :xl="6" :lg="7" :md="8" :sm="24">
            <a-form-item label="取得方式">

              <j-multi-select-tag v-model='queryParam.syqsyfs' dictCode='qdfs' placeholder='请选择取得方式'/>
            </a-form-item>
          </a-col>

          <a-col :xl="6" :lg="7" :md="8" :sm="24">
            <a-form-item label="土地使用权人">
              <a-input placeholder="请输入土地使用权人" v-model="queryParam.tdsyqr"></a-input>
            </a-form-item>
          </a-col>
          <a-col :xl="6" :lg="7" :md="8" :sm="24">
            <a-form-item label="是否上报">
              <j-dict-select-tag placeholder="请选择是否上报" v-model="queryParam.sfsb" dictCode="xxsbzt"/>
            </a-form-item>
          </a-col>
          <a-col :xl="6" :lg="7" :md="8" :sm="24">
            <a-form-item label="证书类型">
              <j-multi-select-tag placeholder="请选择证书类型" v-model="queryParam.zslx" dictCode="zslx"/>
            </a-form-item>
          </a-col>
          <a-col :xl="6" :lg="7" :md="8" :sm="24">
            <span style="float: left;overflow: hidden;" class="table-page-search-submitButtons">

              <a-button type="primary" @click="searchQuery" icon="search">查询</a-button>
              <a-button type="primary" @click="searchReset" icon="reload" style="margin-left: 8px">重置</a-button>
              <!--              <a @click="handleToggleSearch" style="margin-left: 8px">-->
              <!--                {{ toggleSearchStatus ? '收起' : '展开' }}-->
              <!--                <a-icon :type="toggleSearchStatus ? 'up' : 'down'"/>-->
              <!--              </a>-->
            </span>
          </a-col>
        </a-row>
      </a-form>
    </div>
    <!-- 查询区域-END -->

    <!-- 操作按钮区域 -->
    <div class="table-operator">
      <!--      <a-button v-has="'conts:add'"@click="handleAdd2" type="primary" icon="plus">填报信息</a-button>-->
      <a-button type="primary" icon="download" @click="handleExportXls('省属国企占有使用土地情况调查')">导出</a-button>
      <a-button type="primary" icon="download" @click="handleExportXls('省直单位占有使用土地情况调查')">全部导出</a-button>
      <!-- <a-upload name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl" @change="handleImportExcel">
       <a-button type="primary" icon="import">导入</a-button>
     </a-upload>
     &lt;!&ndash; 高级查询区域 &ndash;&gt;
     <j-super-query :fieldList="superFieldList" ref="superQueryModal" @handleSuperQuery="handleSuperQuery"></j-super-query>
     <a-dropdown v-if="selectedRowKeys.length > 0">
       <a-menu slot="overlay">
         <a-menu-item key="1" @click="batchDel"><a-icon type="delete"/>删除</a-menu-item>
       </a-menu>
       <a-button style="margin-left: 8px"> 批量操作 <a-icon type="down" /></a-button>
     </a-dropdown>-->
    </div>

    <!-- table区域-begin -->
    <!--    <div>-->
    <!--      <div class="ant-alert ant-alert-info" style="margin-bottom: 16px;">-->
    <!--        <i class="anticon anticon-info-circle ant-alert-icon"></i> 已选择 <a style="font-weight: 600">{{ selectedRowKeys.length }}</a>项-->
    <!--        <a style="margin-left: 24px" @click="onClearSelected">清空</a>-->
    <!--      </div>-->
    <a-tabs :active-key="this.changes" @change="callback">
      <a-tab-pane key="1" tab="列表信息">
        <a-table
          ref="table"
          size="middle"
          :scroll="{x:true}"
          bordered
          rowKey="id"
          :columns="columns"
          :dataSource="dataSource"
          :pagination="ipagination"
          :loading="loading"
          :rowSelection="{selectedRowKeys: selectedRowKeys, onChange: onSelectChange}"
          class="j-table-force-nowrap"
          @change="handleTableChange">

          <template slot="htmlSlot" slot-scope="text">
            <div v-html="text"></div>
          </template>
          <template slot="imgSlot" slot-scope="text,record">
            <span v-if="!text" style="font-size: 12px;font-style: italic;">无图片</span>
            <img v-else :src="getImgView(text)" :preview="record.id" height="25px" alt=""
                 style="max-width:80px;font-size: 12px;font-style: italic;"/>
          </template>
          <template slot="fileSlot" slot-scope="text">
            <span v-if="!text" style="font-size: 12px;font-style: italic;">无文件</span>
            <a-button
              v-else
              :ghost="true"
              type="primary"
              icon="download"
              size="small"
              @click="downloadFile(text)">
              下载
            </a-button>
          </template>

          <span slot="action" slot-scope="text, record">
                          <a-space>
<!--                          <a-button  @click="handleEdit(record)">编辑</a-button>-->
                          <a-button @click="handleDetail(record)" type='primary'>查看</a-button>
                            <!--                          <a-button v-if="record.sfsb===3" @click="handleWCSH(record.id)">重新审核</a-button>-->
                            <!--                             <a-popconfirm title="确定恢复么吗?" @confirm="() => handleHFYSH(record.id)">-->
                            <!--                            <a-button v-if="record.sfsb===4">恢复为已审核</a-button>-->
                            <!--                             </a-popconfirm>-->
                        </a-space>
        </span>

        </a-table>
      </a-tab-pane>
      <a-tab-pane key="2" tab="统计图表" force-render>
        <listTabBySz ref="table" :loading="this.load" :result-data="this.resultData"></listTabBySz>
      </a-tab-pane>
    </a-tabs>

    <qc-ssgqzysytdqk-modal ref="modalForm" @ok="modalFormOk"></qc-ssgqzysytdqk-modal>
  </a-card>
</template>

<script>

import '@/assets/less/TableExpand.less'
import {mixinDevice} from '@/utils/mixin'
import {JeecgListMixin} from '@/mixins/JeecgListMixin'
import QcSsgqzysytdqkModal from './modules/QcSsgqzysytdqkModal_tj'
import {filterMultiDictText} from '@/components/dict/JDictSelectUtil'
import {getAction} from '../../api/manage'
import {loadCategoryData} from '@/api/api'
import JAreaSelect from "@comp/jeecg/JAreaSelect";
import listTabBySz from '@/views/listStatistics/listTabBySz'
import store from '@/store'

export default {
  name: 'QcSsgqzysytdqkList',
  props: {
    param: {
      default: ""
    }
  },
  mixins: [JeecgListMixin, mixinDevice],
  components: {
    QcSsgqzysytdqkModal,
    JAreaSelect,
    listTabBySz
  },
  data() {
    return {
      dlr: false,
      resultData: [],
      description: '省属国企占有使用土地情况调查管理页面',
      load: true,
      changes: '1',
      // 表头
      columns: [
        {
          title: '#',
          dataIndex: '',
          key: 'rowIndex',
          width: 60,
          align: "center",
          customRender: function (t, r, index) {
            return parseInt(index) + 1;
          }
        },
        {
          title: '用地单位名称',
          align: "center",
          dataIndex: 'createBy'
        },
        {
          title: '地块',
          align: "center",
          dataIndex: 'dk'
        },
        {
          title: '证书类型',
          align: "center",
          dataIndex: 'zslx_dictText'
        },
        {
          title: '证书/合同/文件编号',
          align: "center",
          dataIndex: 'wjbh'
        },
        {
          title: '土地使用权人',
          align: "center",
          dataIndex: 'tdsyqr'
        },
        {
          title: '使用权使用方式',
          align: "center",
          dataIndex: 'syqsyfs_dictText'
        },
        {
          title: '实际用途',
          align: "center",
          dataIndex: 'sjyt',
          customRender:
            (text) => (text ? filterMultiDictText(this.dictOptions['sjyt'], text) : '')
        },
        {
          title: '操作',
          dataIndex: 'action',
          align: "center",
          fixed: "right",
          width: 147,
          scopedSlots: {customRender: 'action'}
        }
      ],
      url: {
        list: "/qcsb/qcSsgqzysytdqk/listByglyy",
        delete: "/qcsb/qcSsgqzysytdqk/delete",
        deleteBatch: "/qcsb/qcSsgqzysytdqk/deleteBatch",
        exportXlsUrl: "/qcsb/qcSsgqzysytdqk/exportXls3",
        importExcelUrl: "qcsb/qcSsgqzysytdqk/importExcel",
        wcsh: "/qcsb/qcSsgqzysytdqk/wcsh",
        hfysh: "/qcsb/qcSsgqzysytdqk/hfysh",
        listTable: "/qcsb/qcSsgqzysytdqk/sumListBysz"
      },
      dictOptions: {},
      superFieldList: [],
    }
  },
  created() {
    this.getSuperFieldList();
  },
  mounted() {
    this.show()
    this.searchQuery()
  },
  computed: {

    importExcelUrl: function () {
      return `${window._CONFIG['domianURL']}/${this.url.importExcelUrl}`;
    },
  },
  methods: {
    updataData() {
      let _this = this;
      new Promise(function (resolve, reject) {
        getAction(_this.url.listTable, _this.queryParam).then(res => {
          if (res.success) {
            _this.load = false
            _this.resultData = res.result
            resolve();
          }
        })
      })
    },
    searchQuery() {
      this.changes = '1'
      this.loadData(1);
      // 点击查询清空列表选中行
      // https://gitee.com/jeecg/jeecg-boot/issues/I4KTU1
      this.selectedRowKeys = []
      this.selectionRows = []
    },
    loadData(arg) {
      if (!this.url.list) {
        this.$message.error("请设置url.list属性!")
        return
      }
      this.queryParam = Object.assign(this.queryParam, this.param);

      //加载数据 若传入参数1则加载第一页的内容
      if (arg === 1) {
        this.ipagination.current = 1;
      }
      this.loading = true;
      getAction(this.url.list, this.getQueryParams()).then((res) => {
        if (res.success) {
          console.log(res)
          //update-begin---author:zhangyafei    Date:20201118  for：适配不分页的数据列表------------
          this.dataSource = res.result.records || res.result;
          this.dataSource.forEach((item) => {
            if (item.gyzccgbl) {
              item.gyzccgbl = Number(item.gyzccgbl).toFixed(2)
            }
          })
          if (res.result.total) {
            this.ipagination.total = res.result.total;
          } else {
            this.ipagination.total = 0;
          }
          //update-end---author:zhangyafei    Date:20201118  for：适配不分页的数据列表------------
        } else {
          this.$message.warning(res.message)
        }
      }).finally(() => {
        this.loading = false
      })
    },
    callback(key) {

      if (key == 1) {
        this.emptyData()
        this.changes = '1'
      }
      if (key == 2) {
        this.changes = '2'
        this.emptyData()
        this.updataData()
      }
    },
    SelectArea(val) {
      if (val.length > 4) {
        this.queryParam.xzqh = val + '*'
      } else {
        this.queryParam.xzqh = val.slice(0, 4) + '*'
      }
    },
    emptyData() {
      this.load = true
      this.$refs.table.data = []
      this.$refs.table.areaData = []
      this.$refs.table.pieResultData = []
      this.$refs.table.pieAreaResultData = []
      this.$refs.table.DoughnutResultData = []
      this.$refs.table.doughnutByXzResultData = []
      this.$refs.table.xzData = []
      this.$refs.table.registerData = []
      this.$refs.table.barResultData = []
      this.$refs.table.nan = []
      this.$refs.table.va = []
      this.$refs.table.xqData = []
      this.$refs.table.sjytData = []
      this.$refs.table.sjytValue = []
      this.$refs.table.sjytName = []
      this.$refs.table.barBysjytResultData = []
      this.$refs.table.number = 0
    },
    searchReset() {
      this.$refs.JArea.allClear(),

      // this.param={}
        this.queryParam = {}
        this.loadData(1);
    },
    show() {
      getAction("/qcsb.qyxx/qcQyxx/dlr").then(res => {
        if (res.success) {
          if (res.result == 'gzw') {
            this.dl = true
          }
        }
      })
    }
    ,
    handleWCSH(id) {
      getAction(this.url.wcsh, {id: id}).then(res => {
        if (res.success) {
          this.$message.success('审核完成');
          this.loadData();
        }
      })

    },
    handleHFYSH(id) {
      getAction(this.url.hfysh, {id: id}).then(res => {
        if (res.success) {
          this.$message.success('已经恢复');
          this.loadData();
        }
      })

    },
    initDictConfig() {
      loadCategoryData({code: 'A04'}).then((res) => {
        if (res.success) {
          console.log(res.result)
          this.$set(this.dictOptions, 'sjyt', res.result)
        }
      })
    },
    getSuperFieldList() {
      let fieldList = [];
      fieldList.push({type: 'string', value: 'dk', text: '地块', dictCode: ''})
      fieldList.push({type: 'string', value: 'wjlx', text: '文件类型', dictCode: 'wjlx'})
      fieldList.push({type: 'string', value: 'wjbh', text: '证书/合同/文件编号', dictCode: ''})
      fieldList.push({type: 'string', value: 'tdsyqr', text: '土地使用权人', dictCode: ''})
      fieldList.push({type: 'double', value: 'sjzytdmj', text: '实际占用土地面积', dictCode: ''})
      fieldList.push({type: 'double', value: 'qzpzsymj', text: '其中批准使用面积', dictCode: ''})
      fieldList.push({type: 'double', value: 'sjsyjzmj', text: '实际使用建筑面积', dictCode: ''})
      fieldList.push({type: 'double', value: 'qzpzsymj2', text: '其中批准使用面积', dictCode: ''})
      fieldList.push({type: 'double', value: 'sjrjl', text: '容积率', dictCode: ''})
      fieldList.push({type: 'string', value: 'syqsyfs', text: '使用权使用方式', dictCode: 'syqsyfs'})
      fieldList.push({type: 'string', value: 'zlwz', text: '坐落位置', dictCode: ''})
      fieldList.push({type: 'string', value: 'sjyt', text: '实际用途', dictCode: 'tdyt'})
      fieldList.push({type: 'date', value: 'qsqssj', text: '权属起始时间'})
      fieldList.push({type: 'date', value: 'qsdqsj', text: '权属到期时间'})
      fieldList.push({type: 'string', value: 'tdsyxz', text: '土地使用现状', dictCode: 'tdsyxz'})
      fieldList.push({
        type: 'list_multi',
        value: 'dbdycfqk',
        text: '担保、抵押、查封情况',
        dictTable: "",
        dictText: '',
        dictCode: 'dbdycfqk'
      })
      fieldList.push({type: 'string', value: 'bz', text: '备注', dictCode: ''})
      fieldList.push({type: 'string', value: 'xgwj', text: '附件材料', dictCode: ''})
      fieldList.push({type: 'int', value: 'sfsb', text: '是否上报', dictCode: 'xxsbzt'})
      this.superFieldList = fieldList
    }
  }
}
</script>
<style scoped>
@import '~@assets/less/common.less';
</style>