// 表单配置
export const formColumns = [
    {
        type: 'input',
        prop: 'queryTableName',
        label: '', // 表格名称
        placeholder: '请输入表格名称',
        defaultValue: '', // 默认值
        isShowLabel: false,
    },
    {
        type: 'select',
        prop: 'queryStatus',
        label: '', // 状态
        placeholder: '请选择状态',
        options: [
            { label: '启用', value: '1' },
            { label: '禁用', value: '0' },
        ],
    },
    {
        type: 'cascader',
        prop: 'queryClass',
        label: '', // 班级
        placeholder: '请选择班级',
        options: [
            {
                label: '班级1',
                value: '1',
                children: [
                    { label: '班级1-1', value: '1-1' },
                    { label: '班级1-2', value: '1-2' },
                    { label: '班级1-3', value: '1-3' },
                ],
            },
            {
                label: '班级2',
                value: '2',
                children: [
                    { label: '班级2-1', value: '2-1' },
                    { label: '班级2-2', value: '2-2' },
                    { label: '班级2-3', value: '2-3' },
                ],
            },
            {
                label: '班级3',
                value: '3',
                children: [
                    { label: '班级3-1', value: '3-1' },
                    { label: '班级3-2', value: '3-2' },
                    { label: '班级3-3', value: '3-3' },
                ],
            },
        ],
    },
    {
        type: 'date',
        prop: 'queryDateRange',
        label: '', // 日期区间
        dateType: 'daterange', // 日期区间
        paramsList: ['queryStartDate', 'queryEndDate'],
        valueFormat: 'YYYY-MM-DD',
        startPlaceholder: '开始日期',
        endPlaceholder: '结束日期',
    },
    // 月份区间筛选（Element Plus 支持 monthrange）
    {
        type: 'date',
        prop: 'queryMonthRange',
        label: '', // 月份区间
        dateType: 'monthrange', // 月份区间
        paramsList: ['queryStartMonth', 'queryEndMonth'],
        valueFormat: 'YYYY-MM',
        startPlaceholder: '开始月份',
        endPlaceholder: '结束月份',
    },
    {
        type: 'date',
        prop: 'queryYear',
        label: '', // 年份
        dateType: 'year', // 单选年份
        valueFormat: 'YYYY',
        placeholder: '请选择年份',
    },
    {
        type: 'date',
        prop: 'queryMonth',
        label: '', // 月份
        dateType: 'month', // 单选月份
        valueFormat: 'YYYY-MM',
        placeholder: '请选择月份',
    },
    {
        type: 'date',
        prop: 'queryDate',
        label: '', // 日期
        dateType: 'date', // 单选日期
        valueFormat: 'YYYY-MM-DD',
        placeholder: '请选择日期',
    },
]

// 表格列配置
export const tableColumns = [
    {
        prop: 'tableName', // 字段名
        label: '表格名称', // 标签
        width: 180, // 列宽
        minWidth: 120, // 最小列宽
        align: 'left', // 对齐方式
        showOverflowTooltip: true, // 超出显示提示
        id: 'tableName',
    },
    {
        prop: 'status',
        label: '状态',
        width: 100,
        // 自定义渲染（使用插槽）
        slot: 'status',
        id: 'status',
        // 或者使用格式化函数
        // formatter: (row, column, cellValue) => {
        //     return cellValue === '1' ? '启用' : '禁用'
        // }
    },
    {
        prop: 'createTime',
        label: '创建时间',
        width: 180,
        id: 'createTime',
    },
    {
        prop: 'remark',
        label: '备注',
        minWidth: 200,
        showOverflowTooltip: true,
        id: 'remark',
    },
]

// 操作列配置（可选）
export const actionColumns = [
    {
        label: '编辑',
        type: 'primary',
        link: true,
        handler: (row) => {
            console.log('编辑', row)
        },
    },
    {
        label: '删除',
        type: 'danger',
        link: true,
        handler: (row) => {
            console.log('删除', row)
        },
    },
    {
        label: '详情',
        type: 'danger',
        link: true,
        handler: (row) => {
            console.log('删除', row)
        },
    },
    {
        label: '执行',
        type: 'danger',
        link: true,
        handler: (row) => {
            console.log('删除', row)
        },
    },
    {
        label: '测试',
        type: 'warning',
        link: true,
        handler: (row) => {
            console.log('删除', row)
        },
    },
]
