<template>
  <ContentWrap>
    <!-- 智能电表统计表搜索工作栏 -->
    <el-form :model="queryParams" ref="queryForm" :inline="true">
      <el-form-item label="日期" prop="dateRange">
        <el-date-picker
          v-model="queryParams.dateRange"
          style="width: 240px; height: 30px"
          value-format="YYYY-MM-DD"
          end-placeholder="结束日期"
          start-placeholder="开始日期"
          type="daterange"
        />
      </el-form-item>
      <el-form-item>
        <el-button type="primary" size="mini" @click="handleQuery">搜索</el-button>
        <el-button size="mini" @click="resetQuery">重置</el-button>
        <el-button type="success" @click="exportElecTotal" size="mini">导出</el-button>
      </el-form-item>
    </el-form>
  </ContentWrap>

  <!-- 列表 -->
  <ContentWrap>
    <el-table
      v-loading="loading" :data="dataList.dList" border="true" highlight-current-row="true">
      <el-table-column label="线路名称(智能电表)" prop="mname" align="center" :show-overflow-tooltip="true" />
      <el-table-column label="总" prop="idescTotal" align="center" :show-overflow-tooltip="true" />
      <el-table-column label="峰" prop="idescF" align="center" :show-overflow-tooltip="true" />
      <el-table-column label="峰值比例" prop="idescFt" align="center" :show-overflow-tooltip="true" />
      <el-table-column label="谷" prop="idescG" align="center" :show-overflow-tooltip="true" />
      <el-table-column label="谷值比例" prop="idescGt" align="center" :show-overflow-tooltip="true" />
      <el-table-column label="平" prop="idescP" align="center" :show-overflow-tooltip="true" />
      <el-table-column label="平值比例" prop="idescPt" align="center" :show-overflow-tooltip="true" />
      <el-table-column label="尖峰" prop="idescJ" align="center" :show-overflow-tooltip="true" />
      <el-table-column label="平值比例" prop="idescJt" align="center" :show-overflow-tooltip="true" />
    </el-table>
  </ContentWrap>

</template>

<script setup lang="ts">
import * as TjanalysisApi from '@/api/tjanalysis'
import { formatDate } from '@/utils/formatTime'

defineOptions({ name: 'PlatscaleAnalysis' })

const message = useMessage() // 消息弹窗
const { t } = useI18n() // 国际化

const route = useRoute() // 路由信息
const routeName = ref()
routeName.value = route.name
const loading = ref(true)
const dataList = reactive({dList: [] , total: 0})

const queryParams = reactive({
  dateRange: []
})

const handleQuery = async () => {
  getList()
}

const resetQuery = async () => {
   // 获取当前日期  
let today = new Date();  
  
  // 计算昨天的日期  
  today.setDate(today.getDate() - 1);  
    
  // 格式化日期为 "yyyy-MM-dd"  
  let year = today.getFullYear();  
  let month = String(today.getMonth() + 1).padStart(2, '0'); // 月份从0开始，所以需要+1，并确保是两位数  
  let date = String(today.getDate()).padStart(2, '0'); // 确保日期是两位数  
    
  let yesterdayAsString = `${year}-${month}-${date}`;  
    
  console.log(yesterdayAsString);  


  queryParams.dateRange=[yesterdayAsString,yesterdayAsString]
  getList()
}

const getList = async () => {
  const res = await TjanalysisApi.queryElectricdataAllTj(queryParams)
  console.log(res)
  if (res != null && res.dataList != null) {
    dataList.dList = res.dataList
  }
  loading.value = false
}

const exportElecTotal = async () => {
  const res = await TjanalysisApi.exportElectricdataAllTj(queryParams)
  if (res != null) {
    let url = window.URL.createObjectURL(new Blob([res]));
    let link = document.createElement("a");
    link.style.display = "none";
    link.href = url;
    link.setAttribute("download", "智能报表统计数据.xlsx"); 
    document.body.appendChild(link);
    link.click();
  }
}

function getSummaries(param) {
  const { columns, data } = param;
  const sums = [];
  columns.forEach((column, index) => {
    // console.log(column)
    if (index === 0) {
      sums[index] = '总';
      // return;
    } 
    
    const values = data.map(item => Number(item[column.property]));
    if (!values.every(value => isNaN(value))) {
      sums[index] = values.reduce((prev, curr) => {
        const value = Number(curr);
        if (!isNaN(value)) {
          return prev + curr;
        } else {
          return prev;
        }
      }, 0);
      // sums[index] += ' 元';
    } else {
      // sums[index] = 'N/A';
    }
  });

  return sums;
}

/** 初始化 **/
onMounted(async () => {
 // 获取当前日期  
let today = new Date();  
  
  // 计算昨天的日期  
  today.setDate(today.getDate() - 1);  
    
  // 格式化日期为 "yyyy-MM-dd"  
  let year = today.getFullYear();  
  let month = String(today.getMonth() + 1).padStart(2, '0'); // 月份从0开始，所以需要+1，并确保是两位数  
  let date = String(today.getDate()).padStart(2, '0'); // 确保日期是两位数  
    
  let yesterdayAsString = `${year}-${month}-${date}`;  
    
  console.log(yesterdayAsString);  


  queryParams.dateRange=[yesterdayAsString,yesterdayAsString]
  getList()
  
})

</script>

