queryWrapper.like(“属性”,“值”)模糊查询,,只有一个字段,查询成功,另一个查询不成功
代码:
查询结果:
//条件查询结果结果集
if (dossierDistrict.getName() != null & !"".equals(dossierDistrict.getName0))dossierDistrict.getDistrictNo() != nul1 & !"".equals(dossierDistrict.getDistrictNo()))
这个巨大的if一个表达的意思 两个参数有一项不为空, 但是这个if内部确使用了两个参数, 并没有考虑有一项为空的情况.
所以建议你将两个参数的判的分开处理, 或许可以解决问题
//条件查询结果结果集
if( StringUtils.isNotBlank(dossierDistrict.getDistrictNo()) || StringUtils.isNotBlank(dossierDistrict.getName()) {
queryWrapper. and(Wrapper ->
Wrapper.like( StringUtils.isNotBlank( dossierDistrict.getDistrictNo()),"district_no", dossierDistrict. getDistrictNo()) )
.or
.like(StringUtils.isNotBlank( dossierDistrict.getName() ), "name", dossierDistrict.getName() );
queryWrapper.eq( "deletemark", Const.DEL NO) ;
DossierDistrictEx nodes = getNodes(tree,dossierDistrict);
ar.setSucceed(nodes);
}else{
ar.setSucceed(tree) ;
}