diff --git a/src/views/payment/payment-application.vue b/src/views/payment/payment-application.vue index f8c0915..baf454c 100644 --- a/src/views/payment/payment-application.vue +++ b/src/views/payment/payment-application.vue @@ -163,6 +163,7 @@ export default { rows: [], selection: [], loading: false, + approveLoading: false, syncLoading: false, resultSyncing: false, query: {}, @@ -327,14 +328,21 @@ export default { this.refreshChange(); }, async handleApprove(row) { - const res = await api.approve({ id: row.id }); - // data=false 表示审批已通过但自动同步金蝶失败,msg 带具体原因 - if (res.data.data === false) { - this.$message.warning(res.data.msg); - } else { - this.$message.success(res.data.msg || '审批通过'); + // 防止重复点击:请求进行中忽略后续点击 + if (this.approveLoading) return; + this.approveLoading = true; + try { + const res = await api.approve({ id: row.id }); + // data=false 表示审批已通过但自动同步金蝶失败,msg 带具体原因 + if (res.data.data === false) { + this.$message.warning(res.data.msg); + } else { + this.$message.success(res.data.msg || '审批通过'); + } + this.refreshChange(); + } finally { + this.approveLoading = false; } - this.refreshChange(); }, handleMkAudit(row) { if (!row?.id) {