🐛 收款流水认领额度改用收款金额并新增剩余可认领金额列
认领只登记本地,额度由本地累计认领控制,金蝶未匹配金额不再作为上限;批量认领校验复用剩余可认领金额口径。
This commit is contained in:
@@ -43,7 +43,7 @@
|
||||
<el-table-column label="已认领金额" min-width="130" align="right">
|
||||
<template #default="{ row }">{{ formatMoney(row.claimedAmount) }}</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="金蝶未认领金额" min-width="140" align="right">
|
||||
<el-table-column label="未匹配金额" min-width="140" align="right">
|
||||
<template #default="{ row }">{{ formatMoney(row.unmatchAmountRec) }}</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="剩余可认领金额" min-width="140" align="right">
|
||||
@@ -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;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -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() {
|
||||
|
||||
Reference in New Issue
Block a user