<!--水质统计-->
<template>
  <div class="ele-body">
    <a-card :bordered="false">
      <!-- 搜索表单 -->
      <search
        :searchForm="searchForm"
        :filterKeys="filterKeys"
        @search="searchData"
        @exportFile="exportFile"
        @filterColumns="changeFilter"
        :visiable="visiable"
        :loading="loading"
      />
      <!-- 表格 -->
      <ele-pro-table
        v-model:selection="selectionList"
        ref="table"
        row-key="drinkingWaterId"
        :datasource="datasource"
        :columns="columns"
        :where="where"
        :scroll="{ x: 'max-content' }"
        @done="(d) => (data = d.data)"
      >
      </ele-pro-table>
    </a-card>
  </div>
  <!-- 编辑弹窗 -->
</template>

<script>
import XLSX from "xlsx";

import {
  waterQualityCountData
} from "@/api/ecology/new-drinking-water";

import locale from "ant-design-vue/es/date-picker/locale/zh_CN";

import Search from "./../components/countySearch.vue";

export default {
  name: "waterQualityCount",
  components: {
    Search
  },
  props:{
      // 表格搜索条件
      searchForm:{
          typeof:Object,
          default: function () {
              return {}
          },
      },
      filterKeys:{
          typeof:Object,
          default: function () {
              return []
          },
      },
    visiable:{
        typeof:Boolean
    }
  },
  
  data() {
    return {
      data: [],
      locale,
      bill: {},
      // 表格数据接口
      datasource:{},
      selection: [],
      columns:[
        {title:"年份",dataIndex:"year",},
        {title:"指标",dataIndex:"targetName",},
        {title:"平均值",dataIndex:"averageValue",},
        {title:"最大值",dataIndex:"maxValue",},
        {title:"最小值",dataIndex:"minValue",},
      ],
        
      
      // 表格列配置
      
    
      // 表格搜索条件
      where: {
        checked: 1,
      },
      // 表格选中数据
      selectionList: [],
      loading:false
    };
  },
  mounted() {
  },
  methods: {
    
    // 获取列表数据
    getPageData(){
            this.loading = true;
        waterQualityCountData(this.where).then(res=>{
                this.loading = false;
            if(res.data.code){
                this.$message.error(res.data.msg);
                this.datasource = []
            }else{
                this.datasource = res.data.data
            }
        }).catch(()=>{
                this.loading = false;
        })
    },

    JumpFieldClick(record, column) {
        console.log(column.dataIndex)
      },

          // 执行搜索
    searchData(data){
        this.where = data;
        this.$emit("search", this.where);
        this.reload();
    },

    /* 刷新表格 */
    reload() {
      this.getPageData()
      // this.$refs.table.reload({
      //   where: this.where,
      // });
    },
    /* 重置搜索 */
    reset() {
      this.where = {
        checked: 1,
      };
      this.reload();
    },
    exportFile() {
      const columns = [
         ...this.columns,
      ];
      const arr = [];
      const th = columns.map((item) => item.title);
      arr.push(th);
      this.data.forEach((d) => {
        const td = columns.map((item) => d[item.dataIndex]);
        arr.push(td);
      });
      let sheet = XLSX.utils.aoa_to_sheet(arr);
      this.$util.exportSheet(XLSX, sheet, new Date().getTime().toString());
    },
  },
};
</script>

<style scoped lang="less">
</style>
