<script setup lang="tsx">
import { PropType, ref } from 'vue'
import { TableData } from '@/api/SrdbRectifyTask/SrdbRectifyTask/types'
import { Descriptions, DescriptionsSchema } from '@/components/Descriptions'
import { REPORT_STATUS_LIST,APPLE_STATUS_LIST } from '../constants'

const detailSchema = ref<DescriptionsSchema[]>([
  {
    field: 'orgNo',
    label: '机构金融许可证号'
  },
  {
    field: 'subOrgNo',
    label: '子机构编号'
  },
  {
    field: 'regulationId',
    label: '制度表编号'
  },
  {
    field: 'regulationName',
    label: '制度名称'
  },
  {
    field: 'regulationVersion',
    label: '制度版本'
  },
  {
    field: 'orgApplicantNo',
    label: '整改编码'
  },
  {
    field: 'dataDate',
    label: '数据日期'
  },
  {
    field: 'workflowId',
    label: '任务编码'
  },
  {
    field: 'rectifyType',
    label: '整改类型'
  },
  {
    field: 'corrEndDate',
    label: '整改截止日期'
  },
  {
    field: 'tabName',
    label: '表中文'
  },
  {
    field: 'tabNameEn',
    label: '表英文'
  },
  {
    field: 'tabGuid',
    label: '表唯一编号'
  },
  {
    field: 'metricsCode',
    label: '退回指标数量'
  },
  {
    field: 'reportStatus',
    label: '报送状态',
    slots:{
      default:(data:any)=>{
        return <span>{REPORT_STATUS_LIST[data.row.reportStatus]?.label}</span>
      }
    }
  },
  {
    field: 'applyStatus',
    label: '申请状态',
    slots:{
      default:(data:any)=>{
        return <span>{APPLE_STATUS_LIST[data.row.reportStatus]?.label}</span>
      }
    }
  },
  {
    field: 'centerPullStatus',
    label: '中心拉取通知状态'
  },
  {
    field: 'centerPullTime',
    label: '拉取时间'
  },
  {
    field: 'filePath',
    label: '整改要求文件存放全路径'
  },
  {
    field: 'corrAdvice',
    label: '整改说明'
  },
  {
    field: 'applicantTelphone',
    label: '申请人联系方式'
  },
  {
    field: 'applicant',
    label: '申请人名称'
  },
  {
    field: 'applyTime',
    label: '申请时间'
  },
  {
    field: 'backTime',
    label: '监管退回或审批时间'
  },
  {
    field: 'restateReportTime',
    label: '重报时间'
  },
  {
    field: 'createTime',
    label: '生成时间'
  },
  {
    field: 'collectingCode',
    label: '采集编码'
  },
  {
    field: 'metricsName',
    label: '采集编码'
  }
])

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

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