mirror of
https://github.com/dataease/dataease.git
synced 2026-05-15 05:22:13 +08:00
fix(仪表板、数据大屏): 修复仪表板、数据大屏相互跳转资源类型不正确导致的跳转失败问题
This commit is contained in:
@@ -45,6 +45,7 @@
|
||||
|
||||
<resultMap id="LinkJumpInfoMap" type="io.dataease.api.visualization.dto.VisualizationLinkJumpInfoDTO"
|
||||
extends="LinkJumpInfoBaseResultMap">
|
||||
<result column="target_dv_type" jdbcType="VARCHAR" property="targetDvType"/>
|
||||
<result column="source_field_id" jdbcType="BIGINT" property="sourceFieldId"/>
|
||||
<result column="source_de_type" jdbcType="INTEGER" property="sourceDeType"/>
|
||||
<result column="source_field_name" jdbcType="VARCHAR" property="sourceFieldName"/>
|
||||
@@ -92,6 +93,7 @@
|
||||
vlji.jump_type,
|
||||
vlji.window_size,
|
||||
vlji.target_dv_id,
|
||||
dvi.type as target_dv_type,
|
||||
vlji.content,
|
||||
<if test="!isDesktop">
|
||||
xpack_share.uuid AS publicJumpId,
|
||||
@@ -111,6 +113,7 @@
|
||||
AND vlj.id = #{id}
|
||||
LEFT JOIN snapshot_visualization_link_jump_info vlji ON vlj.id = vlji.link_jump_id
|
||||
AND cdtf.id = vlji.source_field_id
|
||||
LEFT JOIN snapshot_data_visualization_info dvi ON vlji.target_dv_id = dvi.id
|
||||
LEFT JOIN snapshot_visualization_link_jump_target_view_info vljtvi ON vlji.id = vljtvi.link_jump_info_id
|
||||
<if test="!isDesktop">
|
||||
LEFT JOIN xpack_share ON xpack_share.creator = #{uid}
|
||||
@@ -141,6 +144,7 @@
|
||||
vlji.jump_type,
|
||||
vlji.window_size,
|
||||
vlji.target_dv_id,
|
||||
dvi.type as target_dv_type,
|
||||
vlji.content,
|
||||
<if test="!isDesktop">
|
||||
xpack_share.uuid AS publicJumpId,
|
||||
@@ -160,6 +164,7 @@
|
||||
AND vlj.id = #{id}
|
||||
LEFT JOIN visualization_link_jump_info vlji ON vlj.id = vlji.link_jump_id
|
||||
AND cdtf.id = vlji.source_field_id
|
||||
LEFT JOIN snapshot_data_visualization_info dvi ON vlji.target_dv_id = dvi.id
|
||||
LEFT JOIN visualization_link_jump_target_view_info vljtvi ON vlji.id = vljtvi.link_jump_info_id
|
||||
<if test="!isDesktop">
|
||||
LEFT JOIN xpack_share ON xpack_share.creator = #{uid}
|
||||
|
||||
@@ -431,7 +431,7 @@ const windowsJump = (url, jumpType, size = 'middle') => {
|
||||
}
|
||||
|
||||
const jumpClick = param => {
|
||||
let dimension, jumpInfo, sourceInfo
|
||||
let dimension, jumpInfo, sourceInfo, targetDvType
|
||||
// 如果有名称name 获取和name匹配的dimension 否则倒序取最后一个能匹配的
|
||||
if (param.name) {
|
||||
param.dimensionList.forEach(dimensionItem => {
|
||||
@@ -501,7 +501,7 @@ const jumpClick = param => {
|
||||
if (publicLinkStatus.value) {
|
||||
// 判断是否有公共链接ID
|
||||
if (jumpInfo.publicJumpId) {
|
||||
let url = `${embeddedBaseUrl}#/de-link/${jumpInfo.publicJumpId}?fromLink=true&dvType=${dvInfo.value.type}`
|
||||
let url = `${embeddedBaseUrl}#/de-link/${jumpInfo.publicJumpId}?fromLink=true&dvType=${jumpInfo.targetDvType}`
|
||||
if (attachParamsInfo) {
|
||||
url = url + attachParamsInfo + jumpInfoParam
|
||||
} else {
|
||||
@@ -514,7 +514,7 @@ const jumpClick = param => {
|
||||
ElMessage.warning(t('visualization.public_link_tips'))
|
||||
}
|
||||
} else {
|
||||
let url = `${embeddedBaseUrl}#/preview?dvId=${jumpInfo.targetDvId}&fromLink=true&dvType=${dvInfo.value.type}`
|
||||
let url = `${embeddedBaseUrl}#/preview?dvId=${jumpInfo.targetDvId}&fromLink=true&dvType=${jumpInfo.targetDvType}`
|
||||
if (attachParamsInfo) {
|
||||
url = url + attachParamsInfo + jumpInfoParam
|
||||
} else {
|
||||
|
||||
@@ -22,6 +22,9 @@ public class VisualizationLinkJumpInfoDTO extends VisualizationLinkJumpInfoVO {
|
||||
//存在公共链接的目标仪表板
|
||||
private String publicJumpId;
|
||||
|
||||
// 目标类型
|
||||
private String targetDvType;
|
||||
|
||||
private List<VisualizationLinkJumpTargetViewInfoVO> targetViewInfoList=new ArrayList<>();// linkType = inner 时使用
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user