diff --git a/core/core-backend/src/main/java/io/dataease/visualization/manage/CoreVisualizationExportManage.java b/core/core-backend/src/main/java/io/dataease/visualization/manage/CoreVisualizationExportManage.java index f2d6909b0a..58fb463fdf 100644 --- a/core/core-backend/src/main/java/io/dataease/visualization/manage/CoreVisualizationExportManage.java +++ b/core/core-backend/src/main/java/io/dataease/visualization/manage/CoreVisualizationExportManage.java @@ -31,6 +31,7 @@ import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.stream.Collectors; +import java.util.stream.Stream; @Component @@ -64,6 +65,15 @@ public class CoreVisualizationExportManage { String componentsJson = visualization.getComponentData(); List> components = JsonUtil.parseList(componentsJson, tokenType); + components = components.stream().flatMap(item -> { + if (ObjectUtils.isNotEmpty(item.get("innerType")) && StringUtils.equalsIgnoreCase(item.get("innerType").toString(), "DeTabs")) { + if (ObjectUtils.isNotEmpty(item.get("propValue"))) { + List> deTabs = (List>) item.get("propValue"); + return deTabs.stream().flatMap(tab -> ((List>) tab.get("componentData")).stream()); + } + } + return Stream.of(item); + }).toList(); List idList = components.stream().filter(c -> ObjectUtils.isNotEmpty(c.get("id"))).map(component -> Long.parseLong(component.get("id").toString())).toList(); if (CollectionUtils.isNotEmpty(viewIdList)) {