<script setup lang="tsx">
import { PropType, ref } from 'vue'
import { TableData } from '@/api/irisquery/TCdTableData/types'
import { Descriptions, DescriptionsSchema } from '@/components/Descriptions'

const detailSchema = ref<DescriptionsSchema[]>([
  {
    field: 'orgType',
    label: '机构类型'
  },
  {
    field: 'orgName',
    label: '机构名称'
  },
  {
    field: 'orgNo',
    label: '机构编号'
  },
  {
    field: 'collectingCode',
    label: '采集编号'
  },
  {
    field: 'regulationId',
    label: '制度编号'
  },
  {
    field: 'regulationName',
    label: '制度名称'
  },
  {
    field: 'regulationVersion',
    label: '制度版本'
  },
  {
    field: 'tabName',
    label: '表中文名'
  },
  {
    field: 'tabNameEn',
    label: '表英文名'
  },
  {
    field: 'tabType',
    label: '三级分类'
  },
  {
    field: 'volume',
    label: '表记录数'
  },
  {
    field: 'tabGuid',
    label: '表编号'
  },
  {
    field: 'reportStatus',
    label: '报送状态'
  },
  {
    field: 'reportDt',
    label: '报送日期'
  },
  {
    field: 'dataDate',
    label: '数据日期'
  },
  {
    field: 'latelyDataDt',
    label: '当前表最新的数据日期'
  },
  {
    field: 'tabBelonging',
    label: '表一级分类'
  },
  {
    field: 'tabLevel',
    label: '二级分类'
  },
  {
    field: 'numberOfPeriods',
    label: '现存数据期数'
  },
  {
    field: 'tabSchema',
    label: '数据库schema'
  },
  {
    field: 'safetyLevel',
    label: '数据安全等级'
  },
  {
    field: 'preTableList',
    label: '数据来源表GUID列表'
  },
  {
    field: 'department',
    label: '该表所属管理部门'
  },
  {
    field: 'databaseName',
    label: '数据库名称'
  },
  {
    field: 'databaseType',
    label: '数据库类型'
  },
  {
    field: 'physicsStrategy',
    label: '物理化策略'
  },
  {
    field: 'dataLifeCycle',
    label: '数据生命周期'
  },
  {
    field: 'dataType',
    label: '数据表分类'
  },
  {
    field: 'dataTypeNo',
    label: '数据表分类编号'
  },
  {
    field: 'remark',
    label: '备注'
  },
  {
    field: 'updateTime',
    label: '数据变更日期'
  },
  {
    field: 'recordType',
    label: '本条数据的记录类型'
  }
])

defineProps({
  currentRow: {
    type: Object as PropType<TableData>,
    default: () => undefined
  }
})
</script>

<template>
  <Descriptions :schema="detailSchema" :data="currentRow || {}" />
</template>
