diff --git a/src/main/java/com/imyeyu/spring/util/SQLProvider.java b/src/main/java/com/imyeyu/spring/util/SQLProvider.java index feb0358..816bdb0 100644 --- a/src/main/java/com/imyeyu/spring/util/SQLProvider.java +++ b/src/main/java/com/imyeyu/spring/util/SQLProvider.java @@ -65,7 +65,7 @@ public class SQLProvider { .filter(fc -> fc.isNotNull(obj)) .map(fc -> "`%s` = '%s'".formatted(fc.columnName, fc.getAsString(obj))) .collect(Collectors.joining(" AND ")); - sql.append(conditionClause); + sql.append(" AND ").append(conditionClause); } if (TimiJava.isNotEmpty(page.getLikeExample())) { // 模糊查询 @@ -74,8 +74,8 @@ public class SQLProvider { String conditionClause = metaExample.fieldColumnList.stream() .filter(fc -> fc.isNotNull(obj)) .map(fc -> "`%s` LIKE CONCAT('%%', '%s', '%%')".formatted(fc.columnName, fc.getAsString(obj))) - .collect(Collectors.joining(" AND ")); - sql.append(conditionClause); + .collect(Collectors.joining(" OR ")); + sql.append(" AND (").append(conditionClause).append(')'); } // 排序 if (TimiJava.isNotEmpty(page.getOrderMap())) { @@ -123,7 +123,7 @@ public class SQLProvider { .filter(fc -> fc.isNotNull(obj)) .map(fc -> "`%s` = '%s'".formatted(fc.columnName, fc.getAsString(obj))) .collect(Collectors.joining(" AND ")); - sql.append(conditionClause); + sql.append(" AND ").append(conditionClause); } if (TimiJava.isNotEmpty(page.getLikeExample())) { // 模糊查询 @@ -132,8 +132,8 @@ public class SQLProvider { String conditionClause = metaExample.fieldColumnList.stream() .filter(fc -> fc.isNotNull(obj)) .map(fc -> "`%s` LIKE CONCAT('%%', '%s', '%%')".formatted(fc.columnName, fc.getAsString(obj))) - .collect(Collectors.joining(" AND ")); - sql.append(conditionClause); + .collect(Collectors.joining(" OR ")); + sql.append(" AND (").append(conditionClause).append(')'); } return sql.toString(); }