refactor: 明细表跳转字段支持一个跳转字段自定义携带的跳转维度 (#17121)

This commit is contained in:
王嘉豪
2025-09-29 15:29:48 +08:00
committed by GitHub
parent c99387d3d6
commit 0936bca755
2 changed files with 11 additions and 8 deletions

View File

@@ -339,7 +339,7 @@
<select id="getTargetVisualizationJumpInfo" resultMap="AllJumpMap">
SELECT DISTINCT
concat( lj.source_view_id, '#', jtvi.source_field_active_id ) AS sourceInfo,
concat( lj.source_view_id, '#', jtvi.source_field_active_id, '#', lji.source_field_id ) AS sourceInfo,
concat( jtvi.target_view_id, '#', jtvi.target_field_id ) AS targetInfo
FROM
visualization_link_jump_target_view_info jtvi
@@ -357,7 +357,7 @@
<select id="getTargetVisualizationJumpInfoSnapshot" resultMap="AllJumpMap">
SELECT DISTINCT
concat( lj.source_view_id, '#', jtvi.source_field_active_id ) AS sourceInfo,
concat( lj.source_view_id, '#', jtvi.source_field_active_id, '#', lji.source_field_id ) AS sourceInfo,
concat( jtvi.target_view_id, '#', jtvi.target_field_id ) AS targetInfo
FROM
snapshot_visualization_link_jump_target_view_info jtvi

View File

@@ -1016,7 +1016,6 @@ export const dvMainStore = defineStore('dataVisualization', {
trackInfo = this.nowPanelJumpInfoTargetPanel
}
const preActiveComponentIds = []
const checkQDList = [...data.dimensionList, ...data.quotaList]
const customFilterInfo = data.customFilter
for (let indexOuter = 0; indexOuter < this.componentData.length; indexOuter++) {
const element = this.componentData[indexOuter]
@@ -1024,7 +1023,7 @@ export const dvMainStore = defineStore('dataVisualization', {
if (['UserView', 'VQuery'].includes(element.component)) {
this.trackFilterCursor(
element,
checkQDList,
data,
trackInfo,
preActiveComponentIds,
viewId,
@@ -1035,7 +1034,7 @@ export const dvMainStore = defineStore('dataVisualization', {
element.propValue?.forEach((groupItem, index) => {
this.trackFilterCursor(
groupItem,
checkQDList,
data,
trackInfo,
preActiveComponentIds,
viewId,
@@ -1048,7 +1047,7 @@ export const dvMainStore = defineStore('dataVisualization', {
tabItem.componentData?.forEach((tabComponent, index) => {
this.trackFilterCursor(
tabComponent,
checkQDList,
data,
trackInfo,
preActiveComponentIds,
viewId,
@@ -1367,12 +1366,13 @@ export const dvMainStore = defineStore('dataVisualization', {
},
trackFilterCursor(
element,
checkQDList,
sourceData,
trackInfo,
preActiveComponentIds,
viewId,
customFilter?
) {
const checkQDList = [...sourceData.dimensionList, ...sourceData.quotaList]
let currentFilters = element.linkageFilters || [] // 当前联动filter
if (['table-info', 'table-normal'].includes(element.innerType)) {
currentFilters = []
@@ -1387,7 +1387,10 @@ export const dvMainStore = defineStore('dataVisualization', {
// 联动的图表情况历史条件
// const currentFilters = []
checkQDList.forEach(QDItem => {
const sourceInfo = viewId + '#' + QDItem.id
let sourceInfo = viewId + '#' + QDItem.id
if (sourceData.option === 'jump') {
sourceInfo = sourceInfo + '#' + sourceData.sourceFieldId
}
// 获取所有目标联动信息
const targetInfoList = trackInfo[sourceInfo] || []
const paramValue = [QDItem.value]