From 1073a395c6e871bb0d2b1d98040045b1f3df6b80 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: Thu, 21 Aug 2025 10:54:17 +0800 Subject: [PATCH] =?UTF-8?q?refactor(=E6=95=B0=E6=8D=AE=E5=A4=A7=E5=B1=8F?= =?UTF-8?q?=E3=80=81=E4=BB=AA=E8=A1=A8=E6=9D=BF):=20=E8=B5=84=E6=BA=90?= =?UTF-8?q?=E5=8F=91=E5=B8=83=E6=97=B6=EF=BC=8C=E6=B8=85=E7=90=86=E6=97=A0?= =?UTF-8?q?=E7=94=A8=E6=95=B0=E6=8D=AE=20#16749=20(#16781)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dao/ext/mapper/ExtDataVisualizationMapper.java | 2 ++ .../server/DataVisualizationServer.java | 2 ++ .../mybatis/ExtDataVisualizationMapper.xml | 14 ++++++++++++++ .../src/components/dashboard/DbToolbar.vue | 9 ++++++--- .../components/data-visualization/DvToolbar.vue | 9 ++++++--- 5 files changed, 30 insertions(+), 6 deletions(-) diff --git a/core/core-backend/src/main/java/io/dataease/visualization/dao/ext/mapper/ExtDataVisualizationMapper.java b/core/core-backend/src/main/java/io/dataease/visualization/dao/ext/mapper/ExtDataVisualizationMapper.java index fec2813c9a..5e38d18da0 100644 --- a/core/core-backend/src/main/java/io/dataease/visualization/dao/ext/mapper/ExtDataVisualizationMapper.java +++ b/core/core-backend/src/main/java/io/dataease/visualization/dao/ext/mapper/ExtDataVisualizationMapper.java @@ -57,6 +57,8 @@ public interface ExtDataVisualizationMapper { void deleteViewsBatch(@Param("ids") Set ids,@Param("resourceTable") String resourceTable); + void deleteUselessViewsBatchSnapshot(@Param("ids") List ids,@Param("dvId") Long dvId); + UserFormVO queryInnerUserInfo(@Param("id") Long id); void snapshotDataV(@Param("dvId") Long dvId); diff --git a/core/core-backend/src/main/java/io/dataease/visualization/server/DataVisualizationServer.java b/core/core-backend/src/main/java/io/dataease/visualization/server/DataVisualizationServer.java index 286102f013..2bd2e162ee 100644 --- a/core/core-backend/src/main/java/io/dataease/visualization/server/DataVisualizationServer.java +++ b/core/core-backend/src/main/java/io/dataease/visualization/server/DataVisualizationServer.java @@ -594,6 +594,8 @@ public class DataVisualizationServer implements DataVisualizationApi { visualizationInfo.setStatus(request.getStatus()); coreVisualizationManage.innerEdit(visualizationInfo); if (CommonConstants.DV_STATUS.PUBLISHED == request.getStatus()) { + List viewIds = this.getEnabledViewIds(dvId,CommonConstants.RESOURCE_TABLE.SNAPSHOT); + extDataVisualizationMapper.deleteUselessViewsBatchSnapshot(viewIds,dvId); coreVisualizationManage.removeDvCore(dvId); coreVisualizationManage.dvRestore(dvId); chartViewManege.publishThreshold(dvId, request.getActiveViewIds()); diff --git a/core/core-backend/src/main/resources/mybatis/ExtDataVisualizationMapper.xml b/core/core-backend/src/main/resources/mybatis/ExtDataVisualizationMapper.xml index f6f4d93121..56d36c3d0c 100644 --- a/core/core-backend/src/main/resources/mybatis/ExtDataVisualizationMapper.xml +++ b/core/core-backend/src/main/resources/mybatis/ExtDataVisualizationMapper.xml @@ -498,6 +498,20 @@ + + DELETE + FROM + snapshot_core_chart_view ccv + WHERE + ccv.scene_id = #{dvId} + + and ccv.id not in + + #{id} + + + + diff --git a/core/core-frontend/src/components/dashboard/DbToolbar.vue b/core/core-frontend/src/components/dashboard/DbToolbar.vue index c3a7d54639..e8c2af2b39 100644 --- a/core/core-frontend/src/components/dashboard/DbToolbar.vue +++ b/core/core-frontend/src/components/dashboard/DbToolbar.vue @@ -203,9 +203,12 @@ const publishStatusChange = status => { type: 'dashboard' }).then(() => { dvMainStore.updateDvInfoCall(status) - status - ? ElMessage.success(t('visualization.published_success')) - : ElMessage.success(t('visualization.cancel_publish_tips')) + if (status) { + ElMessage.success(t('visualization.published_success')) + snapshotStore.initSnapShot() + } else { + ElMessage.success(t('visualization.cancel_publish_tips')) + } }) } diff --git a/core/core-frontend/src/components/data-visualization/DvToolbar.vue b/core/core-frontend/src/components/data-visualization/DvToolbar.vue index 79d5b7de8c..d8b77976d4 100644 --- a/core/core-frontend/src/components/data-visualization/DvToolbar.vue +++ b/core/core-frontend/src/components/data-visualization/DvToolbar.vue @@ -331,9 +331,12 @@ const publishStatusChange = status => { type: 'dataV' }).then(() => { dvMainStore.updateDvInfoCall(status) - status - ? ElMessage.success(t('visualization.published_success')) - : ElMessage.success(t('visualization.cancel_publish_tips')) + if (status) { + ElMessage.success(t('visualization.published_success')) + snapshotStore.initSnapShot() + } else { + ElMessage.success(t('visualization.cancel_publish_tips')) + } }) }