From b0ca5c0f7d4b59baa3c2e29d5aeb6ba68e9f17b4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=8E=8B=E5=98=89=E8=B1=AA?= <42510293+ziyujiahao@users.noreply.github.com> Date: Tue, 26 Aug 2025 17:24:08 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=E8=B7=B3=E8=BD=AC?= =?UTF-8?q?=E9=85=8D=E7=BD=AE=E9=94=99=E8=AF=AF=20(#16822)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../manage/VisualizationLinkJumpManage.java | 27 +++++++------------ 1 file changed, 9 insertions(+), 18 deletions(-) diff --git a/core/core-backend/src/main/java/io/dataease/visualization/manage/VisualizationLinkJumpManage.java b/core/core-backend/src/main/java/io/dataease/visualization/manage/VisualizationLinkJumpManage.java index 663e220be1..3272cf68a6 100644 --- a/core/core-backend/src/main/java/io/dataease/visualization/manage/VisualizationLinkJumpManage.java +++ b/core/core-backend/src/main/java/io/dataease/visualization/manage/VisualizationLinkJumpManage.java @@ -228,7 +228,6 @@ public class VisualizationLinkJumpManage { } - public List queryWithDvId(Long dvId, Long uid, Boolean isDesktop) { return buildLinkJumpQuery(dvId, uid, isDesktop, false).fetch(); } @@ -240,7 +239,7 @@ public class VisualizationLinkJumpManage { public VisualizationLinkJumpDTO queryWithViewId(Long dvId, Long viewId, Long uid, Boolean isDesktop) { QSnapshotCoreChartView qChartView = QSnapshotCoreChartView.snapshotCoreChartView; QSnapshotVisualizationLinkJump qJump = QSnapshotVisualizationLinkJump.snapshotVisualizationLinkJump; - VisualizationLinkJumpDTO result = queryFactory + VisualizationLinkJumpDTO result = queryFactory .select(Projections.bean(VisualizationLinkJumpDTO.class, qChartView.id.as("sourceViewId"), qJump.id, @@ -251,15 +250,13 @@ public class VisualizationLinkJumpManage { .from(qChartView) .leftJoin(qJump).on(qChartView.id.eq(qJump.sourceViewId).and(qJump.sourceDvId.eq(dvId))) .where(qChartView.id.eq(viewId)).fetchFirst(); - if(result != null){ - result.setLinkJumpInfoArray(getLinkJumpInfoSnapshot(result.getId(),result.getSourceViewId(),uid,isDesktop)); - + if (result != null) { + result.setLinkJumpInfoArray(getLinkJumpInfoSnapshot(result.getId() == null?-1:result.getId(), result.getSourceViewId(), uid, isDesktop)); } - - return null; + return result; } - private List queryBaseLinkJumpInfoSnapshot(Long id, Long sourceViewId, Long uid, boolean isDesktop) { + private List queryBaseLinkJumpInfoSnapshot(Long id, Long sourceViewId, Long uid, boolean isDesktop) { QSnapshotCoreChartView ccv = QSnapshotCoreChartView.snapshotCoreChartView; QCoreDatasetTableField cdtf = QCoreDatasetTableField.coreDatasetTableField; QSnapshotVisualizationLinkJump vlj = QSnapshotVisualizationLinkJump.snapshotVisualizationLinkJump; @@ -311,7 +308,7 @@ public class VisualizationLinkJumpManage { .and(vlji.targetDvId.eq(xpackShare.resourceId)) ); // 重新构建select包含publicJumpId - query.select(Projections.bean(VisualizationLinkJumpInfoDTO.class, + query.select(Projections.bean(VisualizationLinkJumpInfoExtendDTO.class, cdtf.id.as("sourceFieldId"), cdtf.deType.as("sourceDeType"), cdtf.name.as("sourceFieldName"), @@ -339,13 +336,7 @@ public class VisualizationLinkJumpManage { )); } query.where(ccv.id.eq(sourceViewId).and(ccv.type.ne("VQuery"))); - // 动态排序 - if (!isDesktop) { - query.orderBy(Expressions.stringTemplate("CONVERT({0} USING gbk)", cdtf.name).asc()); - } else { - query.orderBy(cdtf.name.asc()); - } - + query.orderBy(cdtf.name.asc()); return query.fetch(); } @@ -408,7 +399,7 @@ public class VisualizationLinkJumpManage { private JPAQuery buildLinkJumpQuery(Long dvId, Long uid, Boolean isDesktop, boolean isSnapshot) { - if(isSnapshot){ + if (isSnapshot) { QSnapshotCoreChartView qChartView = QSnapshotCoreChartView.snapshotCoreChartView; QSnapshotVisualizationLinkJump qJump = QSnapshotVisualizationLinkJump.snapshotVisualizationLinkJump; return queryFactory @@ -423,7 +414,7 @@ public class VisualizationLinkJumpManage { .leftJoin(qJump).on(qChartView.id.eq(qJump.sourceViewId)) .where(qJump.sourceDvId.eq(dvId)) .where(qChartView.jumpActive.eq(true)); - }else{ + } else { QCoreChartView qChartView = QCoreChartView.coreChartView; QVisualizationLinkJump qJump = QVisualizationLinkJump.visualizationLinkJump;