diff --git a/core/backend/src/main/java/io/dataease/service/chart/ViewExportExcel.java b/core/backend/src/main/java/io/dataease/service/chart/ViewExportExcel.java index 009ff2722b..752ed3ac11 100644 --- a/core/backend/src/main/java/io/dataease/service/chart/ViewExportExcel.java +++ b/core/backend/src/main/java/io/dataease/service/chart/ViewExportExcel.java @@ -71,6 +71,7 @@ public class ViewExportExcel { Map result = new HashMap<>(); Map> panelFilters = justView ? FilterBuildTemplate.buildFilters(components) : FilterBuildTemplate.buildEmpty(components); + List tableInfoViewIds = findTableInfoViewIds(components); for (Map.Entry> entry : panelFilters.entrySet()) { List chartExtFilterRequests = entry.getValue(); ChartExtRequest chartExtRequest = new ChartExtRequest(); @@ -78,11 +79,26 @@ public class ViewExportExcel { chartExtRequest.setFilter(chartExtFilterRequests); chartExtRequest.setResultCount((int) resultCount); chartExtRequest.setResultMode(resultMode); + if(tableInfoViewIds.contains(entry.getKey())){ + chartExtRequest.setGoPage(1L); + chartExtRequest.setPageSize(1000000L); + chartExtRequest.setExcelExportFlag(true); + } result.put(entry.getKey(), chartExtRequest); } return result; } + private List findTableInfoViewIds(List> components) { + List tableInfoViewIds = new ArrayList<>(); + components.forEach(element -> { + if (StringUtils.equals(element.get("type").toString(), "view") && StringUtils.equals(((Map) element.get("propValue")).get("innerType").toString(), "table-info")) { + tableInfoViewIds.add(((Map) element.get("propValue")).get("viewId").toString()); + } + }); + return tableInfoViewIds; + } + private ExcelSheetModel viewFiles(String viewId, ChartExtRequest request) { ExcelSheetModel result = new ExcelSheetModel(); ChartViewDTO chartViewDTO = null;