From 0ce07f4325955f97835bcb841d8b836638253355 Mon Sep 17 00:00:00 2001 From: wangjiahao <1522128093@qq.com> Date: Mon, 15 Nov 2021 16:24:03 +0800 Subject: [PATCH] =?UTF-8?q?refactor:=E4=BB=AA=E8=A1=A8=E6=9D=BF=E8=A7=86?= =?UTF-8?q?=E5=9B=BE=E8=81=94=E5=8A=A8=EF=BC=8C=E4=BD=BF=E7=94=A8=E7=9B=B8?= =?UTF-8?q?=E5=90=8C=E6=95=B0=E6=8D=AE=E9=9B=86=E7=9A=84=E8=A7=86=E5=9B=BE?= =?UTF-8?q?=EF=BC=8C=E8=87=AA=E5=8A=A8=E8=A1=A5=E5=85=85=E8=81=94=E5=8A=A8?= =?UTF-8?q?=E5=AD=97=E6=AE=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../base/mapper/ext/ExtChartViewMapper.java | 2 ++ .../base/mapper/ext/ExtChartViewMapper.xml | 15 ++-------- .../controller/chart/ChartViewController.java | 6 ++++ .../service/chart/ChartViewService.java | 8 +++++ frontend/src/api/chart/chart.js | 8 +++++ .../canvas/components/Editor/LinkageField.vue | 29 +++++++++++++------ 6 files changed, 46 insertions(+), 22 deletions(-) diff --git a/backend/src/main/java/io/dataease/base/mapper/ext/ExtChartViewMapper.java b/backend/src/main/java/io/dataease/base/mapper/ext/ExtChartViewMapper.java index ed9a4085ec..5b337f0fbe 100644 --- a/backend/src/main/java/io/dataease/base/mapper/ext/ExtChartViewMapper.java +++ b/backend/src/main/java/io/dataease/base/mapper/ext/ExtChartViewMapper.java @@ -20,4 +20,6 @@ public interface ExtChartViewMapper { List allViewIds(@Param("tableId") String tableId); String searchAdviceSceneId(@Param("userId") String userId,@Param("panelId") String panelId); + + int checkSameDataSet(@Param("viewIdSource") String viewIdSource,@Param("viewIdTarget") String viewIdTarget); } diff --git a/backend/src/main/java/io/dataease/base/mapper/ext/ExtChartViewMapper.xml b/backend/src/main/java/io/dataease/base/mapper/ext/ExtChartViewMapper.xml index d755e2dc61..bb66ab8c51 100644 --- a/backend/src/main/java/io/dataease/base/mapper/ext/ExtChartViewMapper.xml +++ b/backend/src/main/java/io/dataease/base/mapper/ext/ExtChartViewMapper.xml @@ -136,18 +136,7 @@ id = #{oldChartId} - + select count(DISTINCT table_id) from chart_view where id = #{viewIdSource} or id = #{viewIdTarget} diff --git a/backend/src/main/java/io/dataease/controller/chart/ChartViewController.java b/backend/src/main/java/io/dataease/controller/chart/ChartViewController.java index 13f84cc6a3..07ff9f45e9 100644 --- a/backend/src/main/java/io/dataease/controller/chart/ChartViewController.java +++ b/backend/src/main/java/io/dataease/controller/chart/ChartViewController.java @@ -107,4 +107,10 @@ public class ChartViewController { public ChartViewDTO calcData(@RequestBody ChartCalRequest request) throws Exception { return chartViewService.calcData(request.getView(), request.getRequestList(), false); } + + @ApiOperation("验证视图是否使用相同数据集") + @GetMapping("/checkSameDataSet/{viewIdSource}/{viewIdTarget}") + public String checkSameDataSet(@PathVariable String viewIdSource,@PathVariable String viewIdTarget) throws Exception { + return chartViewService.checkSameDataSet(viewIdSource,viewIdTarget); + } } diff --git a/backend/src/main/java/io/dataease/service/chart/ChartViewService.java b/backend/src/main/java/io/dataease/service/chart/ChartViewService.java index 2cb9a7b2d6..95f85e960b 100644 --- a/backend/src/main/java/io/dataease/service/chart/ChartViewService.java +++ b/backend/src/main/java/io/dataease/service/chart/ChartViewService.java @@ -1455,4 +1455,12 @@ public class ChartViewService { public String searchAdviceSceneId(String panelId) { return extChartViewMapper.searchAdviceSceneId(AuthUtils.getUser().getUserId().toString(), panelId); } + + public String checkSameDataSet(String viewIdSource,String viewIdTarget) { + if(extChartViewMapper.checkSameDataSet(viewIdSource,viewIdTarget)==1){ + return "YES"; + }else{ + return "NO"; + } + } } diff --git a/frontend/src/api/chart/chart.js b/frontend/src/api/chart/chart.js index 08e9df093c..5c3f7821f7 100644 --- a/frontend/src/api/chart/chart.js +++ b/frontend/src/api/chart/chart.js @@ -52,3 +52,11 @@ export function searchAdviceSceneId(panelId) { loading: true }) } + +export function checkSameDataSet(viewIdSource, viewIdTarget) { + return request({ + url: '/chart/view/checkSameDataSet/' + viewIdSource + '/' + viewIdTarget, + method: 'get', + loading: false + }) +} diff --git a/frontend/src/components/canvas/components/Editor/LinkageField.vue b/frontend/src/components/canvas/components/Editor/LinkageField.vue index 94c7783bef..0856287423 100644 --- a/frontend/src/components/canvas/components/Editor/LinkageField.vue +++ b/frontend/src/components/canvas/components/Editor/LinkageField.vue @@ -15,11 +15,10 @@ - - +
- +
- + - {{ item.name }} + {{ itemLinkage.targetField }}-{{ item.name }}
@@ -66,7 +65,7 @@ - 追加联动依赖字段 + 追加联动依赖字段 @@ -76,6 +75,7 @@