diff --git a/src/views/payment/bill-payment.vue b/src/views/payment/bill-payment.vue
index defddf9..962dab8 100644
--- a/src/views/payment/bill-payment.vue
+++ b/src/views/payment/bill-payment.vue
@@ -156,9 +156,17 @@ export default {
});
},
async handleApprove(row) {
- await api.approve({ id: row.id });
- this.$message.success('审批通过');
- this.loadTable();
+ await this.$confirm('确认审批通过该汇票付款?', '提示', { type: 'warning' });
+ // 防止重复点击:请求期间表格遮罩,后续点击直接忽略
+ if (this.loading) return;
+ this.loading = true;
+ try {
+ await api.approve({ id: row.id });
+ this.$message.success('审批通过');
+ await this.loadTable();
+ } finally {
+ this.loading = false;
+ }
},
async handleReturn(row) {
const { value } = await this.$prompt('请输入驳回原因', '审批驳回');
diff --git a/src/views/payment/invoice-application-form.vue b/src/views/payment/invoice-application-form.vue
index ec8ee8f..49f2838 100644
--- a/src/views/payment/invoice-application-form.vue
+++ b/src/views/payment/invoice-application-form.vue
@@ -323,17 +323,8 @@
{{ formatMoney(row.availableInvoiceAmount) }}
-
-
-
-
+
+ {{ formatMoney(row.allocatedInvoiceAmount) }}
@@ -454,6 +445,9 @@
{{ formatMoney(row.settlementAmount) }}
+
+ {{ formatMoney(row.invoicedAmount) }}
+
{{ formatMoney(row.availableInvoiceAmount) }}
@@ -861,7 +855,6 @@ export default {
keyword: this.settlementDialog.keyword,
contractCategory: '客户合同',
settlementType: 'receivable',
- invoiceStatus: 'unreceived',
}
)
);
@@ -913,7 +906,7 @@ export default {
...item,
formalSettlementId: item.id,
settlementId: item.id,
- allocatedInvoiceAmount: rows.length === 1 ? Number(item.availableInvoiceAmount || 0) : 0,
+ allocatedInvoiceAmount: 0,
}));
this.form.projectName = first.projectName;
this.form.deptName = first.deptName;
diff --git a/src/views/settlement/settlement-adjustment.vue b/src/views/settlement/settlement-adjustment.vue
index 629f8c1..3d99e0c 100644
--- a/src/views/settlement/settlement-adjustment.vue
+++ b/src/views/settlement/settlement-adjustment.vue
@@ -317,11 +317,18 @@ export default {
},
async handleApprove(row) {
await this.$confirm('审批通过后将更新关联正式结算单,确认继续?', '提示');
- const res = await api.approve(row.id);
- // data=false:自动同步金蝶失败;data=true 且 msg 带已推送场景的手工冲销提示
- if (res.data.data === true || res.data.data === false) this.$message.warning(res.data.msg);
- else this.$message.success(res.data.msg || '审批通过');
- this.loadTable();
+ // 防止重复点击:请求期间表格遮罩,后续点击直接忽略
+ if (this.loading) return;
+ this.loading = true;
+ try {
+ const res = await api.approve(row.id);
+ // data=false:自动同步金蝶失败;data=true 且 msg 带已推送场景的手工冲销提示
+ if (res.data.data === true || res.data.data === false) this.$message.warning(res.data.msg);
+ else this.$message.success(res.data.msg || '审批通过');
+ await this.loadTable();
+ } finally {
+ this.loading = false;
+ }
},
async handleReturn(row) {
const { value } = await this.$prompt('请输入驳回原因', '驳回', {
diff --git a/src/views/vehicle/customer-archive.vue b/src/views/vehicle/customer-archive.vue
index b08d1e5..8f02324 100644
--- a/src/views/vehicle/customer-archive.vue
+++ b/src/views/vehicle/customer-archive.vue
@@ -2462,6 +2462,7 @@ export default {
resetKingdeeBackfill() {
const form = this.archiveForm;
form.kingdeeStatus = 'none';
+ form.customerCode = '';
form.fullName = '';
form.legalPerson = '';
form.registeredCapital = '';
@@ -2517,6 +2518,8 @@ export default {
applyKingdeeCustomer(customer) {
const form = this.archiveForm;
form.kingdeeStatus = 'exist';
+ // 客商编号回显金蝶客商编码,与后端同步金蝶时的采纳口径保持一致
+ if (customer.number) form.customerCode = customer.number;
// 工商信息以金蝶为准,直接覆盖(后续字段锁定)
if (customer.name) form.fullName = customer.name;
if (customer.name) this.checkArchiveNameRisk();