Изменение поведения для matchPhrase с Set

Раньше, если приходила пустая коллекция, то при генерации фильтра это поле просто игнорировалось, как-будто оно null.

Теперь если приходит пустая коллекция, то вместо операции in выполняется проверка на null. То есть возвращаются сущности, у которых поле равно null.
This commit is contained in:
Struchkov Mark 2022-04-01 13:21:10 +03:00
parent c0a779905b
commit 07b80e4cfb

View File

@ -45,8 +45,12 @@ public class CriteriaJooqQuery {
public <U> CriteriaJooqQuery matchPhrase(String field, Set<U> values) {
Assert.isNotNull(field);
if (values != null && !values.isEmpty()) {
conditions.add(DSL.field(field).in(values));
if (values != null) {
if (values.isEmpty()) {
conditions.add(DSL.field(field).isNull());
} else {
conditions.add(DSL.field(field).in(values));
}
}
return this;
}