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 700328593c..7a638314fa 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 @@ -187,11 +187,11 @@ `senior`, `data_from`) SELECT #{newChartId}, - `name`, + GET_CHART_VIEW_COPY_NAME(#{oldChartId},#{panelId}) as `name`, #{panelId}, `table_id`, `type`, - `title`, + GET_CHART_VIEW_COPY_NAME(#{oldChartId},#{panelId}) as `title`, `x_axis`, `x_axis_ext`, `y_axis`, 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 5862bb8c26..d42d44b804 100644 --- a/backend/src/main/java/io/dataease/service/chart/ChartViewService.java +++ b/backend/src/main/java/io/dataease/service/chart/ChartViewService.java @@ -116,6 +116,13 @@ public class ChartViewService { public ChartViewWithBLOBs newOne(ChartViewWithBLOBs chartView) { long timestamp = System.currentTimeMillis(); + // 校验名称 + ChartViewExample queryExample = new ChartViewExample(); + queryExample.createCriteria().andSceneIdEqualTo(chartView.getSceneId()).andNameEqualTo(chartView.getName()); + List result = chartViewMapper.selectByExample(queryExample); + if(CollectionUtils.isNotEmpty(result)){ + DEException.throwException(Translator.get("theme_name_repeat")); + } chartView.setUpdateTime(timestamp); chartView.setId(UUID.randomUUID().toString()); chartView.setCreateBy(AuthUtils.getUser().getUsername());