From f1b6494db8b5c524ac34011b2643a4eedf3b5edb Mon Sep 17 00:00:00 2001 From: ZhangYong Date: Sat, 11 Apr 2026 15:14:01 +0800 Subject: [PATCH] =?UTF-8?q?=E4=B8=9A=E7=BB=A9=E5=BD=92=E5=B1=9E=E5=B8=82?= =?UTF-8?q?=E5=9C=BA=E5=90=8D=E8=BD=ACid?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../financialAccount/performanceAttribution.vue | 26 ++++++++++++++++++++-- 1 file changed, 24 insertions(+), 2 deletions(-) diff --git a/src/views/moneyManage/financialAccount/performanceAttribution.vue b/src/views/moneyManage/financialAccount/performanceAttribution.vue index e2c245e..1fb68be 100644 --- a/src/views/moneyManage/financialAccount/performanceAttribution.vue +++ b/src/views/moneyManage/financialAccount/performanceAttribution.vue @@ -103,6 +103,28 @@ const getMarket = async () => { const fetchData = async () => { loading.value = true try { + // 将 adminData 中的名称列表转换为 ID 列表 + const adminMarketNames = adminData.value.marketName?.split(',').map(item => item.trim()).filter(Boolean) || []; + const adminMarketIds = []; + + // 递归遍历地区树寻找匹配的 ID + const findIdsByNames = (nodes, names, resultIds) => { + if (!nodes || nodes.length === 0) return; + nodes.forEach(node => { + if (names.includes(node.label)) { + resultIds.push(node.value); + } + if (node.children) { + findIdsByNames(node.children, names, resultIds); + } + }); + }; + + findIdsByNames(marketOptions.value, adminMarketNames, adminMarketIds); + console.log('adminMarketNames:', adminMarketNames) + console.log('adminMarketIds:', adminMarketIds) + console.log('adminMarketIds:', queryParams.adminMarketIds) + // 构建请求参数 console.log('adminData.value.markets:', adminData.value.markets) const params = { @@ -110,7 +132,7 @@ const fetchData = async () => { pageSize: queryParams.pageSize, performanceDTO: { jwcode: queryParams.jwcode, - adminMarket: adminData.value.marketName.split(',').filter(item => item.trim() !== '') || [], + adminMarket: adminMarketIds, customerMarket: queryParams.customerMarket, startTime: queryParams.timeRange?.[0] ? dayjs(queryParams.timeRange[0]).format('YYYY-MM-DD HH:mm:ss') : '', endTime: queryParams.timeRange?.[1] ? dayjs(queryParams.timeRange[1]).format('YYYY-MM-DD HH:mm:ss') : '', @@ -386,7 +408,7 @@ const submitAdjustment = async () => { onMounted(async () => { await initPermissions() await handleAdminInfo() - getMarket() + await getMarket() await fetchData() })