From b271a675d41e12226586b6095445c5bc09a96ea1 Mon Sep 17 00:00:00 2001 From: hjhan Date: Fri, 28 Aug 2026 13:57:34 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E6=96=B0=E5=A2=9E=E4=BA=A4=E6=98=93?= =?UTF-8?q?=E9=BB=98=E8=AE=A4=E4=BA=A4=E6=98=93=E5=AF=B9=E6=89=8B=E6=96=B9?= =?UTF-8?q?=E6=9C=AA=E5=9B=9E=E5=86=99ClientId=EF=BC=8C=E4=BF=9D=E5=AD=98?= =?UTF-8?q?=E6=8A=A5"=E8=AF=B7=E8=AE=BE=E7=BD=AE=E4=BA=A4=E6=98=93?= =?UTF-8?q?=E5=AF=B9=E6=89=8B=E6=96=B9"?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit autocomplete.setData 只写控件显示值、不触发 onSelect 回写 v-model—— 新增时默认取客户列表第一个(consClients[0])仅 setData,trade.ClientId 仍为空, 前端校验拦截且不发请求;用户须手动从下拉重选一次才能保存。 - swaptrade/swapTradeEdit.js(SwapTrade2 现用页):默认客户经 vue.changeClient 显式回写,与手动选择等价 - trade/swapTradeEdit.js(SwapTrade 旧版页,同缺陷):直接赋值回写 trade.ClientId,不走 changeClient 以避免初始化触发 initMarginRate 后端调用 与 demo/autocomplete.js 死代码删除(3be4b48c)无关:该文件零引用,生产实现在 fastVue.base.js 未改动,缺陷自山证 v2.3.0 拷贝带入即存在。 --- YLErpWeb/wwwroot/Scripts/app/swaptrade/swapTradeEdit.js | 2 ++ YLErpWeb/wwwroot/Scripts/app/trade/swapTradeEdit.js | 2 ++ 2 files changed, 4 insertions(+) diff --git a/YLErpWeb/wwwroot/Scripts/app/swaptrade/swapTradeEdit.js b/YLErpWeb/wwwroot/Scripts/app/swaptrade/swapTradeEdit.js index 4934a0fe..1eb7edb3 100644 --- a/YLErpWeb/wwwroot/Scripts/app/swaptrade/swapTradeEdit.js +++ b/YLErpWeb/wwwroot/Scripts/app/swaptrade/swapTradeEdit.js @@ -1968,6 +1968,8 @@ function __init(vue) { let clientId = page.Trade.ClientId; let client = clientId ? consClients.find(x => x.id === clientId) : null; !client && page.isAdd && (client = consClients[0]); + //setData 只写控件显示值、不触发 onSelect 回写 v-model——新增时默认客户须显式回写,否则 trade.ClientId 为空、保存报"请设置交易对手方" + client && page.isAdd && vue.changeClient(client); autoClient.setData(client); _getMainProtocolCode(client); } diff --git a/YLErpWeb/wwwroot/Scripts/app/trade/swapTradeEdit.js b/YLErpWeb/wwwroot/Scripts/app/trade/swapTradeEdit.js index 0ad5dc9e..8482a44d 100644 --- a/YLErpWeb/wwwroot/Scripts/app/trade/swapTradeEdit.js +++ b/YLErpWeb/wwwroot/Scripts/app/trade/swapTradeEdit.js @@ -1185,6 +1185,8 @@ function __init(vue) { let clientId = page.Trade.ClientId; let client = clientId ? consClients.find(x => x.id === clientId) : null; !client && page.IsNew && (client = consClients[0]); + //setData 只写控件显示值、不触发 onSelect 回写 v-model——新增时默认客户须显式回写,否则 trade.ClientId 为空、保存报"请设置交易对手方" + client && page.IsNew && (vue.trade.ClientId = client.id); autoClient.setData(client); _getMainProtocolCode(client); }