fix(图表): 修复图表自定义排序,排序项受自定义 SQL 全局预览生效参数影响 #17734

This commit is contained in:
wisonic
2026-01-14 17:56:38 +08:00
committed by wisonic-s
parent b6c4be939b
commit e16e710566
3 changed files with 6 additions and 6 deletions

View File

@@ -709,7 +709,7 @@ public class ChartDataManage {
}
// 获取dsMap,union sql
Map<String, Object> sqlMap = datasetSQLManage.getUnionSQLForEdit(table, null);
Map<String, Object> sqlMap = datasetSQLManage.getUnionSQLForEdit(table, null, null, false);
String sql = (String) sqlMap.get("sql");
Map<Long, DatasourceSchemaDTO> dsMap = (Map<Long, DatasourceSchemaDTO>) sqlMap.get("dsMap");
List<String> dsList = new ArrayList<>();
@@ -781,7 +781,7 @@ public class ChartDataManage {
querySql = provider.rebuildSQL(querySql, sqlMeta, crossDs, dsMap);
datasourceRequest.setQuery(querySql);
logger.debug("calcite chart get field enum sql: " + querySql);
logger.debug("calcite chart get field enum sql: {}", querySql);
data = (List<String[]>) provider.fetchResultField(datasourceRequest).get("data");
}

View File

@@ -358,7 +358,7 @@ public class DatasetSQLBotManage {
coreDatasource = BeanUtils.mapToBean(dsRowData, CoreDatasource.class);
}
try {
sqlMap = datasetSQLManage.getUnionSQLForEdit(datasetGroupInfoDTO, null, coreDatasource);
sqlMap = datasetSQLManage.getUnionSQLForEdit(datasetGroupInfoDTO, null, coreDatasource, true);
} catch (Exception e) {
throw new RuntimeException(e);
}

View File

@@ -124,10 +124,10 @@ public class DatasetSQLManage {
}
public Map<String, Object> getUnionSQLForEdit(DatasetGroupInfoDTO dataTableInfoDTO, ChartExtRequest chartExtRequest) throws Exception {
return getUnionSQLForEdit(dataTableInfoDTO, chartExtRequest, null);
return getUnionSQLForEdit(dataTableInfoDTO, chartExtRequest, null, chartExtRequest == null);
}
public Map<String, Object> getUnionSQLForEdit(DatasetGroupInfoDTO dataTableInfoDTO, ChartExtRequest chartExtRequest, CoreDatasource coreDatasource) throws Exception {
public Map<String, Object> getUnionSQLForEdit(DatasetGroupInfoDTO dataTableInfoDTO, ChartExtRequest chartExtRequest, CoreDatasource coreDatasource, boolean isFromDataSet) throws Exception {
Map<Long, DatasourceSchemaDTO> dsMap = new LinkedHashMap<>();
List<UnionDTO> union = dataTableInfoDTO.getUnion();
// 所有选中的字段即select后的查询字段
@@ -152,7 +152,7 @@ public class DatasetSQLManage {
} else {
schema = putObj2Map(dsMap, datasetTable, isCross, coreDatasource);
}
SQLObj table = getUnionTable(datasetTable, tableInfo, schema, i, filterParameters(chartExtRequest, currentDs.getId()), chartExtRequest == null, isCross, dsMap);
SQLObj table = getUnionTable(datasetTable, tableInfo, schema, i, filterParameters(chartExtRequest, currentDs.getId()), isFromDataSet, isCross, dsMap);
if (i == 0) {
tableName = table;
}