From 9a4e0f7c039b0a629b49b76743bc5cbc1d6f67d3 Mon Sep 17 00:00:00 2001 From: b2894lxlx <517289602@qq.com> Date: Fri, 28 Aug 2026 15:30:24 +0800 Subject: [PATCH] fix --- .../vehicle-attachment-table/main.vue | 11 +- src/option/payment/billLedger.js | 2 +- src/option/payment/invoiceApplication.js | 2 +- src/views/payment/bill-ledger-form.vue | 15 +- src/views/payment/bill-ledger.vue | 119 +++++ .../payment/components/bill-ledger-table.vue | 7 +- .../payment/invoice-application-form.vue | 23 +- src/views/payment/invoice-application.vue | 60 ++- src/views/payment/invoice-receipt-form.vue | 57 ++- .../payment/payment-application-form.vue | 477 +++++++++++++++--- src/views/payment/receipt-flow.vue | 41 +- .../settlement-adjustment-editor.vue | 9 +- .../transport-reconciliation-editor.vue | 276 ++++++++-- src/views/settlement/formal-settlement.vue | 68 ++- .../settlement/transport-reconciliation.vue | 6 +- vite.config.mjs | 26 +- 16 files changed, 1016 insertions(+), 183 deletions(-) diff --git a/src/components/vehicle-attachment-table/main.vue b/src/components/vehicle-attachment-table/main.vue index 2ad00ef..1ce0f46 100644 --- a/src/components/vehicle-attachment-table/main.vue +++ b/src/components/vehicle-attachment-table/main.vue @@ -250,7 +250,16 @@ export default { }, batchDownload() { const rows = this.selectedRows.length ? this.selectedRows : this.rows; - rows.forEach(this.downloadAttachment); + const downloadableRows = rows.filter(row => this.attachmentUrl(row)); + if (!downloadableRows.length) { + this.$message.warning( + this.selectedRows.length ? '所选附件暂无可下载地址' : '暂无可下载附件' + ); + return; + } + downloadableRows.forEach((row, index) => { + window.setTimeout(() => this.downloadAttachment(row), index * 500); + }); }, previewAttachment(row) { const url = this.attachmentUrl(row); diff --git a/src/option/payment/billLedger.js b/src/option/payment/billLedger.js index bb320c7..1500ad7 100644 --- a/src/option/payment/billLedger.js +++ b/src/option/payment/billLedger.js @@ -1,5 +1,5 @@ export const billLedgerTableColumns = [ - { prop: 'billNo', label: '票据编号', minWidth: 170 }, + { prop: 'billNo', label: '票据编号', minWidth: 170, link: true }, { prop: 'receiverName', label: '收票单位', minWidth: 170 }, { prop: 'issuerName', label: '出票单位', minWidth: 170 }, { prop: 'billTypeName', label: '汇票类型', minWidth: 110 }, diff --git a/src/option/payment/invoiceApplication.js b/src/option/payment/invoiceApplication.js index ecfab04..5c4a708 100644 --- a/src/option/payment/invoiceApplication.js +++ b/src/option/payment/invoiceApplication.js @@ -1,6 +1,6 @@ export const invoiceApplicationTableColumns = [ { prop: 'applicationNo', label: '单据号', minWidth: 170, link: true }, - { prop: 'settlementNos', label: '结算单号', minWidth: 190, link: true }, + { prop: 'settlementNos', label: '结算单号', minWidth: 190 }, { prop: 'projectName', label: '所属项目', minWidth: 140 }, { prop: 'deptName', label: '所属组织', minWidth: 140 }, { prop: 'issuerName', label: '开票方', minWidth: 150 }, diff --git a/src/views/payment/bill-ledger-form.vue b/src/views/payment/bill-ledger-form.vue index f7a12be..ef9b43f 100644 --- a/src/views/payment/bill-ledger-form.vue +++ b/src/views/payment/bill-ledger-form.vue @@ -211,7 +211,7 @@ - + @@ -311,7 +311,7 @@ export default { billType: [{ required: true, message: '请选择汇票类型', trigger: 'change' }], faceAmount: [{ validator: this.validateFaceAmount, trigger: 'change' }], issueDate: [{ required: true, message: '请选择出票日期', trigger: 'change' }], - maturityDate: [{ validator: this.validateMaturityDate, trigger: 'change' }], + maturityDate: [{ required: true, validator: this.validateMaturityDate, trigger: 'change' }], availableDeptIds: [{ validator: this.validateDepartments, trigger: 'change' }], feeBearerId: [{ required: true, message: '请选择费用承担方', trigger: 'change' }], confirmedDiscountRate: [{ validator: this.validateRate, trigger: 'change' }], @@ -359,6 +359,8 @@ export default { this.form = { ...emptyForm(), ...data, + confirmedDiscountRate: this.normalizeDiscountRate(data.confirmedDiscountRate), + bankDiscountReferenceRate: this.normalizeDiscountRate(data.bankDiscountReferenceRate), availableDeptIds: this.parse(data.availableDeptIdsJson), attachments: this.parse(data.attachmentsJson), }; @@ -461,6 +463,11 @@ export default { } callback(); }, + normalizeDiscountRate(value) { + return value === null || value === undefined || value === '' || Number(value) === -1 + ? null + : value; + }, normalizeAttachments(files) { const userName = this.userInfo?.realName || this.userInfo?.userName || ''; const time = this.$dayjs().format('YYYY-MM-DD HH:mm:ss'); @@ -492,9 +499,9 @@ export default { availableDeptIdsJson: JSON.stringify(this.form.availableDeptIds || []), availableDeptNames: this.form.availableDeptNames, feeBearerId: this.form.feeBearerId, - confirmedDiscountRate: this.form.confirmedDiscountRate, + confirmedDiscountRate: this.normalizeDiscountRate(this.form.confirmedDiscountRate), issuingBank: this.form.issuingBank, - bankDiscountReferenceRate: this.form.bankDiscountReferenceRate, + bankDiscountReferenceRate: this.normalizeDiscountRate(this.form.bankDiscountReferenceRate), attachmentsJson: JSON.stringify(this.form.attachments || []), remark: this.form.remark, }; diff --git a/src/views/payment/bill-ledger.vue b/src/views/payment/bill-ledger.vue index 1324807..9c2a8c7 100644 --- a/src/views/payment/bill-ledger.vue +++ b/src/views/payment/bill-ledger.vue @@ -12,16 +12,89 @@ :loading="loading" :page="page" @add="openCreate" + @view="openView" @edit="openEdit" @delete="handleDelete" @page-change="handlePageChange" @size-change="handleSizeChange" /> + +
+ + + {{ + detailValue('billNo') + }} + {{ + detailValue('billTypeName', 'billType') + }} + {{ + detailValue('issuerName') + }} + {{ + detailValue('receiverName') + }} + {{ + formatMoney(detailDialog.row.faceAmount) + }} + {{ + formatMoney(detailDialog.row.availableBalance) + }} + {{ + detailValue('issueDate') + }} + {{ + detailValue('maturityDate') + }} + {{ + detailValue('issuingBank') + }} + {{ + detailValue('availableDeptNames') + }} + {{ + detailValue('feeBearerName') + }} + + {{ formatRate(detailDialog.row.bankDiscountReferenceRate) }} + + + {{ formatRate(detailDialog.row.confirmedDiscountRate) }} + + + {{ formatMoney(estimatedDiscountFee()) }} + + + {{ detailValue('remark') }} + + + + + + + + + + + + + + + +
+
diff --git a/src/views/payment/components/bill-ledger-table.vue b/src/views/payment/components/bill-ledger-table.vue index ddb5755..02ef19e 100644 --- a/src/views/payment/components/bill-ledger-table.vue +++ b/src/views/payment/components/bill-ledger-table.vue @@ -15,7 +15,10 @@ show-overflow-tooltip >
@@ -65,7 +68,7 @@ export default { loading: { type: Boolean, default: false }, page: { type: Object, required: true }, }, - emits: ['add', 'edit', 'delete', 'page-change', 'size-change'], + emits: ['add', 'view', 'edit', 'delete', 'page-change', 'size-change'], data() { return { columns: billLedgerTableColumns }; }, diff --git a/src/views/payment/invoice-application-form.vue b/src/views/payment/invoice-application-form.vue index c18b215..39ab1c2 100644 --- a/src/views/payment/invoice-application-form.vue +++ b/src/views/payment/invoice-application-form.vue @@ -192,12 +192,6 @@
第{{ sheetIndex + 1 }}张 - 删除
@@ -314,6 +308,9 @@ +
+ 删除 +
@@ -1080,6 +1077,9 @@ export default {