diff --git a/DataRoom/dataroom-core/src/main/java/com/gccloud/dataroom/core/module/chart/components/ChartTabChart.java b/DataRoom/dataroom-core/src/main/java/com/gccloud/dataroom/core/module/chart/components/ChartTabChart.java index 305f107e..28893d0f 100644 --- a/DataRoom/dataroom-core/src/main/java/com/gccloud/dataroom/core/module/chart/components/ChartTabChart.java +++ b/DataRoom/dataroom-core/src/main/java/com/gccloud/dataroom/core/module/chart/components/ChartTabChart.java @@ -27,7 +27,7 @@ public class ChartTabChart extends Chart{ public static class Customize { @ApiModelProperty(notes = "组件tab列表") - private List tabList; + private List tabList; @ApiModelProperty(notes = "字体大小") private Integer fontSize; @@ -38,6 +38,45 @@ public class ChartTabChart extends Chart{ @ApiModelProperty(notes = "字体颜色") private String color; + @ApiModelProperty(notes = "线条颜色") + private String lineColor; + + @ApiModelProperty(notes = "线条位置") + private String position; + + } + + @Data + public static class Tab { + + @ApiModelProperty(notes = "组件编码") + private String chartCode; + + @ApiModelProperty(notes = "组件名称") + private String name; + + @ApiModelProperty(notes = "tab图表") + private Chart chart; + } + + /** + * 获取内部图表 + * @param chartCode + * @return + */ + public Chart getInnerChart(String chartCode) { + if (customize == null) { + return null; + } + if (customize.tabList == null || customize.tabList.isEmpty()) { + return null; + } + for (Tab tab : customize.tabList) { + if (tab.getChartCode().equals(chartCode)) { + return tab.getChart(); + } + } + return null; } } diff --git a/DataRoom/dataroom-core/src/main/java/com/gccloud/dataroom/core/module/chart/controller/ChartDataController.java b/DataRoom/dataroom-core/src/main/java/com/gccloud/dataroom/core/module/chart/controller/ChartDataController.java index e18735d6..53314840 100644 --- a/DataRoom/dataroom-core/src/main/java/com/gccloud/dataroom/core/module/chart/controller/ChartDataController.java +++ b/DataRoom/dataroom-core/src/main/java/com/gccloud/dataroom/core/module/chart/controller/ChartDataController.java @@ -3,6 +3,7 @@ package com.gccloud.dataroom.core.module.chart.controller; import com.gccloud.dataroom.core.module.basic.dto.BasePageDTO; import com.gccloud.dataroom.core.module.basic.entity.PageEntity; import com.gccloud.dataroom.core.module.chart.bean.Chart; +import com.gccloud.dataroom.core.module.chart.components.ChartTabChart; import com.gccloud.dataroom.core.module.chart.components.ScreenFlyMapChart; import com.gccloud.dataroom.core.module.chart.dto.ChartDataSearchDTO; import com.gccloud.dataroom.core.module.chart.service.BaseChartDataService; @@ -111,6 +112,14 @@ public class ChartDataController { if (chart.getCode().equals(code)) { return chart; } + // 如果是Tab图表,尝试从内部图表中获取 + if (chart instanceof ChartTabChart) { + ChartTabChart chartTabChart = (ChartTabChart) chart; + Chart innerChart = chartTabChart.getInnerChart(code); + if (innerChart != null) { + return innerChart; + } + } } return null; }