diff --git a/core/core-backend/src/main/java/io/dataease/dataset/manage/DatasetDataManage.java b/core/core-backend/src/main/java/io/dataease/dataset/manage/DatasetDataManage.java index c1fb11d441..98e2410322 100644 --- a/core/core-backend/src/main/java/io/dataease/dataset/manage/DatasetDataManage.java +++ b/core/core-backend/src/main/java/io/dataease/dataset/manage/DatasetDataManage.java @@ -231,20 +231,21 @@ public class DatasetDataManage { map.put("allFields", fieldList); } map.put("sql", Base64.getEncoder().encodeToString(querySQL.getBytes())); - map.put("total", getDatasetTotal(datasetGroupInfoDTO, SqlUtils.rebuildSQL(SQLProvider.createQuerySQL(sqlMeta, false, false, needOrder), sqlMeta, crossDs, dsMap))); + String replaceSql = SqlUtils.rebuildSQL(SQLProvider.createQuerySQL(sqlMeta, false, false, needOrder), sqlMeta, crossDs, dsMap); + map.put("total", getDatasetTotal(datasetGroupInfoDTO, replaceSql, null)); return map; } public Long getDatasetTotal(Long datasetGroupId) throws Exception { DatasetGroupInfoDTO dto = datasetGroupManage.getForCount(datasetGroupId); if (StringUtils.equalsIgnoreCase(dto.getNodeType(), "dataset")) { - return getDatasetTotal(dto, null); + return getDatasetTotal(dto, null, new ChartExtRequest()); } return 0L; } - public Long getDatasetTotal(DatasetGroupInfoDTO datasetGroupInfoDTO, String s) throws Exception { - Map sqlMap = datasetSQLManage.getUnionSQLForEdit(datasetGroupInfoDTO, null); + public Long getDatasetTotal(DatasetGroupInfoDTO datasetGroupInfoDTO, String s, ChartExtRequest request) throws Exception { + Map sqlMap = datasetSQLManage.getUnionSQLForEdit(datasetGroupInfoDTO, request); Map dsMap = (Map) sqlMap.get("dsMap"); String sql;