import type { TableColumnProps } from '@/types/basic-table';
import { AREA_CHECK_PLAN_STATUS_OPTIONS, AREA_CHECK_PLAN_STATUS_LABEL } from './status';

export { AREA_CHECK_PLAN_STATUS_OPTIONS, AREA_CHECK_PLAN_STATUS_LABEL };

export const TABLE_OPTIONS = {
  emptyText: '暂无数据',
  loading: true,
  maxHeight: 'calc(70vh - 150px)',
};

// 表格样式与检查单模版管理列表一致（TABLE_OPTIONS、编号/操作列宽）
export const AREA_CHECK_PLAN_TABLE_COLUMNS: TableColumnProps[] = [
  {
    label: '编号',
    type: 'index',
    align: 'center',
    width: '80px',
  },
  {
    label: '检查场所',
    prop: 'checkVenue',
    align: 'left',
    minWidth: '120px',
    showOverflowTooltip: true,
  },
  {
    label: '状态',
    prop: 'status',
    slot: 'status',
    align: 'center',
    minWidth: '120px',
  },
  {
    label: '检查场所所属类别',
    prop: 'venueCategoryName',
    align: 'left',
    minWidth: '180px',
    showOverflowTooltip: true,
  },
  {
    label: '区域检查计划名称',
    prop: 'planName',
    align: 'left',
    minWidth: '180px',
    showOverflowTooltip: true,
  },
  {
    label: '主责部门',
    prop: 'primaryResponsibleDeptName',
    align: 'left',
    minWidth: '140px',
    showOverflowTooltip: true,
  },
  {
    label: '自查频次',
    prop: 'selfCheckFrequency',
    align: 'left',
    minWidth: '140px',
    showOverflowTooltip: true,
  },
  {
    label: '主责部门执行人所属分组名称',
    prop: 'primaryResponsibleDeptExecGroupName',
    align: 'left',
    minWidth: '240px',
    showOverflowTooltip: true,
  },
  {
    label: '主责部门责任人',
    prop: 'primaryResponsibleDeptPersonName',
    align: 'left',
    minWidth: '160px',
    showOverflowTooltip: true,
  },
  {
    label: '安全应急部门名称',
    prop: 'safetyEmergencyDeptName',
    align: 'left',
    minWidth: '180px',
    showOverflowTooltip: true,
  },
  {
    label: '安全应急部检查频次',
    prop: 'safetyEmergencyCheckFrequency',
    align: 'left',
    minWidth: '180px',
    showOverflowTooltip: true,
  },
  {
    label: '安全应急部执行人所属分组名称',
    prop: 'safetyEmergencyExecutorGroupName',
    align: 'left',
    minWidth: '260px',
    showOverflowTooltip: true,
  },
  {
    label: '安全应急部责任人',
    prop: 'safetyEmergencyResponsiblePerson',
    align: 'left',
    minWidth: '180px',
    showOverflowTooltip: true,
  },
  {
    label: '院领导部门名称',
    prop: 'hospitalLeaderDeptName',
    align: 'left',
    minWidth: '180px',
    showOverflowTooltip: true,
  },
  {
    label: '院领导检查频次',
    prop: 'hospitalLeaderCheckFrequency',
    align: 'left',
    minWidth: '160px',
    showOverflowTooltip: true,
  },
  {
    label: '院领导执行人所属分组名称',
    prop: 'hospitalLeaderExecutorGroupName',
    align: 'left',
    minWidth: '220px',
    showOverflowTooltip: true,
  },
  {
    label: '院领导责任人',
    prop: 'hospitalLeaderResponsiblePerson',
    align: 'left',
    minWidth: '140px',
    showOverflowTooltip: true,
  },
  {
    label: '检查重点内容',
    prop: 'checkKeyContent',
    align: 'left',
    minWidth: '150px',
    showOverflowTooltip: true,
  },
  {
    label: '检查单所属类别名称',
    prop: 'categoryName',
    align: 'left',
    minWidth: '180px',
    showOverflowTooltip: true,
  },
  {
    label: '检查单模版名称',
    prop: 'checklistTemplateName',
    align: 'left',
    minWidth: '160px',
    showOverflowTooltip: true,
  },
  {
    label: '是否需要整体检查情况描述',
    prop: 'needOverallDesc',
    slot: 'needOverallDesc',
    align: 'center',
    minWidth: '240px',
  },
  {
    label: '是否需要被检查人签字',
    prop: 'needSigneeSign',
    slot: 'needSigneeSign',
    align: 'center',
    minWidth: '200px',
  },
  {
    label: '计划开始时间',
    prop: 'planStartTime',
    minWidth: '240px',
    slot: 'planStartTime',
  },
  {
    label: '计划结束时间',
    prop: 'planEndTime',
    minWidth: '240px',
    slot: 'planEndTime',
  },
  {
    label: '操作',
    prop: 'action',
    slot: 'action',
    fixed: 'right',
    width: '250px',
    align: 'left',
  },
];
