1. WrapperUtils 添加 Or 查询
This commit is contained in:
parent
99567ef161
commit
b930217312
|
|
@ -19,6 +19,9 @@ public @interface Condition {
|
|||
in,
|
||||
between,
|
||||
likeLeft,
|
||||
dataScope
|
||||
dataScope,
|
||||
or_eq,
|
||||
or_like,
|
||||
or_likeLeft
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -6,10 +6,10 @@ import cn.hutool.core.convert.Convert;
|
|||
import cn.hutool.core.util.ArrayUtil;
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import cn.hutool.core.util.ReflectUtil;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.chushang.common.mybatis.annotation.Condition;
|
||||
import com.chushang.common.mybatis.base.BaseEntity;
|
||||
import com.chushang.common.mybatis.exception.MybatisConditionException;
|
||||
import com.chushang.common.mybatis.page.CommonParam;
|
||||
import lombok.AccessLevel;
|
||||
|
|
@ -28,7 +28,7 @@ public class WrapperUtils {
|
|||
if (null != columns) {
|
||||
queryWrapper = queryWrapper.select(columns);
|
||||
}
|
||||
if (null != commonParam){
|
||||
if (null != commonParam) {
|
||||
// 构造Wrapper
|
||||
queryWrapper = queryWrapper
|
||||
.orderBy(true, "asc".equals(commonParam.getIsAsc()), commonParam.getOrderBy());
|
||||
|
|
@ -51,6 +51,7 @@ public class WrapperUtils {
|
|||
continue;
|
||||
}
|
||||
String name = condition.name();
|
||||
String[] split = name.split(",");
|
||||
switch (condition.type()) {
|
||||
case eq:
|
||||
queryWrapper = queryWrapper.eq(ObjectUtil.isNotEmpty(value), name, value);
|
||||
|
|
@ -86,6 +87,28 @@ public class WrapperUtils {
|
|||
queryWrapper = queryWrapper.in(CollectionUtil.isNotEmpty(deptIds), name, deptIds);
|
||||
}
|
||||
}
|
||||
break;
|
||||
case or_eq:
|
||||
queryWrapper.and(q -> {
|
||||
for (String key : split) {
|
||||
q.or().eq(ObjectUtil.isNotEmpty(value), key, value);
|
||||
}
|
||||
});
|
||||
break;
|
||||
case or_like:
|
||||
queryWrapper.and(q -> {
|
||||
for (String key : split) {
|
||||
q.or().like(ObjectUtil.isNotEmpty(value), key, value);
|
||||
}
|
||||
});
|
||||
break;
|
||||
case or_likeLeft:
|
||||
queryWrapper.and(q -> {
|
||||
for (String key : split) {
|
||||
q.or().likeLeft(ObjectUtil.isNotEmpty(value), key, value);
|
||||
}
|
||||
});
|
||||
break;
|
||||
}
|
||||
}
|
||||
return queryWrapper.lambda();
|
||||
|
|
|
|||
Loading…
Reference in New Issue