package com.moral.api.config.mybatis.wrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.enums.SqlKeyword; import com.baomidou.mybatisplus.core.enums.SqlLike; import org.springframework.util.ObjectUtils; import java.util.Collection; /** * @ClassName FiltNullWrapper * @Description 查询构造器,传入null并不会作为条件 * @Author 陈凯裕 * @Date 2021/3/30 10:45 * @Version TODO **/ public class NullFilterWrapper extends QueryWrapper { @Override protected QueryWrapper likeValue(boolean condition, SqlKeyword keyword, String column, Object val, SqlLike sqlLike) { if(val==null) condition = false; return super.likeValue(condition, keyword, column, val, sqlLike); } @Override public QueryWrapper between(boolean condition, String column, Object val1, Object val2) { if(val1==null||val2==null) condition = false; return super.between(condition, column, val1, val2); } @Override public QueryWrapper eq(boolean condition, String column, Object val) { if(val==null) condition = false; return super.eq(condition, column, val); } @Override public QueryWrapper in(boolean condition, String column, Collection coll) { if(ObjectUtils.isEmpty(coll)) condition = false; return super.in(condition, column, coll); } }