🐛 修复收款流水继续认领预填与付款申请预结算引用提交
部分认领打开时预填历史关联结算单,可认领上限按公告未认领与收款金额取小;付款申请提交前清理误存正式结算单引用。 Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -252,10 +252,11 @@ export default {
|
||||
);
|
||||
},
|
||||
claimableAmount() {
|
||||
return Math.max(
|
||||
Number(this.form.unclaimedAmount || 0) - Number(this.form.claimedAmount || 0),
|
||||
0
|
||||
);
|
||||
const unclaimed = Number(this.form.unclaimedAmount || 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);
|
||||
},
|
||||
},
|
||||
created() {
|
||||
@@ -274,14 +275,21 @@ export default {
|
||||
}
|
||||
const data = this.unwrapData(await api.getDetail(this.flowId));
|
||||
const userInfo = this.$store.getters.userInfo || {};
|
||||
// 部分认领继续认领:预填本流水历史关联且仍有剩余可认领金额的结算单
|
||||
const relatedSettlements = (data?.relatedSettlements || []).map(item => ({
|
||||
...item,
|
||||
formalSettlementId: item.id,
|
||||
settlementId: item.id,
|
||||
allocatedReceiptAmount: 0,
|
||||
}));
|
||||
this.form = {
|
||||
...emptyForm(),
|
||||
...data,
|
||||
claimerName: userInfo.realName || userInfo.userName || data.claimerName || '',
|
||||
claimerDeptName: userInfo.deptName || userInfo.dept_name || data.claimerDeptName || '',
|
||||
claimDate: this.$dayjs().format('YYYY-MM-DD'),
|
||||
settlementIds: [],
|
||||
settlements: [],
|
||||
settlementIds: relatedSettlements.map(item => item.formalSettlementId),
|
||||
settlements: relatedSettlements,
|
||||
attachments: [],
|
||||
};
|
||||
},
|
||||
@@ -347,7 +355,7 @@ export default {
|
||||
return;
|
||||
}
|
||||
if (this.allocatedTotal > this.claimableAmount + 0.001) {
|
||||
this.$message.warning('累计认领金额不能超过公告未认领金额(剩余可认领金额)');
|
||||
this.$message.warning('累计认领金额不能超过剩余可认领金额');
|
||||
return;
|
||||
}
|
||||
for (const row of this.form.settlements)
|
||||
|
||||
Reference in New Issue
Block a user