|
@ -698,11 +698,17 @@ public class ElasticSearchUtil {
|
|
BoolQueryBuilder queryBuilder = QueryBuilders.boolQuery();
|
|
BoolQueryBuilder queryBuilder = QueryBuilders.boolQuery();
|
|
for (String filed : fields) {
|
|
for (String filed : fields) {
|
|
String [] condition = filed.split("=");
|
|
String [] condition = filed.split("=");
|
|
|
|
if ("null".equals(condition[1])) {
|
|
|
|
condition[1] ="";
|
|
|
|
}
|
|
queryBuilder.should(QueryBuilders.termQuery(condition[0], condition[1]));
|
|
queryBuilder.should(QueryBuilders.termQuery(condition[0], condition[1]));
|
|
}
|
|
}
|
|
boolQueryBuilder.must(queryBuilder);
|
|
boolQueryBuilder.must(queryBuilder);
|
|
} else if (filter.contains("?")) {
|
|
} else if (filter.contains("?")) {
|
|
String [] condition = filter.split("\\?");
|
|
String [] condition = filter.split("\\?");
|
|
|
|
if ("null".equals(condition[1])) {
|
|
|
|
condition[1] ="";
|
|
|
|
}
|
|
MatchQueryBuilder matchQueryBuilder = QueryBuilders.matchPhraseQuery(condition[0], condition[1]);
|
|
MatchQueryBuilder matchQueryBuilder = QueryBuilders.matchPhraseQuery(condition[0], condition[1]);
|
|
boolQueryBuilder.must(matchQueryBuilder);
|
|
boolQueryBuilder.must(matchQueryBuilder);
|
|
} else if (filter.contains("<>")) {
|
|
} else if (filter.contains("<>")) {
|
|
@ -712,6 +718,9 @@ public class ElasticSearchUtil {
|
|
TermsQueryBuilder termsQueryBuilder = QueryBuilders.termsQuery(condition[0], inCondition);
|
|
TermsQueryBuilder termsQueryBuilder = QueryBuilders.termsQuery(condition[0], inCondition);
|
|
boolQueryBuilder.mustNot(termsQueryBuilder);
|
|
boolQueryBuilder.mustNot(termsQueryBuilder);
|
|
} else {
|
|
} else {
|
|
|
|
if ("null".equals(condition[1])) {
|
|
|
|
condition[1] ="";
|
|
|
|
}
|
|
TermQueryBuilder termQueryBuilder = QueryBuilders.termQuery(condition[0], condition[1]);
|
|
TermQueryBuilder termQueryBuilder = QueryBuilders.termQuery(condition[0], condition[1]);
|
|
boolQueryBuilder.mustNot(termQueryBuilder);
|
|
boolQueryBuilder.mustNot(termQueryBuilder);
|
|
}
|
|
}
|
|
@ -742,6 +751,9 @@ public class ElasticSearchUtil {
|
|
TermsQueryBuilder termsQueryBuilder = QueryBuilders.termsQuery(condition[0], inCondition);
|
|
TermsQueryBuilder termsQueryBuilder = QueryBuilders.termsQuery(condition[0], inCondition);
|
|
boolQueryBuilder.must(termsQueryBuilder);
|
|
boolQueryBuilder.must(termsQueryBuilder);
|
|
} else {
|
|
} else {
|
|
|
|
if ("null".equals(condition[1])) {
|
|
|
|
condition[1] = "";
|
|
|
|
}
|
|
TermQueryBuilder termQueryBuilder = QueryBuilders.termQuery(condition[0], condition[1]);
|
|
TermQueryBuilder termQueryBuilder = QueryBuilders.termQuery(condition[0], condition[1]);
|
|
boolQueryBuilder.must(termQueryBuilder);
|
|
boolQueryBuilder.must(termQueryBuilder);
|
|
}
|
|
}
|