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

Merge pull request !194 from Jerry_Zheng/main
This commit is contained in:
Michael Yang 2023-07-27 03:27:54 +00:00 committed by Gitee
commit a082dcc553
No known key found for this signature in database
GPG Key ID: 173E9B9CA92EEF8F

View File

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