diff --git a/web/src/views/transaction/invoice/InvoiceModal.vue b/web/src/views/transaction/invoice/InvoiceModal.vue index ce01ab2..3c68709 100644 --- a/web/src/views/transaction/invoice/InvoiceModal.vue +++ b/web/src/views/transaction/invoice/InvoiceModal.vue @@ -40,12 +40,34 @@ watch( () => props.visible, (val) => { if (val) { - formData.value = { - email: props.invoiceData?.email || '', - content: '', - attachments: [], + // 如果是查看模式且有 extra 数据,则回显 extra 中的内容 + const extra = props.invoiceData?.extra + if (props.mode === 'view' && extra) { + formData.value = { + email: extra.email || props.invoiceData?.email || '', + content: extra.body || '', + attachments: extra.file_urls || [], + } + // 回显附件列表 + if (extra.file_urls && Array.isArray(extra.file_urls)) { + fileList.value = extra.file_urls.map((url, index) => ({ + id: `file-${index}`, + name: url.split('/').pop() || `附件${index + 1}`, + url: url, + status: 'finished', + })) + } else { + fileList.value = [] + } + } else { + // 开票模式,使用默认邮箱 + formData.value = { + email: props.invoiceData?.email || '', + content: '', + attachments: [], + } + fileList.value = [] } - fileList.value = [] } } )