@@ -103,7 +95,7 @@
ossrh
https://oss.sonatype.org/
-
+
30
@@ -174,7 +166,7 @@
ossrh
https://oss.sonatype.org/
-
+
30
diff --git a/src/main/java/com/github/yulichang/query/MyLambdaQueryWrapper.java b/src/main/java/com/github/yulichang/query/MyLambdaQueryWrapper.java
index 0c270ae..0c8fcf2 100644
--- a/src/main/java/com/github/yulichang/query/MyLambdaQueryWrapper.java
+++ b/src/main/java/com/github/yulichang/query/MyLambdaQueryWrapper.java
@@ -27,7 +27,7 @@ import java.util.stream.Collectors;
*
* sqlSelect 由覆盖改为追加
*/
-@SuppressWarnings("serial")
+@SuppressWarnings("all")
public class MyLambdaQueryWrapper extends MyAbstractLambdaWrapper>
implements Query, T, SFunction>, MyJoin> {
@@ -96,7 +96,12 @@ public class MyLambdaQueryWrapper extends MyAbstractLambdaWrapper select(SFunction... columns) {
- if (ArrayUtils.isNotEmpty(columns)) {
+ return select(true, columns);
+ }
+
+ @SafeVarargs
+ public final MyLambdaQueryWrapper select(boolean condition, SFunction... columns) {
+ if (condition && ArrayUtils.isNotEmpty(columns)) {
String s = columnsToString(false, columns);
if (StringUtils.isBlank(sqlSelect.getStringValue())) {
this.sqlSelect.setStringValue(s);
@@ -109,7 +114,12 @@ public class MyLambdaQueryWrapper extends MyAbstractLambdaWrapper select(String... columns) {
- if (ArrayUtils.isNotEmpty(columns)) {
+ return select(true, columns);
+ }
+
+ @SafeVarargs
+ public final MyLambdaQueryWrapper select(boolean condition, String... columns) {
+ if (condition && ArrayUtils.isNotEmpty(columns)) {
String s = String.join(StringPool.COMMA, columns);
if (StringUtils.isBlank(sqlSelect.getStringValue())) {
this.sqlSelect.setStringValue(s);
@@ -133,35 +143,47 @@ public class MyLambdaQueryWrapper extends MyAbstractLambdaWrapper select(Class entityClass, Predicate predicate) {
- if (entityClass == null) {
- entityClass = getEntityClass();
- } else {
- setEntityClass(entityClass);
- }
- Assert.notNull(entityClass, "entityClass can not be null");
- String s = TableInfoHelper.getTableInfo(entityClass).chooseSelect(predicate);
- List list = Arrays.stream(s.split(StringPool.COMMA)).map(i -> Constant.TABLE_ALIAS + StringPool.DOT + i).collect(Collectors.toList());
- String join = String.join(StringPool.COMMA, list);
- if (StringUtils.isBlank(sqlSelect.getStringValue())) {
- this.sqlSelect.setStringValue(join);
- } else {
- this.sqlSelect.setStringValue(this.getSqlSelect() + StringPool.COMMA + join);
+ return select(true, entityClass, predicate);
+ }
+
+ public MyLambdaQueryWrapper select(boolean condition, Class entityClass, Predicate predicate) {
+ if (condition) {
+ if (entityClass == null) {
+ entityClass = getEntityClass();
+ } else {
+ setEntityClass(entityClass);
+ }
+ Assert.notNull(entityClass, "entityClass can not be null");
+ String s = TableInfoHelper.getTableInfo(entityClass).chooseSelect(predicate);
+ List list = Arrays.stream(s.split(StringPool.COMMA)).map(i -> Constant.TABLE_ALIAS + StringPool.DOT + i).collect(Collectors.toList());
+ String join = String.join(StringPool.COMMA, list);
+ if (StringUtils.isBlank(sqlSelect.getStringValue())) {
+ this.sqlSelect.setStringValue(join);
+ } else {
+ this.sqlSelect.setStringValue(this.getSqlSelect() + StringPool.COMMA + join);
+ }
}
return typedThis;
}
public final MyLambdaQueryWrapper selectAll(Class clazz) {
- TableInfo info = TableInfoHelper.getTableInfo(clazz);
- List list = new ArrayList<>();
- if (info.havePK()) {
- list.add(Constant.TABLE_ALIAS + StringPool.DOT + info.getKeyColumn());
- }
- list.addAll(info.getFieldList().stream().map(i -> Constant.TABLE_ALIAS + StringPool.DOT + i.getColumn()).collect(Collectors.toList()));
- String join = String.join(StringPool.COMMA, list);
- if (StringUtils.isBlank(sqlSelect.getStringValue())) {
- this.sqlSelect.setStringValue(join);
- } else {
- this.sqlSelect.setStringValue(this.getSqlSelect() + StringPool.COMMA + join);
+ return selectAll(true, clazz);
+ }
+
+ public final MyLambdaQueryWrapper selectAll(boolean condition, Class clazz) {
+ if (condition) {
+ TableInfo info = TableInfoHelper.getTableInfo(clazz);
+ List list = new ArrayList<>();
+ if (info.havePK()) {
+ list.add(Constant.TABLE_ALIAS + StringPool.DOT + info.getKeyColumn());
+ }
+ list.addAll(info.getFieldList().stream().map(i -> Constant.TABLE_ALIAS + StringPool.DOT + i.getColumn()).collect(Collectors.toList()));
+ String join = String.join(StringPool.COMMA, list);
+ if (StringUtils.isBlank(sqlSelect.getStringValue())) {
+ this.sqlSelect.setStringValue(join);
+ } else {
+ this.sqlSelect.setStringValue(this.getSqlSelect() + StringPool.COMMA + join);
+ }
}
return typedThis;
}
diff --git a/src/main/java/com/github/yulichang/query/MyQueryWrapper.java b/src/main/java/com/github/yulichang/query/MyQueryWrapper.java
index 7b357bc..d9953ab 100644
--- a/src/main/java/com/github/yulichang/query/MyQueryWrapper.java
+++ b/src/main/java/com/github/yulichang/query/MyQueryWrapper.java
@@ -80,32 +80,50 @@ public class MyQueryWrapper extends AbstractWrapper select(String... columns) {
- if (ArrayUtils.isNotEmpty(columns)) {
- this.sqlSelect.setStringValue(String.join(StringPool.COMMA, columns));
+ return select(true, columns);
+ }
+
+ public MyQueryWrapper select(boolean condition, String... columns) {
+ if (condition) {
+ if (ArrayUtils.isNotEmpty(columns)) {
+ this.sqlSelect.setStringValue(String.join(StringPool.COMMA, columns));
+ }
}
return typedThis;
}
@Override
public MyQueryWrapper select(Class entityClass, Predicate predicate) {
- super.setEntityClass(entityClass);
- this.sqlSelect.setStringValue(TableInfoHelper.getTableInfo(getEntityClass()).chooseSelect(predicate));
+ return select(true, entityClass, predicate);
+ }
+
+ public MyQueryWrapper select(boolean condition, Class entityClass, Predicate predicate) {
+ if (condition) {
+ super.setEntityClass(entityClass);
+ this.sqlSelect.setStringValue(TableInfoHelper.getTableInfo(getEntityClass()).chooseSelect(predicate));
+ }
return typedThis;
}
public final MyQueryWrapper selectAll(Class clazz) {
- TableInfo info = TableInfoHelper.getTableInfo(clazz);
- List list = new ArrayList<>();
- if (info.havePK()) {
- list.add(Constant.TABLE_ALIAS + StringPool.DOT + info.getKeyColumn());
- }
- list.addAll(info.getFieldList().stream().map(i -> Constant.TABLE_ALIAS + StringPool.DOT + i.getColumn()).collect(Collectors.toList()));
- String join = String.join(StringPool.COMMA, list);
- if (StringUtils.isBlank(sqlSelect.getStringValue())) {
- this.sqlSelect.setStringValue(join);
- } else {
- this.sqlSelect.setStringValue(this.getSqlSelect() + StringPool.COMMA + join);
+ return selectAll(true, clazz);
+ }
+
+ public final MyQueryWrapper selectAll(boolean condition, Class clazz) {
+ if (condition) {
+ TableInfo info = TableInfoHelper.getTableInfo(clazz);
+ List list = new ArrayList<>();
+ if (info.havePK()) {
+ list.add(Constant.TABLE_ALIAS + StringPool.DOT + info.getKeyColumn());
+ }
+ list.addAll(info.getFieldList().stream().map(i -> Constant.TABLE_ALIAS + StringPool.DOT + i.getColumn()).collect(Collectors.toList()));
+ String join = String.join(StringPool.COMMA, list);
+ if (StringUtils.isBlank(sqlSelect.getStringValue())) {
+ this.sqlSelect.setStringValue(join);
+ } else {
+ this.sqlSelect.setStringValue(this.getSqlSelect() + StringPool.COMMA + join);
+ }
}
return typedThis;
}
diff --git a/src/main/java/com/github/yulichang/wrapper/MyJoinLambdaQueryWrapper.java b/src/main/java/com/github/yulichang/wrapper/MyJoinLambdaQueryWrapper.java
index 6325410..40517c3 100644
--- a/src/main/java/com/github/yulichang/wrapper/MyJoinLambdaQueryWrapper.java
+++ b/src/main/java/com/github/yulichang/wrapper/MyJoinLambdaQueryWrapper.java
@@ -15,7 +15,9 @@ import com.github.yulichang.toolkit.MyLambdaUtils;
import com.github.yulichang.wrapper.interfaces.MyLambdaJoin;
import com.github.yulichang.wrapper.interfaces.MySFunctionQuery;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Map;
import java.util.concurrent.atomic.AtomicInteger;
import java.util.function.Predicate;
import java.util.stream.Collectors;
@@ -23,7 +25,7 @@ import java.util.stream.Collectors;
/**
* copy {@link com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper}
*/
-@SuppressWarnings("serial")
+@SuppressWarnings("all")
public class MyJoinLambdaQueryWrapper extends MyAbstractLambdaWrapper>
implements MySFunctionQuery>, MyLambdaJoin> {
@@ -99,7 +101,12 @@ public class MyJoinLambdaQueryWrapper extends MyAbstractLambdaWrapper MyJoinLambdaQueryWrapper select(SFunction... columns) {
- if (ArrayUtils.isNotEmpty(columns)) {
+ return select(true, columns);
+ }
+
+ @SafeVarargs
+ public final MyJoinLambdaQueryWrapper select(boolean condition, SFunction... columns) {
+ if (condition && ArrayUtils.isNotEmpty(columns)) {
for (SFunction s : columns) {
selectColumns.add(new SelectColumn(MyLambdaUtils.getEntityClass(s), MyLambdaUtils.getColumn(s), null));
}
@@ -109,30 +116,49 @@ public class MyJoinLambdaQueryWrapper extends MyAbstractLambdaWrapper MyJoinLambdaQueryWrapper select(Class entityClass, Predicate predicate) {
- TableInfo info = TableInfoHelper.getTableInfo(entityClass);
- Assert.notNull(info, "table can not be find");
- info.getFieldList().stream().filter(predicate).collect(Collectors.toList()).forEach(
- i -> selectColumns.add(new SelectColumn(entityClass, i.getColumn(), null)));
+ return select(true, entityClass, predicate);
+ }
+
+ public MyJoinLambdaQueryWrapper select(boolean condition, Class entityClass, Predicate predicate) {
+ if (condition) {
+ TableInfo info = TableInfoHelper.getTableInfo(entityClass);
+ Assert.notNull(info, "table can not be find");
+ info.getFieldList().stream().filter(predicate).collect(Collectors.toList()).forEach(
+ i -> selectColumns.add(new SelectColumn(entityClass, i.getColumn(), null)));
+ }
return typedThis;
}
public final MyJoinLambdaQueryWrapper selectAs(SFunction columns, SFunction alias) {
- selectColumns.add(new SelectColumn(MyLambdaUtils.getEntityClass(columns), MyLambdaUtils.getColumn(columns), MyLambdaUtils.getName(alias)));
+ return selectAs(true, columns, alias);
+ }
+
+ public final MyJoinLambdaQueryWrapper selectAs(boolean condition, SFunction columns, SFunction alias) {
+ if (condition) {
+ selectColumns.add(new SelectColumn(MyLambdaUtils.getEntityClass(columns), MyLambdaUtils.getColumn(columns), MyLambdaUtils.getName(alias)));
+ }
return typedThis;
}
public final MyJoinLambdaQueryWrapper selectAll(Class> clazz) {
- TableInfo info = TableInfoHelper.getTableInfo(clazz);
- Assert.notNull(info, "table can not be find -> %s", clazz);
- if (info.havePK()) {
- selectColumns.add(new SelectColumn(clazz, info.getKeyColumn(), null));
+ return selectAll(clazz);
+ }
+
+ public final MyJoinLambdaQueryWrapper selectAll(boolean condition, Class> clazz) {
+ if (condition) {
+ TableInfo info = TableInfoHelper.getTableInfo(clazz);
+ Assert.notNull(info, "table can not be find -> %s", clazz);
+ if (info.havePK()) {
+ selectColumns.add(new SelectColumn(clazz, info.getKeyColumn(), null));
+ }
+ info.getFieldList().forEach(c ->
+ selectColumns.add(new SelectColumn(clazz, c.getColumn(), null)));
}
- info.getFieldList().forEach(c ->
- selectColumns.add(new SelectColumn(clazz, c.getColumn(), null)));
return typedThis;
}
+
@Override
public String getSqlSelect() {
if (StringUtils.isBlank(sqlSelect.getStringValue())) {