feat:add QueryWrapper 的.and() .or() 方法, 建议增加一个 boolean condition 参数. 用于根据动态条件是否执行 consumer.

This commit is contained in:
Jerry Zheng(鄭吉銳) 2023-07-27 10:35:29 +08:00
parent bcea6e73d6
commit 3c71d4e54b

View File

@ -224,6 +224,13 @@ public class QueryWrapper extends BaseQueryWrapper<QueryWrapper> {
}
public QueryWrapper and(Consumer<QueryWrapper> consumer) {
return and(true, consumer);
}
public QueryWrapper and(boolean condition, Consumer<QueryWrapper> consumer) {
if (!condition) {
return this;
}
QueryWrapper newWrapper = new QueryWrapper();
consumer.accept(newWrapper);
QueryCondition whereQueryCondition = newWrapper.whereQueryCondition;
@ -266,6 +273,13 @@ public class QueryWrapper extends BaseQueryWrapper<QueryWrapper> {
}
public QueryWrapper or(Consumer<QueryWrapper> consumer) {
return or(true, consumer);
}
public QueryWrapper or(boolean condition, Consumer<QueryWrapper> consumer) {
if (condition) {
return this;
}
QueryWrapper newWrapper = new QueryWrapper();
consumer.accept(newWrapper);
QueryCondition whereQueryCondition = newWrapper.whereQueryCondition;