提交 dd27a825 authored 作者: junjie's avatar junjie

fix: 视图过滤不能设置无限制

上级 5e9cf037
......@@ -183,7 +183,10 @@ public class DorisQueryProvider extends QueryProvider {
filter.append(" AND ").append(x.getDataeaseName());
}
filter.append(transMysqlFilterTerm(f.getTerm()));
if (StringUtils.containsIgnoreCase(f.getTerm(), "null")) {
if (StringUtils.equalsIgnoreCase(f.getTerm(), "null")) {
filter.append("(null,'')");
} else if (StringUtils.equalsIgnoreCase(f.getTerm(), "not_null")) {
filter.append(" AND ").append(x.getDataeaseName()).append(" <> ''");
} else if (StringUtils.containsIgnoreCase(f.getTerm(), "in")) {
filter.append("('").append(StringUtils.join(f.getValue(), "','")).append("')");
} else if (StringUtils.containsIgnoreCase(f.getTerm(), "like")) {
......@@ -219,7 +222,12 @@ public class DorisQueryProvider extends QueryProvider {
filter.append(" AND _").append(y.getSummary()).append("_").append(StringUtils.equalsIgnoreCase(y.getDataeaseName(), "*") ? "" : y.getDataeaseName());
}
filter.append(transMysqlFilterTerm(f.getTerm()));
if (StringUtils.containsIgnoreCase(f.getTerm(), "null")) {
if (StringUtils.equalsIgnoreCase(f.getTerm(), "null")) {
filter.append("(null,'')");
} else if (StringUtils.equalsIgnoreCase(f.getTerm(), "not_null")) {
filter.append(" AND _")
.append(y.getSummary()).append("_").append(StringUtils.equalsIgnoreCase(y.getDataeaseName(), "*") ? "" : y.getDataeaseName())
.append(" <> ''");
} else if (StringUtils.containsIgnoreCase(f.getTerm(), "in")) {
filter.append("('").append(StringUtils.join(f.getValue(), "','")).append("')");
} else if (StringUtils.containsIgnoreCase(f.getTerm(), "like")) {
......@@ -300,7 +308,12 @@ public class DorisQueryProvider extends QueryProvider {
filter.append(" AND _").append(y.getSummary()).append("_").append(StringUtils.equalsIgnoreCase(y.getDataeaseName(), "*") ? "" : y.getDataeaseName());
}
filter.append(transMysqlFilterTerm(f.getTerm()));
if (StringUtils.containsIgnoreCase(f.getTerm(), "null")) {
if (StringUtils.equalsIgnoreCase(f.getTerm(), "null")) {
filter.append("(null,'')");
} else if (StringUtils.equalsIgnoreCase(f.getTerm(), "not_null")) {
filter.append(" AND _")
.append(y.getSummary()).append("_").append(StringUtils.equalsIgnoreCase(y.getDataeaseName(), "*") ? "" : y.getDataeaseName())
.append(" <> ''");
} else if (StringUtils.containsIgnoreCase(f.getTerm(), "in")) {
filter.append("('").append(StringUtils.join(f.getValue(), "','")).append("')");
} else if (StringUtils.containsIgnoreCase(f.getTerm(), "like")) {
......@@ -339,7 +352,7 @@ public class DorisQueryProvider extends QueryProvider {
}
@Override
public String createRawQuerySQL(String table, List<DatasetTableField> fields){
public String createRawQuerySQL(String table, List<DatasetTableField> fields) {
String[] array = fields.stream().map(f -> {
StringBuilder stringBuilder = new StringBuilder();
stringBuilder.append("`").append(f.getOriginName()).append("` AS ").append(f.getDataeaseName());
......@@ -383,7 +396,7 @@ public class DorisQueryProvider extends QueryProvider {
case "not like":
return " NOT LIKE ";
case "null":
return " IS NULL ";
return " IN ";
case "not_null":
return " IS NOT NULL ";
case "between":
......@@ -414,7 +427,10 @@ public class DorisQueryProvider extends QueryProvider {
filter.append(" ")
.append(transMysqlFilterTerm(request.getTerm()))
.append(" ");
if (StringUtils.containsIgnoreCase(request.getTerm(), "null")) {
if (StringUtils.equalsIgnoreCase(request.getTerm(), "null")) {
filter.append("(null,'')");
} else if (StringUtils.equalsIgnoreCase(request.getTerm(), "not_null")) {
filter.append(" AND ").append(field.getDataeaseName()).append(" <> ''");
} else if (StringUtils.containsIgnoreCase(request.getTerm(), "in")) {
filter.append("('").append(StringUtils.join(value, "','")).append("')");
} else if (StringUtils.containsIgnoreCase(request.getTerm(), "like")) {
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论