diff --git a/src/api/vehicle/customer-archive.js b/src/api/vehicle/customer-archive.js index 0814c2a..222ca13 100644 --- a/src/api/vehicle/customer-archive.js +++ b/src/api/vehicle/customer-archive.js @@ -163,6 +163,18 @@ export const queryKingdeeCustomer = creditCode => { }); }; +// 金蝶供应商编码查询(A901-1):新增客商填写信用代码后即时回显 +export const querySupplierCode = creditCode => { + return request({ + url: '/blade-transport/customer-archive/query-supplier-code', + method: 'get', + timeout: 30000, + params: { + creditCode, + }, + }); +}; + export const syncKingdee = id => { return request({ url: '/blade-transport/customer-archive/sync-kingdee', diff --git a/src/views/vehicle/customer-archive.vue b/src/views/vehicle/customer-archive.vue index 51e15fa..8f918e7 100644 --- a/src/views/vehicle/customer-archive.vue +++ b/src/views/vehicle/customer-archive.vue @@ -1606,6 +1606,7 @@ import { getScoreTemplate, recognizeBusinessLicenseOcr, queryKingdeeCustomer, + querySupplierCode, syncKingdee, } from '@/api/vehicle/customer-archive'; import { getRisk, getRiskByName } from '@/api/business/hcs'; @@ -2492,6 +2493,7 @@ export default { const form = this.archiveForm; form.kingdeeStatus = 'none'; form.customerCode = ''; + form.supplierCode = ''; form.fullName = ''; form.legalPerson = ''; form.registeredCapital = ''; @@ -2515,7 +2517,21 @@ export default { .toUpperCase(); if (code.length !== 18 || this.unifiedCreditCodeError(code)) return; clearTimeout(this.kingdeeQueryTimer); - this.kingdeeQueryTimer = setTimeout(() => this.fetchKingdeeCustomer(code), 500); + this.kingdeeQueryTimer = setTimeout(() => { + this.fetchKingdeeCustomer(code); + this.fetchSupplierCode(code); + }, 500); + }, + // 新增态下信用代码录入后即时查询金蝶供应商编码(A901-1)回显,查询失败静默留空,保存/同步时后端兜底落库 + async fetchSupplierCode(code) { + try { + const res = await querySupplierCode(code); + // 防止响应返回时用户已修改代码 + if (String(this.archiveForm.unifiedCreditCode || '').trim().toUpperCase() !== code) return; + this.archiveForm.supplierCode = res?.data?.data || ''; + } catch (error) { + // 忽略查询异常,编码留空 + } }, async fetchKingdeeCustomer(code) { let customer = null;