<template>
    <!-- 新增 -->
    <el-dialog draggable title="详情" v-model="dialogVisible" width="1200px">
        <TableHeader datePicker showExport :showReset="false">
            <template v-slot:select>
                <el-form-item label="筛选数据">
                    <el-input v-model="tableStore.table.params.searchValue" placeholder="请输入筛选数据" clearable />
                </el-form-item>
            </template>
        </TableHeader>

        <div :key="key">
            <Table ref="tableRef" :height="'49vh'"></Table>
        </div>
    </el-dialog>
</template>
<script setup lang="ts">
import { ref, onMounted, provide, reactive, nextTick } from 'vue'

import TableStore from '@/utils/tableStore'
import Table from '@/components/table/index.vue'
import TableHeader from '@/components/table/header/index.vue'
import { useDictData } from '@/stores/dictData'
import { ElMessage, ElMessageBox } from 'element-plus'
import { mainHeight } from '@/utils/layout'
defineOptions({
    name: 'frontLog'
})
const key = ref(0)
const dialogVisible = ref(false)
const tableStore = new TableStore({
    url: '/system-boot/frontLog/queryLogCHild',
    method: 'POST',
    column: [
        {
            field: 'index',
            title: '序号',
            width: '80',
            formatter: (row: any) => {
                return (tableStore.table.params.pageNum - 1) * tableStore.table.params.pageSize + row.rowIndex + 1
            }
        },

        {
            title: '发生时间',
            field: 'updateTime',
            width: '150',
            sortable: true
        },

        {
            title: '日志等级',
            field: 'grade',
            width: '100'
        },

        {
            title: '日志详情',
            field: 'log',

            formatter: (row: any) => {
                return row.cellValue || '/'
            }
        }
    ]
})

tableStore.table.params.type = ''
tableStore.table.params.searchValue = ''

provide('tableStore', tableStore)

const open = (row: any) => {
    dialogVisible.value = true
    tableStore.table.params.mainId = row.id
    setTimeout(() => {
        tableStore.index()
    }, 0)
}
defineExpose({ open })
</script>
<style lang="scss" scoped></style>
