<template>
    <TableHeader datePicker ref="refheader">
        <template v-slot:select>
            <el-form-item label="数据来源">
                <el-cascader
                    placeholder="请选择数据来源"
                    @change="sourceChange"
                    :options="props.deviceTree"
                    :show-all-levels="false"
                    :props="{ checkStrictly: true }"
                    clearable
                ></el-cascader>
                <!-- <el-input v-model="tableStore.table.params.searchValue" placeholder="请输入设备名称" /> -->
            </el-form-item>
            <el-form-item label="级别">
                <el-select v-model="tableStore.table.params.level" placeholder="请选择级别" clearable>
                    <el-option
                        v-for="item in rankOptions"
                        :key="item.value"
                        :label="item.label"
                        :value="item.value"
                    ></el-option>
                </el-select>
            </el-form-item>
        </template>
    </TableHeader>
    <!-- <div style="height: 300px;"> -->
    <!-- <Table ref="tableRef" :isGroup="true" /> -->
    <div :style="{ height: tableHeight }" v-loading="tableLoading">
        <vxe-table :data="tableStore.table.data" v-bind="defaultAttribute" height="auto" auto-resize>
            <vxe-column
                v-for="item in tableStore.table.column"
                :field="item.field"
                :title="item.title"
                :min-width="item.width"
                :sortable="item.sortable"
            ></vxe-column>
            <vxe-column title="操作" min-width="220px">
                <template v-slot:default="scoped">
                    <!-- {{ scoped.row.onlineRate === 3.14159 ? '/' : scoped.row.onlineRate }} -->
                    <el-button  icon="el-icon-s-marketing" type="primary"  v-if="scoped.row.wavePath && scoped.row.evtParamTm<20" @click="getboxin(scoped.row)">波形分析</el-button>
                            <el-button v-else  icon="el-icon-s-marketing" type="info"  :disabled="true">暂无波形</el-button>
                            </template>

            </vxe-column>
        </vxe-table>
        <el-pagination
            :currentPage="tableStore.table.params!.pageNum"
            :page-size="tableStore.table.params!.pageSize"
            :page-sizes="pageSizes"
            background
            :layout="config.layout.shrink ? 'prev, next, jumper' : 'sizes,total, ->, prev, pager, next, jumper'"
            :total="tableStore.table.total"
            @size-change="onTableSizeChange"
            @current-change="onTableCurrentChange"
        ></el-pagination>
    </div>
    
    <!-- </div> -->
</template>
<script setup lang="ts">
import { ref, onMounted, provide } from 'vue'
import TableStore from '@/utils/tableStore'
import Table from '@/components/table/index.vue'
import TableHeader from '@/components/table/header/index.vue'
import { defaultAttribute } from '@/components/table/defaultAttribute'
import { mainHeight } from '@/utils/layout'

const props = defineProps(['deviceTree'])

const refheader = ref()
const tableLoading = ref(false)

const rankOptions = ref([
    {
        value: '1',
        label: '1级'
    },
    {
        value: '2',
        label: '2级'
    },
    {
        value: '3',
        label: '3级'
    }
])

const tableStore = new TableStore({
    url: '/cs-harmonic-boot/eventUser/queryEventpage',
    method: 'POST',
    column: [
        { title: '工程名称', field: 'engineeringName', align: 'center' },
        { title: '项目名称', field: 'projectName', align: 'center' },
        { title: '设备名称', field: 'equipmentName', align: 'center' },
        { title: '事件描述', field: 'showName', align: 'center' },
        { title: '事件发生位置', field: 'evtParamPosition', align: 'center' },
        { title: '相别', field: 'evtParamPhase', align: 'center' },
        { title: '持续时间', field: 'evtParamTm', align: 'center' },
        { title: '暂降深度', field: 'evtParamVVaDepth', align: 'center' },
        { title: '发生时刻', field: 'startTime', align: 'center' },
        { title: '操作', field: '', align: 'center' }
    ]
})

provide('tableStore', tableStore)
//   "target": [],
//   "type": "",
//   "userId": ""
tableStore.table.params.engineeringid = ''
tableStore.table.params.projectId = ''
tableStore.table.params.deviceId = ''
tableStore.table.params.type = 1
tableStore.table.params.eventIds = []
tableStore.table.params.status = ''
tableStore.table.params.target = []
tableStore.table.params.userId = ''

const sourceChange = (e: any) => {
    tableStore.table.params.engineeringid = e[0] || ''
    tableStore.table.params.projectId = e[1] || ''
    tableStore.table.params.deviceId = e[2] || ''
}
// 波形分析
const getboxin=()=>{

}

onMounted(() => {
    tableStore.index()
})
const tableHeight = mainHeight(225).height
const addMenu = () => {}
</script>
<style></style>
