From 78bb38e955b4b7331b3310e01473d540199c93de Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E5=88=98=E6=B3=89=E4=BD=B3?= <1107186916@qq.com>
Date: Thu, 29 Oct 2026 20:07:53 +0800
Subject: [PATCH] =?UTF-8?q?:bug:=20=E6=94=B6=E6=AC=BE=E6=B5=81=E6=B0=B4?=
=?UTF-8?q?=E8=AE=A4=E9=A2=86=E9=A2=9D=E5=BA=A6=E6=94=B9=E7=94=A8=E6=94=B6?=
=?UTF-8?q?=E6=AC=BE=E9=87=91=E9=A2=9D=E5=B9=B6=E6=96=B0=E5=A2=9E=E5=89=A9?=
=?UTF-8?q?=E4=BD=99=E5=8F=AF=E8=AE=A4=E9=A2=86=E9=87=91=E9=A2=9D=E5=88=97?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
认领只登记本地,额度由本地累计认领控制,金蝶未匹配金额不再作为上限;批量认领校验复用剩余可认领金额口径。
---
src/option/payment/receiptFlow.js | 15 ++++++++-------
src/views/payment/receipt-flow-batch-form.vue | 16 +++++-----------
src/views/payment/receipt-flow-form.vue | 7 +++----
3 files changed, 16 insertions(+), 22 deletions(-)
diff --git a/src/option/payment/receiptFlow.js b/src/option/payment/receiptFlow.js
index 4ea9e3d..ff2ac33 100644
--- a/src/option/payment/receiptFlow.js
+++ b/src/option/payment/receiptFlow.js
@@ -6,17 +6,18 @@ export const receiptFlowTableColumns = [
{ prop: 'counterpartyAccount', label: '对方账号', minWidth: 170 },
{ prop: 'counterpartyBank', label: '对方开户行', minWidth: 150 },
{ prop: 'payeeName', label: '收款人(公司)', minWidth: 150 },
- { prop: 'orgNumber', label: '收款公司编码', minWidth: 130 },
- { prop: 'openOrgNumber', label: '核算组织编码', minWidth: 130 },
+ //{ prop: 'orgNumber', label: '收款公司编码', minWidth: 130 },
+ //{ prop: 'openOrgNumber', label: '核算组织编码', minWidth: 130 },
{ prop: 'summary', label: '摘要', minWidth: 160 },
{ prop: 'transactionTime', label: '交易时间', minWidth: 170 },
{ prop: 'claimStatusName', label: '认领状态', minWidth: 110, status: true },
{ prop: 'claimedAmount', label: '已认领金额', minWidth: 130, money: true },
+ { prop: 'remainingAmount', label: '剩余可认领金额', minWidth: 140, money: true },
{ prop: 'unmatchAmountRec', label: '未匹配金额', minWidth: 140, money: true },
- { prop: 'matchAmountRec', label: '已匹配收款金额', minWidth: 140, money: true },
- { prop: 'matchAmountPay', label: '已匹配付款金额', minWidth: 140, money: true },
- { prop: 'unmatchAmountPay', label: '未匹配付款金额', minWidth: 140, money: true },
- { prop: 'settleAmount', label: '已结算金额', minWidth: 130, money: true },
- { prop: 'unsettleAmount', label: '未结算金额', minWidth: 130, money: true },
+ //{ prop: 'matchAmountRec', label: '已匹配收款金额', minWidth: 140, money: true },
+ //{ prop: 'matchAmountPay', label: '已匹配付款金额', minWidth: 140, money: true },
+ //{ prop: 'unmatchAmountPay', label: '未匹配付款金额', minWidth: 140, money: true },
+ //{ prop: 'settleAmount', label: '已结算金额', minWidth: 130, money: true },
+ //{ prop: 'unsettleAmount', label: '未结算金额', minWidth: 130, money: true },
{ prop: 'kingdeeBillStatusName', label: '金蝶状态', minWidth: 110 },
];
diff --git a/src/views/payment/receipt-flow-batch-form.vue b/src/views/payment/receipt-flow-batch-form.vue
index a0cec3c..58feffc 100644
--- a/src/views/payment/receipt-flow-batch-form.vue
+++ b/src/views/payment/receipt-flow-batch-form.vue
@@ -43,7 +43,7 @@
{{ formatMoney(row.claimedAmount) }}
-
+
{{ formatMoney(row.unmatchAmountRec) }}
@@ -302,10 +302,8 @@ export default {
);
},
flowRemaining(flow) {
- const unclaimed = Number(flow.unmatchAmountRec || 0);
- const receipt = Number(flow.receiptAmount || 0);
- const ceiling = unclaimed > 0 && receipt > 0 ? Math.min(unclaimed, receipt) : unclaimed || receipt;
- return Math.max(ceiling - Number(flow.claimedAmount || 0), 0);
+ // 认领只登记本地:剩余可认领 = 收款金额 − 已认领金额
+ return Math.max(Number(flow.receiptAmount || 0) - Number(flow.claimedAmount || 0), 0);
},
maxAllocation(row) {
const current = Number(row.settlement.allocations?.[row.flow.id] || 0);
@@ -355,12 +353,8 @@ export default {
}
for (const flow of this.flows) {
const total = this.flowAllocatedTotal(flow.id);
- const remaining = Math.max(
- Number(flow.unmatchAmountRec || 0) - Number(flow.claimedAmount || 0),
- 0
- );
- if (total > remaining + 0.001) {
- this.$message.warning(`流水${flow.receiptNoticeNo}的累计认领金额不能超过未匹配金额`);
+ if (total > this.flowRemaining(flow) + 0.001) {
+ this.$message.warning(`流水${flow.receiptNoticeNo}的累计认领金额不能超过剩余可认领金额`);
return;
}
}
diff --git a/src/views/payment/receipt-flow-form.vue b/src/views/payment/receipt-flow-form.vue
index 75549b6..8778966 100644
--- a/src/views/payment/receipt-flow-form.vue
+++ b/src/views/payment/receipt-flow-form.vue
@@ -252,11 +252,10 @@ export default {
);
},
claimableAmount() {
- const unclaimed = Number(this.form.unmatchAmountRec || 0);
+ // 认领只登记本地:剩余可认领 = 收款金额 − 已认领金额
const receipt = Number(this.form.receiptAmount || 0);
- const ceiling =
- unclaimed > 0 && receipt > 0 ? Math.min(unclaimed, receipt) : unclaimed || receipt;
- return Math.max(ceiling - Number(this.form.claimedAmount || 0), 0);
+ const claimed = Number(this.form.claimedAmount || 0);
+ return Math.max(receipt - claimed, 0);
},
},
created() {