虚拟清单--高级搜索
This commit is contained in:
+26
-28
@@ -5531,42 +5531,40 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
|
||||
String field = queryConditionVO.getField();
|
||||
String val = queryConditionVO.getVal();
|
||||
//如果查询字段对应的搜索条件值为空,则不作处理
|
||||
if(StringUtils.isNotBlank(val)){
|
||||
count ++;//从第二个查询条件开始拼接type(and或or)
|
||||
if(count > 1){
|
||||
sb.append(" "+type + " ");
|
||||
if(StringUtils.isNotBlank(val)) {
|
||||
count++;//从第二个查询条件开始拼接type(and或or)
|
||||
if (count > 1) {
|
||||
sb.append(" " + type + " ");
|
||||
}
|
||||
sb.append(" " + field + " ");
|
||||
//查询类型
|
||||
String ruleTemp = queryType(rule);
|
||||
if(StringUtils.isNotBlank(ruleLike)){
|
||||
if (StringUtils.isNotBlank(ruleLike)) {
|
||||
sb.append(ruleLike + " ");
|
||||
}else{
|
||||
} else {
|
||||
sb.append(ruleTemp + " ");
|
||||
}
|
||||
//在..中(用in-->特殊处理)
|
||||
if(val.contains(",")){
|
||||
StringBuilder sbTemp = new StringBuilder();
|
||||
for (String valTemp : val.split(",")) {
|
||||
sbTemp.append("'" + valTemp +"' ,");
|
||||
}
|
||||
if(StringUtils.isNotBlank(sbTemp)){
|
||||
String substring = sbTemp.substring(0, sbTemp.length() - 1);
|
||||
sb.append("("+substring+")");
|
||||
}
|
||||
}else{
|
||||
//like和in需要特殊处理
|
||||
if(QueryRuleEnum.IN.getCondition().equals(rule)){
|
||||
sb.append("('" + val + "')");
|
||||
}else if(QueryRuleEnum.LIKE.getCondition().equals(rule)){
|
||||
sb.append("'%" + val + "%'");
|
||||
}else if(QueryRuleEnum.LEFT_LIKE.getCondition().equals(rule)){
|
||||
sb.append("'%" + val + "'");
|
||||
}else if(QueryRuleEnum.RIGHT_LIKE.getCondition().equals(rule)){
|
||||
sb.append("'" + val + "%'");
|
||||
}else{
|
||||
sb.append("'" + val + "'");
|
||||
//like和in需要特殊处理
|
||||
if (QueryRuleEnum.IN.getCondition().equals(rule)) {
|
||||
if (val.contains(",")) {
|
||||
StringBuilder sbTemp = new StringBuilder();
|
||||
for (String valTemp : val.split(",")) {
|
||||
sbTemp.append("'" + valTemp + "' ,");
|
||||
}
|
||||
if (StringUtils.isNotBlank(sbTemp)) {
|
||||
String substring = sbTemp.substring(0, sbTemp.length() - 1);
|
||||
sb.append("(" + substring + ")");
|
||||
}
|
||||
}
|
||||
sb.append("('" + val + "')");
|
||||
} else if (QueryRuleEnum.LIKE.getCondition().equals(rule)) {
|
||||
sb.append("'%" + val + "%'");
|
||||
} else if (QueryRuleEnum.LEFT_LIKE.getCondition().equals(rule)) {
|
||||
sb.append("'%" + val + "'");
|
||||
} else if (QueryRuleEnum.RIGHT_LIKE.getCondition().equals(rule)) {
|
||||
sb.append("'" + val + "%'");
|
||||
} else {
|
||||
sb.append("'" + val + "'");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user