最近遇到wrapper多个or条件动态拼接的问题,网上找了一下没找到合适的方法,说一下自己的方法。
不是动态的or拼接:
wrapper.and(w->w.like(StringUtils.isNotBlank("str"),Reimburse::getCrspOperationNo,"str")
.or().like(StringUtils.isNotBlank("str"),Reimburse::getCrspOperationNo,"str")
);
动态的or拼接:
wrapper.and(w->{
for (String str:crspOperationNos){
w.or().like(StringUtils.isNotBlank(str),Reimburse::getCrspOperationNo,str);
}
});