24282 1 ano atrás
pai
commit
31c6cf96c8

+ 31 - 31
my-test/src/main/java/org/example/join/domain/AbstractQueryColumn.java

@@ -1,5 +1,6 @@
 package org.example.join.domain;
 
+import cn.hutool.core.collection.ListUtil;
 import cn.hutool.core.util.ObjectUtil;
 import cn.hutool.core.util.StrUtil;
 import com.baomidou.mybatisplus.core.toolkit.LambdaUtils;
@@ -10,7 +11,6 @@ import org.apache.ibatis.reflection.property.PropertyNamer;
 import org.example.join.util.SqlConstant;
 
 import java.util.ArrayList;
-import java.util.Arrays;
 import java.util.Collection;
 import java.util.List;
 import java.util.StringJoiner;
@@ -108,6 +108,36 @@ public abstract class AbstractQueryColumn implements IFormat, IQueryColumn {
         return new QueryCondition(this, SqlConstant.LE, object);
     }
 
+    public QueryCondition like(Object object) {
+        return new QueryCondition(this, SqlConstant.LIKE, object);
+    }
+
+    public QueryCondition notLike(Object object) {
+        return new QueryCondition(this, SqlConstant.NOT_LIKE, object);
+    }
+
+    public QueryCondition in(Collection<?> coll) {
+        return new QueryCondition(this, SqlConstant.IN, coll);
+    }
+
+    public QueryCondition in(Object... obj) {
+        if (ObjectUtil.isEmpty(obj)) {
+            return new QueryCondition(this, SqlConstant.IN, null);
+        }
+        return new QueryCondition(this, SqlConstant.IN, ListUtil.toList(obj));
+    }
+
+    public QueryCondition notIn(Collection<?> coll) {
+        return new QueryCondition(this, SqlConstant.NOT_IN, coll);
+    }
+
+    public QueryCondition notIn(Object... obj) {
+        if (ObjectUtil.isEmpty(obj)) {
+            return new QueryCondition(this, SqlConstant.NOT_IN, null);
+        }
+        return new QueryCondition(this, SqlConstant.NOT_IN, ListUtil.toList(obj));
+    }
+
     public QueryCondition between(Object object1, Object object2) {
         if (ObjectUtil.isAllNotEmpty(object1, object2)) {
             return new QueryCondition(this, SqlConstant.BETWEEN, new Object[]{object1, object2});
@@ -122,14 +152,6 @@ public abstract class AbstractQueryColumn implements IFormat, IQueryColumn {
         return new QueryCondition(this, SqlConstant.NOT_BETWEEN, null);
     }
 
-    public QueryCondition like(Object object) {
-        return new QueryCondition(this, SqlConstant.LIKE, object);
-    }
-
-    public QueryCondition notLike(Object object) {
-        return new QueryCondition(this, SqlConstant.NOT_LIKE, object);
-    }
-
     public QueryCondition likeLeft(Object object) {
         return new QueryCondition(this, SqlConstant.LIKE_LEFT, object);
     }
@@ -154,28 +176,6 @@ public abstract class AbstractQueryColumn implements IFormat, IQueryColumn {
         return new QueryCondition(this, SqlConstant.IS_NOT_NULL, SqlConstant.IS_NULL);
     }
 
-    public QueryCondition in(Collection<?> coll) {
-        return new QueryCondition(this, SqlConstant.IN, coll);
-    }
-
-    public QueryCondition in(Object... obj) {
-        if (ObjectUtil.isEmpty(obj)) {
-            return new QueryCondition(this, SqlConstant.IN, null);
-        }
-        return new QueryCondition(this, SqlConstant.IN, Arrays.asList(obj));
-    }
-
-    public QueryCondition notIn(Collection<?> coll) {
-        return new QueryCondition(this, SqlConstant.NOT_IN, coll);
-    }
-
-    public QueryCondition notIn(Object... obj) {
-        if (ObjectUtil.isEmpty(obj)) {
-            return new QueryCondition(this, SqlConstant.NOT_IN, null);
-        }
-        return new QueryCondition(this, SqlConstant.NOT_IN, Arrays.asList(obj));
-    }
-
     private AbstractQueryColumn compute(String symbol, Object obj) {
         AbstractQueryColumn queryColumn = copy();
         queryColumn.queryColumnComputeList.addAll(queryColumnComputeList);

+ 2 - 2
my-test/src/main/java/org/example/join/domain/QueryColumnFunction.java

@@ -1,9 +1,9 @@
 package org.example.join.domain;
 
+import cn.hutool.core.collection.ListUtil;
 import com.baomidou.mybatisplus.core.toolkit.StringPool;
 import org.example.join.util.SqlUtil;
 
-import java.util.Arrays;
 import java.util.List;
 import java.util.StringJoiner;
 
@@ -21,7 +21,7 @@ public class QueryColumnFunction extends AbstractQueryColumn implements IFormat,
 
     public QueryColumnFunction(String fnName, Object... columns) {
         this.fnName = fnName;
-        this.columns = Arrays.asList(columns);
+        this.columns = ListUtil.toList(columns);
     }
 
     @Override

+ 4 - 4
my-test/src/main/java/org/example/join/sql/Join.java

@@ -21,15 +21,15 @@ public class Join<R> {
             throw new IllegalArgumentException("on不能为空");
         }
 
-        List<QueryCondition> queryConditionList = Arrays.stream(queryConditions).filter(Objects::nonNull).toList();
+        List<QueryCondition> list = Arrays.stream(queryConditions).filter(Objects::nonNull).toList();
 
-        if (queryConditionList.isEmpty()) {
+        if (list.isEmpty()) {
             throw new IllegalArgumentException("on不能为空");
         }
 
-        this.queryConditionList.addAll(queryConditionList);
+        queryConditionList.addAll(list);
 
-        return this.from;
+        return from;
     }
 
 }