From 0694ec28fbf8f53a7bd314b5d8ef4ae39c39c21e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Wei=5F=E4=BD=B3?= Date: Tue, 25 Nov 2025 18:10:11 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=E4=B8=8A=E4=BC=A0?= =?UTF-8?q?=E9=97=AE=E9=A2=98=EF=BC=8C=E6=8A=A5=E5=91=8A=E5=92=8C=E5=87=AD?= =?UTF-8?q?=E8=AF=81=E9=99=90=E5=88=B6=201=20=E6=9D=A1=EF=BC=8C=E5=BC=80?= =?UTF-8?q?=E7=A5=A8=E9=99=84=E4=BB=B6=E9=99=90=E5=88=B6=202=20=E6=9D=A1?= =?UTF-8?q?=EF=BC=8C=E9=9C=80=E8=A6=81=E5=90=8E=E7=AB=AF=E4=BF=AE=E6=94=B9?= =?UTF-8?q?=E6=8E=A5=E6=94=B6=E6=95=B0=E7=BB=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../transaction/invoice/InvoiceModal.vue | 33 +++---------------- .../audit/components/AuditDetail.vue | 6 ++-- .../audit/components/CertificateModal.vue | 6 ++-- 3 files changed, 10 insertions(+), 35 deletions(-) diff --git a/web/src/views/transaction/invoice/InvoiceModal.vue b/web/src/views/transaction/invoice/InvoiceModal.vue index 9fcd91e..7e46ba0 100644 --- a/web/src/views/transaction/invoice/InvoiceModal.vue +++ b/web/src/views/transaction/invoice/InvoiceModal.vue @@ -61,6 +61,7 @@ const handleConfirm = () => { if (!errors) { emit('confirm', { ...formData.value, + attachments: fileList.value?.map((file) => file.url) || [], id: props.invoiceData?.id, }) } @@ -93,15 +94,11 @@ const handleUploadFinish = ({ file, event }) => { const res = JSON.parse(event.target.response) // 只要返回了 url 字段,就认为上传成功 if (res.code === 200 && res.data?.url) { - // 显式查找 fileList 中的文件对象进行更新,确保响应式 - const targetFile = fileList.value.find(f => f.id === file.id) || file - targetFile.url = res.data.url - targetFile.name = res.data.filename || targetFile.name - targetFile.status = 'finished' // 手动标记为完成 - - // 更新 formData.attachments - updateAttachments() + file.url = res.data.url + file.name = res.data.filename || file.name + file.status = 'finished' $message.success('上传成功') + return file } else { $message.error(res.message || '上传失败') // 从列表中移除失败的文件 @@ -114,25 +111,6 @@ const handleUploadFinish = ({ file, event }) => { const index = fileList.value.findIndex((item) => item.id === file.id) if (index > -1) fileList.value.splice(index, 1) } - return file -} - -// 更新附件列表 -const updateAttachments = () => { - // 只要有 url 的都算作有效附件 - formData.value.attachments = fileList.value - .map(file => file.url) - .filter(url => !!url) -} - -// 移除文件 -const handleRemove = ({ file }) => { - const index = fileList.value.findIndex(item => item.id === file.id) - if (index > -1) { - fileList.value.splice(index, 1) - updateAttachments() - } - return true } const rules = { @@ -201,7 +179,6 @@ const modalTitle = props.mode === 'invoice' ? '开票' : '查看发票' :headers="uploadHeaders" :before-upload="beforeUpload" @finish="handleUploadFinish" - @remove="handleRemove" :disabled="mode === 'view'" >
diff --git a/web/src/views/valuation/audit/components/AuditDetail.vue b/web/src/views/valuation/audit/components/AuditDetail.vue index 6f41043..88cf880 100644 --- a/web/src/views/valuation/audit/components/AuditDetail.vue +++ b/web/src/views/valuation/audit/components/AuditDetail.vue @@ -335,11 +335,11 @@ const handleCertificateConfirm = async (data) => { const certificateUrl = data.certificateFiles?.map(f => f.url).filter(Boolean) || [] const reportUrl = data.reportFiles?.map(f => f.url).filter(Boolean) || [] - + // 现在改为只能上传 1 张 const payload = { ...props.detailData, - certificate_url: certificateUrl, - report_url: reportUrl, + certificate_url: certificateUrl?.[0], + report_url: reportUrl?.[0], status: 'success' } diff --git a/web/src/views/valuation/audit/components/CertificateModal.vue b/web/src/views/valuation/audit/components/CertificateModal.vue index 10dd178..aeac525 100644 --- a/web/src/views/valuation/audit/components/CertificateModal.vue +++ b/web/src/views/valuation/audit/components/CertificateModal.vue @@ -203,13 +203,12 @@ const handlePreview = (file) => {
{