(improvement)(Headless)headless supports with (#1113)

This commit is contained in:
mainmain
2024-06-07 16:10:08 +08:00
committed by GitHub
parent c09b9428b2
commit aef60c6e83
8 changed files with 237 additions and 68 deletions

View File

@@ -17,6 +17,7 @@ import java.util.List;
import java.util.Map;
import java.util.Objects;
import java.util.Set;
import java.util.HashSet;
import java.util.concurrent.atomic.AtomicBoolean;
import java.util.function.Predicate;
import java.util.stream.Collectors;
@@ -72,7 +73,7 @@ public abstract class BaseMapper implements SchemaMapper {
if (CollectionUtils.isEmpty(dataSetIds)) {
return;
}
Set<Long> dataSetIdInMapInfo = queryContext.getMapInfo().getDataSetElementMatches().keySet();
Set<Long> dataSetIdInMapInfo = new HashSet<>(queryContext.getMapInfo().getDataSetElementMatches().keySet());
for (Long dataSetId : dataSetIdInMapInfo) {
if (!dataSetIds.contains(dataSetId)) {
queryContext.getMapInfo().getDataSetElementMatches().remove(dataSetId);
@@ -178,4 +179,4 @@ public abstract class BaseMapper implements SchemaMapper {
}
return element.getAlias();
}
}
}

View File

@@ -54,7 +54,8 @@ public class DefaultQueryParser implements QueryParser {
|| Strings.isNullOrEmpty(queryStatement.getSourceId())) {
throw new RuntimeException("parse Exception: " + queryStatement.getErrMsg());
}
if (!SqlSelectHelper.hasLimit(queryStatement.getSql())) {
if (StringUtils.isNotBlank(queryStatement.getSql())
&& !SqlSelectHelper.hasLimit(queryStatement.getSql())) {
String querySql = queryStatement.getSql() + " limit " + queryStatement.getLimit().toString();
queryStatement.setSql(querySql);
}