refactor(仪表板、数据大屏): 桌面版问题兼容
Some checks are pending
Typos Check / Spell Check with Typos (push) Waiting to run

This commit is contained in:
wangjiahao 2024-12-16 15:58:40 +08:00 committed by 王嘉豪
parent f4e39d88cc
commit 8332105f58
5 changed files with 67 additions and 103 deletions

View File

@ -12,9 +12,9 @@ import org.apache.ibatis.annotations.Param;
import java.util.List;
@Mapper
public interface ExtVisualizationLinkJumpMapper {
List<VisualizationLinkJumpDTO> queryWithDvId(@Param("dvId") Long dvId,@Param("uid") Long uid);
List<VisualizationLinkJumpDTO> queryWithDvId(@Param("dvId") Long dvId,@Param("uid") Long uid,@Param("isDesktop") Boolean isDesktop);
VisualizationLinkJumpDTO queryWithViewId(@Param("dvId") Long dvId,@Param("viewId") Long viewId,@Param("uid") Long uid);
VisualizationLinkJumpDTO queryWithViewId(@Param("dvId") Long dvId,@Param("viewId") Long viewId,@Param("uid") Long uid,@Param("isDesktop") Boolean isDesktop);
void deleteJumpTargetViewInfo(@Param("dvId") Long dvId,@Param("viewId") Long viewId);

View File

@ -15,6 +15,7 @@ import io.dataease.extensions.datasource.dto.DatasetTableFieldDTO;
import io.dataease.utils.AuthUtils;
import io.dataease.utils.BeanUtils;
import io.dataease.utils.IDUtils;
import io.dataease.utils.ModelUtils;
import io.dataease.visualization.dao.auto.entity.DataVisualizationInfo;
import io.dataease.visualization.dao.auto.entity.VisualizationLinkJump;
import io.dataease.visualization.dao.auto.entity.VisualizationLinkJumpInfo;
@ -74,7 +75,7 @@ public class VisualizationLinkJumpService implements VisualizationLinkJumpApi {
@Override
public VisualizationLinkJumpBaseResponse queryVisualizationJumpInfo(Long dvId) {
Map<String, VisualizationLinkJumpInfoDTO> resultBase = new HashMap<>();
List<VisualizationLinkJumpDTO> resultLinkJumpList = extVisualizationLinkJumpMapper.queryWithDvId(dvId, AuthUtils.getUser().getUserId());
List<VisualizationLinkJumpDTO> resultLinkJumpList = extVisualizationLinkJumpMapper.queryWithDvId(dvId, AuthUtils.getUser().getUserId(), ModelUtils.isDesktop());
Optional.ofNullable(resultLinkJumpList).orElse(new ArrayList<>()).forEach(resultLinkJump -> {
if (resultLinkJump.getChecked()) {
Long sourceViewId = resultLinkJump.getSourceViewId();
@ -99,7 +100,7 @@ public class VisualizationLinkJumpService implements VisualizationLinkJumpApi {
@Override
public VisualizationLinkJumpDTO queryWithViewId(Long dvId, Long viewId) {
return extVisualizationLinkJumpMapper.queryWithViewId(dvId, viewId, AuthUtils.getUser().getUserId());
return extVisualizationLinkJumpMapper.queryWithViewId(dvId, viewId, AuthUtils.getUser().getUserId(), ModelUtils.isDesktop());
}
@Transactional

View File

@ -30,7 +30,7 @@
<resultMap id="BaseResultMapDTO" type="io.dataease.api.visualization.dto.VisualizationLinkJumpDTO"
extends="LinkJumpBaseResultMap">
<collection property="linkJumpInfoArray" ofType="io.dataease.api.visualization.dto.VisualizationLinkJumpInfoDTO"
column="{id=id,source_view_id=source_view_id,uid=queryUid}"
column="{id=id,source_view_id=source_view_id,uid=queryUid, isDesktop=isDesktop}"
select="getLinkJumpInfo">
</collection>
</resultMap>
@ -85,7 +85,9 @@
visualization_link_jump_info.window_size,
visualization_link_jump_info.target_dv_id,
visualization_link_jump_info.content,
<if test="!isDesktop">
xpack_share.uuid AS publicJumpId,
</if>
ifnull( visualization_link_jump_info.checked, 0 ) AS checked,
ifnull( visualization_link_jump_info.attach_params, 0 ) AS attach_params,
visualization_link_jump_target_view_info.target_id,
@ -102,20 +104,29 @@
LEFT JOIN visualization_link_jump_info ON visualization_link_jump.id = visualization_link_jump_info.link_jump_id
AND core_dataset_table_field.id = visualization_link_jump_info.source_field_id
LEFT JOIN visualization_link_jump_target_view_info ON visualization_link_jump_info.id = visualization_link_jump_target_view_info.link_jump_info_id
<if test="!isDesktop">
LEFT JOIN xpack_share ON xpack_share.creator = #{uid}
AND visualization_link_jump_info.target_dv_id = xpack_share.resource_id
</if>
left join visualization_outer_params_info on visualization_outer_params_info.params_info_id = visualization_link_jump_target_view_info.target_view_id
WHERE
core_chart_view.id = #{source_view_id}
AND core_chart_view.type != 'VQuery'
ORDER BY
CONVERT (
core_dataset_table_field.NAME USING gbk)
<if test="!isDesktop">
ORDER BY
CONVERT (
core_dataset_table_field.NAME USING gbk)
</if>
<if test="isDesktop">
ORDER BY core_dataset_table_field.name;
</if>
</select>
<select id="queryWithDvId" resultMap="BaseResultMapDTO">
SELECT core_chart_view.id AS source_view_id,
${uid} as queryUid,
${isDesktop} as isDesktop,
visualization_link_jump.id,
#{dvId} as source_dv_id, visualization_link_jump.link_jump_info,
ifnull(core_chart_view.jump_active, 0) AS checked
@ -153,6 +164,7 @@
<select id="queryWithViewId" resultMap="BaseResultMapDTO">
SELECT core_chart_view.id AS source_view_id,
${uid} as queryUid,
${isDesktop} as isDesktop,
visualization_link_jump.id,
#{dvId} as source_dv_id, visualization_link_jump.link_jump_info,
ifnull(visualization_link_jump.checked, 0) AS checked
@ -176,109 +188,58 @@
</select>
<delete id="deleteJumpTargetViewInfo">
DELETE
ljtv
FROM
visualization_link_jump_target_view_info ljtv,
visualization_link_jump_info lji,
visualization_link_jump lj
WHERE
ljtv.link_jump_info_id = lji.id
AND lji.link_jump_id = lj.id
AND lj.source_dv_id =
#{dvId}
AND
lj
.
source_view_id
=
#{viewId}
DELETE FROM visualization_link_jump_target_view_info
WHERE link_jump_info_id IN (
SELECT lji.id
FROM visualization_link_jump_info lji
JOIN visualization_link_jump lj ON lji.link_jump_id = lj.id
WHERE lj.source_dv_id = #{dvId}
AND lj.source_view_id = #{viewId}
);
</delete>
<delete id="deleteJumpInfo">
DELETE
lji
FROM
visualization_link_jump_info lji,
visualization_link_jump lj
WHERE
lji.link_jump_id = lj.id
AND lj.source_dv_id =
#{dvId}
AND
lj
.
source_view_id
=
#{viewId}
DELETE FROM visualization_link_jump_info
WHERE link_jump_id IN (
SELECT lj.id
FROM visualization_link_jump lj
WHERE lj.source_dv_id = #{dvId}
AND lj.source_view_id = #{viewId}
);
</delete>
<delete id="deleteJump">
DELETE
lj
FROM
visualization_link_jump lj
WHERE
lj.source_dv_id =
#{dvId}
AND
lj
.
source_view_id
=
#{viewId}
DELETE FROM visualization_link_jump
WHERE source_dv_id = #{dvId}
AND source_view_id = #{viewId}
</delete>
<delete id="deleteJumpTargetViewInfoWithVisualization">
DELETE
ljtv
FROM
visualization_link_jump_target_view_info ljtv,
visualization_link_jump_info lji,
visualization_link_jump lj
WHERE
ljtv.link_jump_info_id = lji.id
AND lji.link_jump_id = lj.id
AND (lj.source_dv_id =
#{dvId}
or
lji
.
target_dv_id
=
#{dvId}
DELETE FROM visualization_link_jump_target_view_info
WHERE link_jump_info_id IN (
SELECT lji.id
FROM visualization_link_jump_info lji
JOIN visualization_link_jump lj ON lji.link_jump_id = lj.id
WHERE lj.source_dv_id = #{dvId}
OR lji.target_dv_id = #{dvId}
)
</delete>
<delete id="deleteJumpInfoWithVisualization">
DELETE
lji
FROM
visualization_link_jump_info lji,
visualization_link_jump lj
WHERE
lji.link_jump_id = lj.id
AND (lj.source_dv_id =
#{dvId}
or
lji
.
target_dv_id
=
#{dvId}
DELETE FROM visualization_link_jump_info
WHERE link_jump_id IN (
SELECT lj.id
FROM visualization_link_jump lj
WHERE lj.source_dv_id = #{dvId}
OR lj.target_dv_id = #{dvId}
)
</delete>
<delete id="deleteJumpWithVisualization">
DELETE
lj
FROM
visualization_link_jump lj
WHERE
lj.source_dv_id =
#{dvId}
</delete>
<delete id="deleteJumpWithVisualization">
DELETE FROM visualization_link_jump
WHERE source_dv_id = #{dvId}
</delete>
<select id="getTargetVisualizationJumpInfo" resultMap="AllJumpMap">
SELECT DISTINCT

View File

@ -85,14 +85,17 @@
<delete id="deleteViewLinkageField">
DELETE pvl
FROM
visualization_linkage pvl,
visualization_linkage_field pvlf
WHERE
pvl.id = pvlf.linkage_id
AND pvl.source_view_id = #{sourceViewId}
AND pvl.dv_id = #{dvId}
DELETE FROM visualization_linkage
WHERE id IN (
SELECT id FROM (
SELECT pvl.id
FROM visualization_linkage pvl
JOIN visualization_linkage_field pvlf
ON pvl.id = pvlf.linkage_id
WHERE pvl.source_view_id = #{sourceViewId}
AND pvl.dv_id = #{dvId}
) AS temp_table
)
</delete>
<select id="getPanelAllLinkageInfo" resultMap="AllLinkageMap">

View File

@ -4,7 +4,6 @@ import _ from 'lodash'
export function treeParentWeight(tree: BusiTreeNode[], pWeight) {
const pWeightResult = {}
weightCheckCircle(tree, pWeightResult, pWeight)
console.log('===test===' + JSON.stringify(pWeightResult))
return pWeightResult
}