<script lang="ts" setup>
|
import type { CrmInvoiceApi } from '#/api/crm/invoice';
|
|
import { Divider } from 'ant-design-vue';
|
|
import { useDescription } from '#/components/description';
|
|
import { useDetailBaseSchema, useDetailSystemSchema } from '../data';
|
|
const props = defineProps<{
|
invoice: CrmInvoiceApi.Invoice;
|
}>();
|
|
const [BaseDescriptions] = useDescription({
|
title: '基本信息',
|
bordered: false,
|
column: 4,
|
class: 'mx-4',
|
schema: useDetailBaseSchema(),
|
});
|
|
const [SystemDescriptions] = useDescription({
|
title: '系统信息',
|
bordered: false,
|
column: 3,
|
class: 'mx-4',
|
schema: useDetailSystemSchema(),
|
});
|
</script>
|
|
<template>
|
<div>
|
<BaseDescriptions :data="invoice" />
|
<Divider />
|
<div v-if="props.invoice?.attachmentList?.length" class="mx-4 mb-4">
|
<h4 class="mb-2 text-base font-medium">发票附件</h4>
|
<div
|
v-for="file in props.invoice.attachmentList"
|
:key="file.id"
|
class="flex items-center gap-2 py-1"
|
>
|
<a :href="file.url" target="_blank" rel="noopener noreferrer">
|
{{ file.name || '附件' }}
|
</a>
|
</div>
|
</div>
|
<SystemDescriptions :data="invoice" />
|
</div>
|
</template>
|