From 4cf1088adda798e20c4856f95ca1bbc9ec955d59 Mon Sep 17 00:00:00 2001 From: junjun Date: Wed, 19 Feb 2025 11:05:05 +0800 Subject: [PATCH] =?UTF-8?q?fix(=E5=9B=BE=E8=A1=A8):=20=E4=BF=AE=E5=A4=8D?= =?UTF-8?q?=E8=AE=A1=E7=AE=97=E5=8F=82=E6=95=B0=E4=B8=8D=E7=94=9F=E6=95=88?= =?UTF-8?q?=E7=9A=84=E9=97=AE=E9=A2=98=20#14991?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/io/dataease/chart/manage/ChartDataManage.java | 5 ++++- .../src/views/chart/components/editor/index.vue | 8 +++++++- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/core/core-backend/src/main/java/io/dataease/chart/manage/ChartDataManage.java b/core/core-backend/src/main/java/io/dataease/chart/manage/ChartDataManage.java index d58eb762d8..b72e22a208 100644 --- a/core/core-backend/src/main/java/io/dataease/chart/manage/ChartDataManage.java +++ b/core/core-backend/src/main/java/io/dataease/chart/manage/ChartDataManage.java @@ -383,7 +383,10 @@ public class ChartDataManage { provider = ProviderFactory.getProvider(dsMap.entrySet().iterator().next().getValue().getType()); } - view.setCalParams(Utils.getParams(transFields(allFields))); + if (ObjectUtils.isEmpty(view.getCalParams())) { + view.setCalParams(Utils.getParams(transFields(allFields))); + } + SQLMeta sqlMeta = new SQLMeta(); Table2SQLObj.table2sqlobj(sqlMeta, null, "(" + sql + ")", crossDs); CustomWhere2Str.customWhere2sqlObj(sqlMeta, fieldCustomFilter, transFields(allFields), crossDs, dsMap, Utils.getParams(transFields(allFields)), view.getCalParams(), pluginManage); diff --git a/core/core-frontend/src/views/chart/components/editor/index.vue b/core/core-frontend/src/views/chart/components/editor/index.vue index 3c6f3f0b48..661ae871ab 100644 --- a/core/core-frontend/src/views/chart/components/editor/index.vue +++ b/core/core-frontend/src/views/chart/components/editor/index.vue @@ -360,6 +360,12 @@ const recordSnapshotInfo = type => { snapshotStore.recordSnapshotCache(type, view.value.id) } +const changeDataset = () => { + // change dataset, do clear field or other thing + view.value['calParams'] = [] + recordSnapshotInfo('calcData') +} + const filterNode = (value, data) => { if (!value) { return true @@ -3410,7 +3416,7 @@ const deleteChartFieldItem = id => { :state-obj="state" :themes="themes" @add-ds-window="addDsWindow" - @on-dataset-change="recordSnapshotInfo('calcData')" + @on-dataset-change="changeDataset" />