From 9475dabae0af35b5970c9d158547bcb121f20b19 Mon Sep 17 00:00:00 2001 From: admin <570810310@qq.com> Date: Fri, 29 Jan 2021 14:03:47 +0800 Subject: [PATCH] =?UTF-8?q?=E7=A7=BB=E9=99=A4MyBaseEntity,=20=E5=AE=9E?= =?UTF-8?q?=E4=BD=93=E7=B1=BB=E4=B8=8D=E5=86=8D=E5=BC=BA=E5=88=B6=E7=BB=A7?= =?UTF-8?q?=E6=89=BFMyBaseEntity?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../github/mybatisplus/base/MyBaseEntity.java | 10 - .../mybatisplus/base/MyBaseService.java | 2 +- .../mybatisplus/base/MyBaseServiceImpl.java | 2 +- .../github/mybatisplus/func/MySFunction.java | 3 +- .../mybatisplus/func/MyWrapperFunc.java | 3 +- .../mybatisplus/toolkit/MyLambdaUtils.java | 5 +- .../wrapper/MyJoinLambdaQueryWrapper.java | 19 +- .../wrapper/MyLambdaQueryWrapper.java | 112 +++++----- .../wrapper/interfaces/MyCompare.java | 193 +++++++++--------- .../wrapper/interfaces/MyFunc.java | 107 +++++----- .../wrapper/interfaces/MyJoin.java | 81 ++++---- 11 files changed, 264 insertions(+), 273 deletions(-) delete mode 100644 src/main/java/com/github/mybatisplus/base/MyBaseEntity.java diff --git a/src/main/java/com/github/mybatisplus/base/MyBaseEntity.java b/src/main/java/com/github/mybatisplus/base/MyBaseEntity.java deleted file mode 100644 index 10c1148..0000000 --- a/src/main/java/com/github/mybatisplus/base/MyBaseEntity.java +++ /dev/null @@ -1,10 +0,0 @@ -package com.github.mybatisplus.base; - -/** - * 所有数据库对应的entity类的父类 - * 可以添加 id deleted create_by 等通用字段 - * - * @author yulichang - */ -public class MyBaseEntity { -} diff --git a/src/main/java/com/github/mybatisplus/base/MyBaseService.java b/src/main/java/com/github/mybatisplus/base/MyBaseService.java index 8134666..d2e6227 100644 --- a/src/main/java/com/github/mybatisplus/base/MyBaseService.java +++ b/src/main/java/com/github/mybatisplus/base/MyBaseService.java @@ -12,7 +12,7 @@ import java.util.Map; * @author yulichang * @see IService */ -public interface MyBaseService extends IService { +public interface MyBaseService extends IService { /** * ignore diff --git a/src/main/java/com/github/mybatisplus/base/MyBaseServiceImpl.java b/src/main/java/com/github/mybatisplus/base/MyBaseServiceImpl.java index cbb2738..1a67dd1 100644 --- a/src/main/java/com/github/mybatisplus/base/MyBaseServiceImpl.java +++ b/src/main/java/com/github/mybatisplus/base/MyBaseServiceImpl.java @@ -11,7 +11,7 @@ import java.util.Map; * @author yulichang * @see ServiceImpl */ -public class MyBaseServiceImpl, T extends MyBaseEntity> extends ServiceImpl implements MyBaseService { +public class MyBaseServiceImpl, T> extends ServiceImpl implements MyBaseService { @Override diff --git a/src/main/java/com/github/mybatisplus/func/MySFunction.java b/src/main/java/com/github/mybatisplus/func/MySFunction.java index 70021ee..ed9ef6d 100644 --- a/src/main/java/com/github/mybatisplus/func/MySFunction.java +++ b/src/main/java/com/github/mybatisplus/func/MySFunction.java @@ -2,7 +2,6 @@ package com.github.mybatisplus.func; import com.baomidou.mybatisplus.core.toolkit.support.SFunction; -import com.github.mybatisplus.base.MyBaseEntity; /** * 支持别名的 SFunction @@ -11,6 +10,6 @@ import com.github.mybatisplus.base.MyBaseEntity; * @see SFunction */ @FunctionalInterface -public interface MySFunction extends SFunction { +public interface MySFunction extends SFunction { } diff --git a/src/main/java/com/github/mybatisplus/func/MyWrapperFunc.java b/src/main/java/com/github/mybatisplus/func/MyWrapperFunc.java index b9984bb..7af0649 100644 --- a/src/main/java/com/github/mybatisplus/func/MyWrapperFunc.java +++ b/src/main/java/com/github/mybatisplus/func/MyWrapperFunc.java @@ -1,13 +1,12 @@ package com.github.mybatisplus.func; import com.github.mybatisplus.wrapper.MyLambdaQueryWrapper; -import com.github.mybatisplus.base.MyBaseEntity; /** * @author yulichang */ @FunctionalInterface -public interface MyWrapperFunc { +public interface MyWrapperFunc { MyLambdaQueryWrapper apply(MyLambdaQueryWrapper wrapper); } diff --git a/src/main/java/com/github/mybatisplus/toolkit/MyLambdaUtils.java b/src/main/java/com/github/mybatisplus/toolkit/MyLambdaUtils.java index 4802780..f963ee9 100644 --- a/src/main/java/com/github/mybatisplus/toolkit/MyLambdaUtils.java +++ b/src/main/java/com/github/mybatisplus/toolkit/MyLambdaUtils.java @@ -3,7 +3,6 @@ package com.github.mybatisplus.toolkit; import com.baomidou.mybatisplus.core.toolkit.LambdaUtils; import com.baomidou.mybatisplus.core.toolkit.StringUtils; import com.baomidou.mybatisplus.core.toolkit.support.SFunction; -import com.github.mybatisplus.base.MyBaseEntity; import com.github.mybatisplus.func.MySFunction; import org.apache.ibatis.reflection.property.PropertyNamer; @@ -18,11 +17,11 @@ public class MyLambdaUtils { return PropertyNamer.methodToProperty(LambdaUtils.resolve(fn).getImplMethodName()); } - public static String getColumn(MySFunction fn) { + public static String getColumn(MySFunction fn) { return StringUtils.camelToUnderline(getName(fn)); } - public static Class getEntityClass(MySFunction fn) { + public static Class getEntityClass(MySFunction fn) { return (Class) LambdaUtils.resolve(fn).getImplClass(); } } diff --git a/src/main/java/com/github/mybatisplus/wrapper/MyJoinLambdaQueryWrapper.java b/src/main/java/com/github/mybatisplus/wrapper/MyJoinLambdaQueryWrapper.java index 504080e..0761dc5 100644 --- a/src/main/java/com/github/mybatisplus/wrapper/MyJoinLambdaQueryWrapper.java +++ b/src/main/java/com/github/mybatisplus/wrapper/MyJoinLambdaQueryWrapper.java @@ -7,9 +7,9 @@ import com.baomidou.mybatisplus.core.metadata.TableFieldInfo; import com.baomidou.mybatisplus.core.metadata.TableInfo; import com.baomidou.mybatisplus.core.metadata.TableInfoHelper; import com.baomidou.mybatisplus.core.toolkit.ArrayUtils; +import com.baomidou.mybatisplus.core.toolkit.Assert; import com.baomidou.mybatisplus.core.toolkit.StringUtils; import com.baomidou.mybatisplus.core.toolkit.support.SFunction; -import com.github.mybatisplus.base.MyBaseEntity; import com.github.mybatisplus.toolkit.Constant; import com.github.mybatisplus.toolkit.MyLambdaUtils; import com.github.mybatisplus.wrapper.interfaces.MyJoin; @@ -30,7 +30,7 @@ import java.util.stream.Collectors; * @see com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper * @since 2021/01/19 */ -public class MyJoinLambdaQueryWrapper extends MyAbstractLambdaWrapper> +public class MyJoinLambdaQueryWrapper extends MyAbstractLambdaWrapper> implements Query, T, SFunction>, MyJoin, T> { protected SharedString sqlSelect = new SharedString(); @@ -108,6 +108,7 @@ public class MyJoinLambdaQueryWrapper extends MyAbstract public MyJoinLambdaQueryWrapper selectAll(Class clazz) { setEntityClass(clazz); TableInfo info = TableInfoHelper.getTableInfo(getEntityClass()); + Assert.notNull(info, "can not find table to entity %s", clazz); info.getFieldList().forEach(s -> selectColumnList.add(new SelectColumn(this.rUid, s.getColumn(), null, null))); if (StringUtils.isNotBlank(info.getKeyColumn())) { @@ -158,6 +159,7 @@ public class MyJoinLambdaQueryWrapper extends MyAbstract public MyJoinLambdaQueryWrapper select(Class entityClass, Predicate predicate) { this.setEntityClass(entityClass); TableInfo info = TableInfoHelper.getTableInfo(getEntityClass()); + Assert.notNull(info, "can not find table to entity %s", entityClass); info.getFieldList().stream().filter(predicate).forEach(s -> selectColumnList.add(new SelectColumn(this.rUid, s.getColumn(), null, null))); return typedThis; @@ -207,7 +209,7 @@ public class MyJoinLambdaQueryWrapper extends MyAbstract * @param rightWrapper 子表的wrapper */ @Override - public MyJoinLambdaQueryWrapper leftJoin(boolean condition, String alias, MySFunction leftCondition, MySFunction rightCondition, Function, MyJoinLambdaQueryWrapper> rightWrapper) { + public MyJoinLambdaQueryWrapper leftJoin(boolean condition, String alias, MySFunction leftCondition, MySFunction rightCondition, Function, MyJoinLambdaQueryWrapper> rightWrapper) { return join(condition, alias, Constant.LEFT_JOIN, leftCondition, rightCondition, rightWrapper); } @@ -215,7 +217,7 @@ public class MyJoinLambdaQueryWrapper extends MyAbstract * 右连接查询(参考左连接) */ @Override - public MyJoinLambdaQueryWrapper rightJoin(boolean condition, String alias, MySFunction leftCondition, MySFunction rightCondition, Function, MyJoinLambdaQueryWrapper> rightWrapper) { + public MyJoinLambdaQueryWrapper rightJoin(boolean condition, String alias, MySFunction leftCondition, MySFunction rightCondition, Function, MyJoinLambdaQueryWrapper> rightWrapper) { return join(condition, alias, Constant.RIGHT_JOIN, leftCondition, rightCondition, rightWrapper); } @@ -223,15 +225,18 @@ public class MyJoinLambdaQueryWrapper extends MyAbstract * 内连接查询(参考左连接) */ @Override - public MyJoinLambdaQueryWrapper innerJoin(boolean condition, String alias, MySFunction leftCondition, MySFunction rightCondition, Function, MyJoinLambdaQueryWrapper> rightWrapper) { + public MyJoinLambdaQueryWrapper innerJoin(boolean condition, String alias, MySFunction leftCondition, MySFunction rightCondition, Function, MyJoinLambdaQueryWrapper> rightWrapper) { return join(condition, alias, Constant.INNER_JOIN, leftCondition, rightCondition, rightWrapper); } - private MyJoinLambdaQueryWrapper join(boolean condition, String alias, String keyWord, MySFunction leftCondition, MySFunction rightCondition, Function, MyJoinLambdaQueryWrapper> rightWrapper) { + private MyJoinLambdaQueryWrapper join(boolean condition, String alias, String keyWord, MySFunction leftCondition, MySFunction rightCondition, Function, MyJoinLambdaQueryWrapper> rightWrapper) { if (condition) { setEntityClass(MyLambdaUtils.getEntityClass(leftCondition)); int childrenId = rUid + 1; - classList.add(new SubTable(alias, keyWord, rUid, MyLambdaUtils.getColumn(leftCondition), childrenId, MyLambdaUtils.getColumn(rightCondition), TableInfoHelper.getTableInfo(MyLambdaUtils.getEntityClass(rightCondition)).getTableName())); + Class clazz = MyLambdaUtils.getEntityClass(rightCondition); + TableInfo info = TableInfoHelper.getTableInfo(clazz); + Assert.notNull(info, "can not find table to entity %s", clazz); + classList.add(new SubTable(alias, keyWord, rUid, MyLambdaUtils.getColumn(leftCondition), childrenId, MyLambdaUtils.getColumn(rightCondition), info.getTableName())); MyJoinLambdaQueryWrapper apply = rightWrapper.apply(new MyJoinLambdaQueryWrapper<>(childrenId)); classList.addAll(apply.classList); this.selectColumnList.addAll(apply.selectColumnList); diff --git a/src/main/java/com/github/mybatisplus/wrapper/MyLambdaQueryWrapper.java b/src/main/java/com/github/mybatisplus/wrapper/MyLambdaQueryWrapper.java index 921271f..87dbb97 100644 --- a/src/main/java/com/github/mybatisplus/wrapper/MyLambdaQueryWrapper.java +++ b/src/main/java/com/github/mybatisplus/wrapper/MyLambdaQueryWrapper.java @@ -7,17 +7,14 @@ import com.baomidou.mybatisplus.core.enums.SqlKeyword; import com.baomidou.mybatisplus.core.enums.SqlLike; import com.baomidou.mybatisplus.core.exceptions.MybatisPlusException; import com.baomidou.mybatisplus.core.metadata.TableFieldInfo; +import com.baomidou.mybatisplus.core.metadata.TableInfo; import com.baomidou.mybatisplus.core.metadata.TableInfoHelper; -import com.baomidou.mybatisplus.core.toolkit.ArrayUtils; -import com.baomidou.mybatisplus.core.toolkit.CollectionUtils; -import com.baomidou.mybatisplus.core.toolkit.StringPool; -import com.baomidou.mybatisplus.core.toolkit.StringUtils; +import com.baomidou.mybatisplus.core.toolkit.*; import com.baomidou.mybatisplus.core.toolkit.sql.SqlUtils; import com.baomidou.mybatisplus.core.toolkit.support.SFunction; import com.github.mybatisplus.wrapper.interfaces.MyCompare; import com.github.mybatisplus.wrapper.interfaces.MyFunc; import com.github.mybatisplus.wrapper.interfaces.MyNested; -import com.github.mybatisplus.base.MyBaseEntity; import com.github.mybatisplus.func.MySFunction; import com.github.mybatisplus.toolkit.Constant; import com.github.mybatisplus.toolkit.MyLambdaUtils; @@ -43,7 +40,7 @@ import static java.util.stream.Collectors.joining; * @see com.baomidou.mybatisplus.core.conditions.interfaces.Func * @since 2021/01/19 */ -public class MyLambdaQueryWrapper extends MyJoinLambdaQueryWrapper +public class MyLambdaQueryWrapper extends MyJoinLambdaQueryWrapper implements MyCompare>, MyNested, MyLambdaQueryWrapper>, MyFunc> { @@ -94,68 +91,71 @@ public class MyLambdaQueryWrapper extends MyJoinLambdaQu @Override - public MyLambdaQueryWrapper leftJoin(boolean condition, String alias, MySFunction leftCondition, MySFunction rightCondition, Function, MyJoinLambdaQueryWrapper> rightWrapper) { + public MyLambdaQueryWrapper leftJoin(boolean condition, String alias, MySFunction leftCondition, MySFunction rightCondition, Function, MyJoinLambdaQueryWrapper> rightWrapper) { return join(condition, alias, Constant.LEFT_JOIN, leftCondition, rightCondition, rightWrapper); } @Override - public MyLambdaQueryWrapper leftJoin(MySFunction leftCondition, MySFunction rightCondition, Function, MyJoinLambdaQueryWrapper> rightWrapper) { + public MyLambdaQueryWrapper leftJoin(MySFunction leftCondition, MySFunction rightCondition, Function, MyJoinLambdaQueryWrapper> rightWrapper) { return this.leftJoin(true, null, leftCondition, rightCondition, rightWrapper); } @Override - public MyLambdaQueryWrapper leftJoin(String alias, MySFunction leftCondition, MySFunction rightCondition, Function, MyJoinLambdaQueryWrapper> rightWrapper) { + public MyLambdaQueryWrapper leftJoin(String alias, MySFunction leftCondition, MySFunction rightCondition, Function, MyJoinLambdaQueryWrapper> rightWrapper) { return this.leftJoin(true, alias, leftCondition, rightCondition, rightWrapper); } @Override - public MyLambdaQueryWrapper leftJoin(boolean condition, MySFunction leftCondition, MySFunction rightCondition, Function, MyJoinLambdaQueryWrapper> rightWrapper) { + public MyLambdaQueryWrapper leftJoin(boolean condition, MySFunction leftCondition, MySFunction rightCondition, Function, MyJoinLambdaQueryWrapper> rightWrapper) { return this.leftJoin(condition, null, leftCondition, rightCondition, rightWrapper); } - public MyLambdaQueryWrapper rightJoin(boolean condition, String alias, MySFunction leftCondition, MySFunction rightCondition, Function, MyJoinLambdaQueryWrapper> rightWrapper) { + public MyLambdaQueryWrapper rightJoin(boolean condition, String alias, MySFunction leftCondition, MySFunction rightCondition, Function, MyJoinLambdaQueryWrapper> rightWrapper) { return join(condition, alias, Constant.RIGHT_JOIN, leftCondition, rightCondition, rightWrapper); } @Override - public MyLambdaQueryWrapper rightJoin(MySFunction leftCondition, MySFunction rightCondition, Function, MyJoinLambdaQueryWrapper> rightWrapper) { + public MyLambdaQueryWrapper rightJoin(MySFunction leftCondition, MySFunction rightCondition, Function, MyJoinLambdaQueryWrapper> rightWrapper) { return this.rightJoin(true, null, leftCondition, rightCondition, rightWrapper); } @Override - public MyLambdaQueryWrapper rightJoin(String alias, MySFunction leftCondition, MySFunction rightCondition, Function, MyJoinLambdaQueryWrapper> rightWrapper) { + public MyLambdaQueryWrapper rightJoin(String alias, MySFunction leftCondition, MySFunction rightCondition, Function, MyJoinLambdaQueryWrapper> rightWrapper) { return this.rightJoin(true, alias, leftCondition, rightCondition, rightWrapper); } @Override - public MyLambdaQueryWrapper rightJoin(boolean condition, MySFunction leftCondition, MySFunction rightCondition, Function, MyJoinLambdaQueryWrapper> rightWrapper) { + public MyLambdaQueryWrapper rightJoin(boolean condition, MySFunction leftCondition, MySFunction rightCondition, Function, MyJoinLambdaQueryWrapper> rightWrapper) { return this.rightJoin(condition, null, leftCondition, rightCondition, rightWrapper); } - public MyLambdaQueryWrapper innerJoin(boolean condition, String alias, MySFunction leftCondition, MySFunction rightCondition, Function, MyJoinLambdaQueryWrapper> rightWrapper) { + public MyLambdaQueryWrapper innerJoin(boolean condition, String alias, MySFunction leftCondition, MySFunction rightCondition, Function, MyJoinLambdaQueryWrapper> rightWrapper) { return join(condition, alias, Constant.INNER_JOIN, leftCondition, rightCondition, rightWrapper); } @Override - public MyLambdaQueryWrapper innerJoin(MySFunction leftCondition, MySFunction rightCondition, Function, MyJoinLambdaQueryWrapper> rightWrapper) { + public MyLambdaQueryWrapper innerJoin(MySFunction leftCondition, MySFunction rightCondition, Function, MyJoinLambdaQueryWrapper> rightWrapper) { return this.innerJoin(true, null, leftCondition, rightCondition, rightWrapper); } @Override - public MyLambdaQueryWrapper innerJoin(String alias, MySFunction leftCondition, MySFunction rightCondition, Function, MyJoinLambdaQueryWrapper> rightWrapper) { + public MyLambdaQueryWrapper innerJoin(String alias, MySFunction leftCondition, MySFunction rightCondition, Function, MyJoinLambdaQueryWrapper> rightWrapper) { return this.innerJoin(true, alias, leftCondition, rightCondition, rightWrapper); } @Override - public MyLambdaQueryWrapper innerJoin(boolean condition, MySFunction leftCondition, MySFunction rightCondition, Function, MyJoinLambdaQueryWrapper> rightWrapper) { + public MyLambdaQueryWrapper innerJoin(boolean condition, MySFunction leftCondition, MySFunction rightCondition, Function, MyJoinLambdaQueryWrapper> rightWrapper) { return this.innerJoin(condition, null, leftCondition, rightCondition, rightWrapper); } - private MyLambdaQueryWrapper join(boolean condition, String alias, String keyWord, MySFunction leftCondition, MySFunction rightCondition, Function, MyJoinLambdaQueryWrapper> rightWrapper) { + private MyLambdaQueryWrapper join(boolean condition, String alias, String keyWord, MySFunction leftCondition, MySFunction rightCondition, Function, MyJoinLambdaQueryWrapper> rightWrapper) { if (condition) { setEntityClass(MyLambdaUtils.getEntityClass(leftCondition)); - classList.add(new SubTable(alias, keyWord, rUid, MyLambdaUtils.getColumn(leftCondition), classList.size() + 1, MyLambdaUtils.getColumn(rightCondition), TableInfoHelper.getTableInfo(MyLambdaUtils.getEntityClass(rightCondition)).getTableName())); + Class clazz = MyLambdaUtils.getEntityClass(rightCondition); + TableInfo info = TableInfoHelper.getTableInfo(clazz); + Assert.notNull(info, "can not find table to entity %s", clazz); + classList.add(new SubTable(alias, keyWord, rUid, MyLambdaUtils.getColumn(leftCondition), classList.size() + 1, MyLambdaUtils.getColumn(rightCondition), info.getTableName())); MyJoinLambdaQueryWrapper apply = rightWrapper.apply(new MyJoinLambdaQueryWrapper<>(classList.size())); classList.addAll(apply.classList); this.selectColumnList.addAll(apply.selectColumnList); @@ -285,11 +285,13 @@ public class MyLambdaQueryWrapper extends MyJoinLambdaQu /** * 获取表前缀 */ - private String getClassTablePrefix(Class tag) { - if (getEntityClass() == tag) { + private String getClassTablePrefix(Class clazz) { + if (getEntityClass() == clazz) { return Constant.TABLE_ALIAS + rUid; } else { - String tableName = TableInfoHelper.getTableInfo(tag).getTableName(); + TableInfo info = TableInfoHelper.getTableInfo(clazz); + Assert.notNull(info, "can not find table to entity %s", clazz); + String tableName = info.getTableName(); for (SubTable sub : classList) { if (sub.getRightTableName().equals(tableName)) { return Constant.TABLE_ALIAS + sub.getRightUid(); @@ -302,7 +304,7 @@ public class MyLambdaQueryWrapper extends MyJoinLambdaQu /** * 获取column */ - private String getColumn(MySFunction column, String alias) { + private String getColumn(MySFunction column, String alias) { if (alias != null) { if (alias.equals(DEFAULT_ALIAS)) { return Constant.TABLE_ALIAS + rUid + StringPool.DOT + column2String(column, true); @@ -316,100 +318,100 @@ public class MyLambdaQueryWrapper extends MyJoinLambdaQu return getClassTablePrefix(MyLambdaUtils.getEntityClass(column)) + StringPool.DOT + column2String(column, true); } - private String getColumn(String alias, MySFunction... column) { + private String getColumn(String alias, MySFunction... column) { return Arrays.stream(column).map(i -> getColumn(i, alias)).collect(joining(StringPool.COMMA)); } @Override - public MyLambdaQueryWrapper eq(boolean condition, String alias, MySFunction column, Object val) { + public MyLambdaQueryWrapper eq(boolean condition, String alias, MySFunction column, Object val) { return doIt(condition, () -> getColumn(column, alias), EQ, () -> formatSql("{0}", val)); } @Override - public MyLambdaQueryWrapper eq(boolean condition, String alias, MySFunction column, String as, MySFunction val) { + public MyLambdaQueryWrapper eq(boolean condition, String alias, MySFunction column, String as, MySFunction val) { return doIt(condition, () -> getColumn(column, alias), EQ, () -> getColumn(val, as)); } @Override - public MyLambdaQueryWrapper ne(boolean condition, String alias, MySFunction column, Object val) { + public MyLambdaQueryWrapper ne(boolean condition, String alias, MySFunction column, Object val) { return doIt(condition, () -> getColumn(column, alias), NE, () -> formatSql("{0}", val)); } @Override - public MyLambdaQueryWrapper ne(boolean condition, String alias, MySFunction column, String as, MySFunction val) { + public MyLambdaQueryWrapper ne(boolean condition, String alias, MySFunction column, String as, MySFunction val) { return doIt(condition, () -> getColumn(column, alias), NE, () -> getColumn(val, as)); } @Override - public MyLambdaQueryWrapper gt(boolean condition, String alias, MySFunction column, Object val) { + public MyLambdaQueryWrapper gt(boolean condition, String alias, MySFunction column, Object val) { return doIt(condition, () -> getColumn(column, alias), GT, () -> formatSql("{0}", val)); } @Override - public MyLambdaQueryWrapper gt(boolean condition, String alias, MySFunction column, String as, MySFunction val) { + public MyLambdaQueryWrapper gt(boolean condition, String alias, MySFunction column, String as, MySFunction val) { return doIt(condition, () -> getColumn(column, alias), GT, () -> getColumn(val, as)); } @Override - public MyLambdaQueryWrapper ge(boolean condition, String alias, MySFunction column, Object val) { + public MyLambdaQueryWrapper ge(boolean condition, String alias, MySFunction column, Object val) { return doIt(condition, () -> getColumn(column, alias), GE, () -> formatSql("{0}", val)); } @Override - public MyLambdaQueryWrapper ge(boolean condition, String alias, MySFunction column, String as, MySFunction val) { + public MyLambdaQueryWrapper ge(boolean condition, String alias, MySFunction column, String as, MySFunction val) { return doIt(condition, () -> getColumn(column, alias), GE, () -> getColumn(val, as)); } @Override - public MyLambdaQueryWrapper lt(boolean condition, String alias, MySFunction column, Object val) { + public MyLambdaQueryWrapper lt(boolean condition, String alias, MySFunction column, Object val) { return doIt(condition, () -> getColumn(column, alias), LT, () -> formatSql("{0}", val)); } @Override - public MyLambdaQueryWrapper lt(boolean condition, String alias, MySFunction column, String as, MySFunction val) { + public MyLambdaQueryWrapper lt(boolean condition, String alias, MySFunction column, String as, MySFunction val) { return doIt(condition, () -> getColumn(column, alias), LT, () -> getColumn(val, as)); } @Override - public MyLambdaQueryWrapper le(boolean condition, String alias, MySFunction column, Object val) { + public MyLambdaQueryWrapper le(boolean condition, String alias, MySFunction column, Object val) { return doIt(condition, () -> getColumn(column, alias), LE, () -> formatSql("{0}", val)); } @Override - public MyLambdaQueryWrapper le(boolean condition, String alias, MySFunction column, String as, MySFunction val) { + public MyLambdaQueryWrapper le(boolean condition, String alias, MySFunction column, String as, MySFunction val) { return doIt(condition, () -> getColumn(column, alias), LE, () -> getColumn(val, as)); } @Override - public MyLambdaQueryWrapper between(boolean condition, String alias, MySFunction column, Object val1, Object val2) { + public MyLambdaQueryWrapper between(boolean condition, String alias, MySFunction column, Object val1, Object val2) { return doIt(condition, () -> getColumn(column, alias), BETWEEN, () -> formatSql("{0}", val1), AND, () -> formatSql("{0}", val2)); } @Override - public MyLambdaQueryWrapper notBetween(boolean condition, String alias, MySFunction column, Object val1, Object val2) { + public MyLambdaQueryWrapper notBetween(boolean condition, String alias, MySFunction column, Object val1, Object val2) { return doIt(condition, () -> getColumn(column, alias), NOT_BETWEEN, () -> formatSql("{0}", val1), AND, () -> formatSql("{0}", val2)); } @Override - public MyLambdaQueryWrapper like(boolean condition, String alias, MySFunction column, Object val) { + public MyLambdaQueryWrapper like(boolean condition, String alias, MySFunction column, Object val) { return likeValue(condition, LIKE, getColumn(column, alias), val, SqlLike.DEFAULT); } @Override - public MyLambdaQueryWrapper notLike(boolean condition, String alias, MySFunction column, Object val) { + public MyLambdaQueryWrapper notLike(boolean condition, String alias, MySFunction column, Object val) { return likeValue(condition, NOT_LIKE, getColumn(column, alias), val, SqlLike.DEFAULT); } @Override - public MyLambdaQueryWrapper likeLeft(boolean condition, String alias, MySFunction column, Object val) { + public MyLambdaQueryWrapper likeLeft(boolean condition, String alias, MySFunction column, Object val) { return likeValue(condition, LIKE, getColumn(column, alias), val, SqlLike.LEFT); } @Override - public MyLambdaQueryWrapper likeRight(boolean condition, String alias, MySFunction column, Object val) { + public MyLambdaQueryWrapper likeRight(boolean condition, String alias, MySFunction column, Object val) { return likeValue(condition, LIKE, getColumn(column, alias), val, SqlLike.RIGHT); } @@ -453,11 +455,11 @@ public class MyLambdaQueryWrapper extends MyJoinLambdaQu return this; } - private MyLambdaQueryWrapper likeValue(boolean condition, SqlKeyword keyword, String column, Object val, SqlLike sqlLike) { + private MyLambdaQueryWrapper likeValue(boolean condition, SqlKeyword keyword, String column, Object val, SqlLike sqlLike) { return doIt(condition, () -> column, keyword, () -> formatSql("{0}", SqlUtils.concatLike(val, sqlLike))); } - protected MyLambdaQueryWrapper addCondition(boolean condition, String column, SqlKeyword sqlKeyword, Object val) { + protected MyLambdaQueryWrapper addCondition(boolean condition, String column, SqlKeyword sqlKeyword, Object val) { return doIt(condition, () -> column, sqlKeyword, () -> formatSql("{0}", val)); } @@ -476,37 +478,37 @@ public class MyLambdaQueryWrapper extends MyJoinLambdaQu } @Override - public MyLambdaQueryWrapper isNull(boolean condition, String alias, MySFunction column) { + public MyLambdaQueryWrapper isNull(boolean condition, String alias, MySFunction column) { return doIt(condition, () -> getColumn(column, alias), IS_NULL); } @Override - public MyLambdaQueryWrapper isNotNull(boolean condition, String alias, MySFunction column) { + public MyLambdaQueryWrapper isNotNull(boolean condition, String alias, MySFunction column) { return doIt(condition, () -> getColumn(column, alias), IS_NOT_NULL); } @Override - public MyLambdaQueryWrapper in(boolean condition, String alias, MySFunction column, Collection coll) { + public MyLambdaQueryWrapper in(boolean condition, String alias, MySFunction column, Collection coll) { return doIt(condition, () -> getColumn(column, alias), IN, inExpression(coll)); } @Override - public MyLambdaQueryWrapper notIn(boolean condition, String alias, MySFunction column, Collection coll) { + public MyLambdaQueryWrapper notIn(boolean condition, String alias, MySFunction column, Collection coll) { return doIt(condition, () -> getColumn(column, alias), NOT_IN, inExpression(coll)); } @Override - public MyLambdaQueryWrapper inSql(boolean condition, String alias, MySFunction column, String inValue) { + public MyLambdaQueryWrapper inSql(boolean condition, String alias, MySFunction column, String inValue) { return doIt(condition, () -> getColumn(column, alias), IN, () -> String.format("(%s)", inValue)); } @Override - public MyLambdaQueryWrapper notInSql(boolean condition, String alias, MySFunction column, String inValue) { + public MyLambdaQueryWrapper notInSql(boolean condition, String alias, MySFunction column, String inValue) { return doIt(condition, () -> getColumn(column, alias), NOT_IN, () -> String.format("(%s)", inValue)); } @Override - public MyLambdaQueryWrapper groupBy(boolean condition, String alias, MySFunction... columns) { + public MyLambdaQueryWrapper groupBy(boolean condition, String alias, MySFunction... columns) { if (ArrayUtils.isEmpty(columns)) { return this; } @@ -515,7 +517,7 @@ public class MyLambdaQueryWrapper extends MyJoinLambdaQu } @Override - public MyLambdaQueryWrapper orderBy(boolean condition, String alias, boolean isAsc, MySFunction... columns) { + public MyLambdaQueryWrapper orderBy(boolean condition, String alias, boolean isAsc, MySFunction... columns) { if (ArrayUtils.isEmpty(columns)) { return this; } @@ -527,12 +529,12 @@ public class MyLambdaQueryWrapper extends MyJoinLambdaQu } @Override - public MyLambdaQueryWrapper having(boolean condition, String alias, String sqlHaving, Object... params) { + public MyLambdaQueryWrapper having(boolean condition, String alias, String sqlHaving, Object... params) { return doIt(condition, HAVING, () -> formatSqlIfNeed(condition, sqlHaving, params)); } @Override - public MyLambdaQueryWrapper func(boolean condition, String alias, Consumer> consumer) { + public MyLambdaQueryWrapper func(boolean condition, String alias, Consumer> consumer) { if (condition) { consumer.accept(this); } diff --git a/src/main/java/com/github/mybatisplus/wrapper/interfaces/MyCompare.java b/src/main/java/com/github/mybatisplus/wrapper/interfaces/MyCompare.java index 5ca69a0..4563688 100644 --- a/src/main/java/com/github/mybatisplus/wrapper/interfaces/MyCompare.java +++ b/src/main/java/com/github/mybatisplus/wrapper/interfaces/MyCompare.java @@ -1,6 +1,5 @@ package com.github.mybatisplus.wrapper.interfaces; -import com.github.mybatisplus.base.MyBaseEntity; import com.github.mybatisplus.func.MySFunction; import java.io.Serializable; @@ -14,47 +13,47 @@ public interface MyCompare extends Serializable { /* ***************************************** eq start ********************************************* */ - Children eq(boolean condition, String alias, MySFunction column, Object val); + Children eq(boolean condition, String alias, MySFunction column, Object val); - default Children eq(boolean condition, MySFunction column, Object val) { + default Children eq(boolean condition, MySFunction column, Object val) { return eq(condition, null, column, val); } - default Children eq(String alias, MySFunction column, Object val) { + default Children eq(String alias, MySFunction column, Object val) { return eq(true, alias, column, val); } - default Children eq(MySFunction column, Object val) { + default Children eq(MySFunction column, Object val) { return eq(true, null, column, val); } - Children eq(boolean condition, String alias, MySFunction column, String as, MySFunction val); + Children eq(boolean condition, String alias, MySFunction column, String as, MySFunction val); - default Children eq(MySFunction column, MySFunction val) { + default Children eq(MySFunction column, MySFunction val) { return eq(true, null, column, null, val); } - default Children eq(Boolean condition, MySFunction column, MySFunction val) { + default Children eq(Boolean condition, MySFunction column, MySFunction val) { return eq(condition, null, column, null, val); } - default Children eq(String alias, MySFunction column, MySFunction val) { + default Children eq(String alias, MySFunction column, MySFunction val) { return eq(true, alias, column, null, val); } - default Children eq(MySFunction column, String as, MySFunction val) { + default Children eq(MySFunction column, String as, MySFunction val) { return eq(true, null, column, as, val); } - default Children eq(Boolean condition, String alias, MySFunction column, MySFunction val) { + default Children eq(Boolean condition, String alias, MySFunction column, MySFunction val) { return eq(condition, alias, column, null, val); } - default Children eq(Boolean condition, MySFunction column, String as, MySFunction val) { + default Children eq(Boolean condition, MySFunction column, String as, MySFunction val) { return eq(condition, null, column, as, val); } - default Children eq(String alias, MySFunction column, String as, MySFunction val) { + default Children eq(String alias, MySFunction column, String as, MySFunction val) { return eq(true, alias, column, as, val); } @@ -63,98 +62,98 @@ public interface MyCompare extends Serializable { /* ***************************************** ne start ********************************************* */ - default Children ne(MySFunction column, Object val) { + default Children ne(MySFunction column, Object val) { return ne(true, null, column, val); } - default Children ne(boolean condition, MySFunction column, Object val) { + default Children ne(boolean condition, MySFunction column, Object val) { return ne(condition, null, column, val); } - default Children ne(String alias, MySFunction column, Object val) { + default Children ne(String alias, MySFunction column, Object val) { return ne(true, alias, column, val); } - Children ne(boolean condition, String alias, MySFunction column, Object val); + Children ne(boolean condition, String alias, MySFunction column, Object val); - default Children ne(MySFunction column, MySFunction val) { + default Children ne(MySFunction column, MySFunction val) { return ne(true, null, column, null, val); } - default Children ne(boolean condition, MySFunction column, MySFunction val) { + default Children ne(boolean condition, MySFunction column, MySFunction val) { return ne(condition, null, column, null, val); } - default Children ne(String alias, MySFunction column, MySFunction val) { + default Children ne(String alias, MySFunction column, MySFunction val) { return ne(true, alias, column, null, val); } - default Children ne(MySFunction column, String as, MySFunction val) { + default Children ne(MySFunction column, String as, MySFunction val) { return ne(true, null, column, as, val); } - default Children ne(boolean condition, String alias, MySFunction column, MySFunction val) { + default Children ne(boolean condition, String alias, MySFunction column, MySFunction val) { return ne(condition, alias, column, null, val); } - default Children ne(String alias, MySFunction column, String as, MySFunction val) { + default Children ne(String alias, MySFunction column, String as, MySFunction val) { return ne(true, alias, column, as, val); } - default Children ne(boolean condition, MySFunction column, String as, MySFunction val) { + default Children ne(boolean condition, MySFunction column, String as, MySFunction val) { return ne(condition, null, column, as, val); } - Children ne(boolean condition, String alias, MySFunction column, String as, MySFunction val); + Children ne(boolean condition, String alias, MySFunction column, String as, MySFunction val); /* ***************************************** ne end ********************************************* */ /* ***************************************** gt start ********************************************* */ - default Children gt(MySFunction column, Object val) { + default Children gt(MySFunction column, Object val) { return gt(true, null, column, val); } - default Children gt(boolean condition, MySFunction column, Object val) { + default Children gt(boolean condition, MySFunction column, Object val) { return gt(condition, null, column, val); } - default Children gt(String alias, MySFunction column, Object val) { + default Children gt(String alias, MySFunction column, Object val) { return gt(true, alias, column, val); } - Children gt(boolean condition, String alias, MySFunction column, Object val); + Children gt(boolean condition, String alias, MySFunction column, Object val); - default Children gt(MySFunction column, MySFunction val) { + default Children gt(MySFunction column, MySFunction val) { return gt(true, null, column, null, val); } - default Children gt(boolean condition, MySFunction column, MySFunction val) { + default Children gt(boolean condition, MySFunction column, MySFunction val) { return gt(condition, null, column, null, val); } - default Children gt(String alias, MySFunction column, MySFunction val) { + default Children gt(String alias, MySFunction column, MySFunction val) { return gt(true, alias, column, null, val); } - default Children gt(MySFunction column, String as, MySFunction val) { + default Children gt(MySFunction column, String as, MySFunction val) { return gt(true, null, column, as, val); } - default Children gt(boolean condition, String alias, MySFunction column, MySFunction val) { + default Children gt(boolean condition, String alias, MySFunction column, MySFunction val) { return gt(condition, alias, column, null, val); } - default Children gt(String alias, MySFunction column, String as, MySFunction val) { + default Children gt(String alias, MySFunction column, String as, MySFunction val) { return gt(true, alias, column, as, val); } - default Children gt(boolean condition, MySFunction column, String as, MySFunction val) { + default Children gt(boolean condition, MySFunction column, String as, MySFunction val) { return gt(condition, null, column, as, val); } - Children gt(boolean condition, String alias, MySFunction column, String as, MySFunction val); + Children gt(boolean condition, String alias, MySFunction column, String as, MySFunction val); /* ***************************************** gt end ********************************************* */ @@ -162,241 +161,241 @@ public interface MyCompare extends Serializable { /* ***************************************** ge start ********************************************* */ - default Children ge(MySFunction column, Object val) { + default Children ge(MySFunction column, Object val) { return ge(true, null, column, val); } - default Children ge(boolean condition, MySFunction column, Object val) { + default Children ge(boolean condition, MySFunction column, Object val) { return ge(condition, null, column, val); } - default Children ge(String alias, MySFunction column, Object val) { + default Children ge(String alias, MySFunction column, Object val) { return ge(true, alias, column, val); } - Children ge(boolean condition, String alias, MySFunction column, Object val); + Children ge(boolean condition, String alias, MySFunction column, Object val); - default Children ge(MySFunction column, MySFunction val) { + default Children ge(MySFunction column, MySFunction val) { return ge(true, null, column, null, val); } - default Children ge(boolean condition, MySFunction column, MySFunction val) { + default Children ge(boolean condition, MySFunction column, MySFunction val) { return ge(condition, null, column, null, val); } - default Children ge(String alias, MySFunction column, MySFunction val) { + default Children ge(String alias, MySFunction column, MySFunction val) { return ge(true, alias, column, null, val); } - default Children ge(MySFunction column, String as, MySFunction val) { + default Children ge(MySFunction column, String as, MySFunction val) { return ge(true, null, column, as, val); } - default Children ge(boolean condition, String alias, MySFunction column, MySFunction val) { + default Children ge(boolean condition, String alias, MySFunction column, MySFunction val) { return ge(condition, alias, column, null, val); } - default Children ge(String alias, MySFunction column, String as, MySFunction val) { + default Children ge(String alias, MySFunction column, String as, MySFunction val) { return ge(true, alias, column, as, val); } - default Children ge(boolean condition, MySFunction column, String as, MySFunction val) { + default Children ge(boolean condition, MySFunction column, String as, MySFunction val) { return ge(condition, null, column, as, val); } - Children ge(boolean condition, String alias, MySFunction column, String as, MySFunction val); + Children ge(boolean condition, String alias, MySFunction column, String as, MySFunction val); /* ***************************************** ge end ********************************************* */ /* ***************************************** lt start ********************************************* */ - default Children lt(MySFunction column, Object val) { + default Children lt(MySFunction column, Object val) { return lt(true, null, column, val); } - default Children lt(boolean condition, MySFunction column, Object val) { + default Children lt(boolean condition, MySFunction column, Object val) { return lt(condition, null, column, val); } - default Children lt(String alias, MySFunction column, Object val) { + default Children lt(String alias, MySFunction column, Object val) { return lt(true, alias, column, val); } - Children lt(boolean condition, String alias, MySFunction column, Object val); + Children lt(boolean condition, String alias, MySFunction column, Object val); - default Children lt(MySFunction column, MySFunction val) { + default Children lt(MySFunction column, MySFunction val) { return lt(true, null, column, null, val); } - default Children lt(boolean condition, MySFunction column, MySFunction val) { + default Children lt(boolean condition, MySFunction column, MySFunction val) { return lt(condition, null, column, null, val); } - default Children lt(String alias, MySFunction column, MySFunction val) { + default Children lt(String alias, MySFunction column, MySFunction val) { return lt(true, alias, column, null, val); } - default Children lt(MySFunction column, String as, MySFunction val) { + default Children lt(MySFunction column, String as, MySFunction val) { return lt(true, null, column, as, val); } - default Children lt(boolean condition, String alias, MySFunction column, MySFunction val) { + default Children lt(boolean condition, String alias, MySFunction column, MySFunction val) { return lt(condition, alias, column, null, val); } - default Children lt(String alias, MySFunction column, String as, MySFunction val) { + default Children lt(String alias, MySFunction column, String as, MySFunction val) { return lt(true, alias, column, as, val); } - default Children lt(boolean condition, MySFunction column, String as, MySFunction val) { + default Children lt(boolean condition, MySFunction column, String as, MySFunction val) { return lt(condition, null, column, as, val); } - Children lt(boolean condition, String alias, MySFunction column, String as, MySFunction val); + Children lt(boolean condition, String alias, MySFunction column, String as, MySFunction val); /* ***************************************** lt end ********************************************* */ /* ***************************************** lt start ********************************************* */ - default Children le(MySFunction column, Object val) { + default Children le(MySFunction column, Object val) { return le(true, null, column, val); } - default Children le(boolean condition, MySFunction column, Object val) { + default Children le(boolean condition, MySFunction column, Object val) { return le(condition, null, column, val); } - default Children le(String alias, MySFunction column, Object val) { + default Children le(String alias, MySFunction column, Object val) { return le(true, alias, column, val); } - Children le(boolean condition, String alias, MySFunction column, Object val); + Children le(boolean condition, String alias, MySFunction column, Object val); - default Children le(MySFunction column, MySFunction val) { + default Children le(MySFunction column, MySFunction val) { return le(true, null, column, null, val); } - default Children le(boolean condition, MySFunction column, MySFunction val) { + default Children le(boolean condition, MySFunction column, MySFunction val) { return le(condition, null, column, null, val); } - default Children le(String alias, MySFunction column, MySFunction val) { + default Children le(String alias, MySFunction column, MySFunction val) { return le(true, alias, column, null, val); } - default Children le(MySFunction column, String as, MySFunction val) { + default Children le(MySFunction column, String as, MySFunction val) { return le(true, null, column, as, val); } - default Children le(boolean condition, String alias, MySFunction column, MySFunction val) { + default Children le(boolean condition, String alias, MySFunction column, MySFunction val) { return le(condition, alias, column, null, val); } - default Children le(String alias, MySFunction column, String as, MySFunction val) { + default Children le(String alias, MySFunction column, String as, MySFunction val) { return le(true, alias, column, as, val); } - default Children le(boolean condition, MySFunction column, String as, MySFunction val) { + default Children le(boolean condition, MySFunction column, String as, MySFunction val) { return le(condition, null, column, as, val); } - Children le(boolean condition, String alias, MySFunction column, String as, MySFunction val); + Children le(boolean condition, String alias, MySFunction column, String as, MySFunction val); /* ***************************************** le end ********************************************* */ /* ***************************************** between start ********************************************* */ - default Children between(MySFunction column, Object val1, Object val2) { + default Children between(MySFunction column, Object val1, Object val2) { return between(true, null, column, val1, val2); } - default Children between(boolean condition, MySFunction column, Object val1, Object val2) { + default Children between(boolean condition, MySFunction column, Object val1, Object val2) { return between(condition, null, column, val1, val2); } - default Children between(String alias, MySFunction column, Object val1, Object val2) { + default Children between(String alias, MySFunction column, Object val1, Object val2) { return between(true, alias, column, val1, val2); } - Children between(boolean condition, String alias, MySFunction column, Object val1, Object val2); + Children between(boolean condition, String alias, MySFunction column, Object val1, Object val2); /* ***************************************** between end ********************************************* */ /* ***************************************** notBetween start ********************************************* */ - default Children notBetween(MySFunction column, Object val1, Object val2) { + default Children notBetween(MySFunction column, Object val1, Object val2) { return notBetween(true, null, column, val1, val2); } - default Children notBetween(boolean condition, MySFunction column, Object val1, Object val2) { + default Children notBetween(boolean condition, MySFunction column, Object val1, Object val2) { return notBetween(condition, null, column, val1, val2); } - default Children notBetween(String alias, MySFunction column, Object val1, Object val2) { + default Children notBetween(String alias, MySFunction column, Object val1, Object val2) { return notBetween(true, alias, column, val1, val2); } - Children notBetween(boolean condition, String alias, MySFunction column, Object val1, Object val2); + Children notBetween(boolean condition, String alias, MySFunction column, Object val1, Object val2); /* ***************************************** notBetween end ********************************************* */ /* ***************************************** like start ********************************************* */ - default Children like(MySFunction column, Object val) { + default Children like(MySFunction column, Object val) { return like(true, null, column, val); } - default Children like(boolean condition, MySFunction column, Object val) { + default Children like(boolean condition, MySFunction column, Object val) { return like(condition, null, column, val); } - default Children like(String alias, MySFunction column, Object val) { + default Children like(String alias, MySFunction column, Object val) { return like(true, alias, column, val); } - Children like(boolean condition, String alias, MySFunction column, Object val); + Children like(boolean condition, String alias, MySFunction column, Object val); /* ***************************************** like end ********************************************* */ /* ***************************************** notLike start ********************************************* */ - default Children notLike(MySFunction column, Object val) { + default Children notLike(MySFunction column, Object val) { return notLike(true, null, column, val); } - default Children notLike(boolean condition, MySFunction column, Object val) { + default Children notLike(boolean condition, MySFunction column, Object val) { return notLike(condition, null, column, val); } - default Children notLike(String alias, MySFunction column, Object val) { + default Children notLike(String alias, MySFunction column, Object val) { return notLike(true, alias, column, val); } - Children notLike(boolean condition, String alias, MySFunction column, Object val); + Children notLike(boolean condition, String alias, MySFunction column, Object val); /* ***************************************** notLike end ********************************************* */ /* ***************************************** likeLeft start ********************************************* */ - default Children likeLeft(MySFunction column, Object val) { + default Children likeLeft(MySFunction column, Object val) { return likeLeft(true, null, column, val); } - default Children likeLeft(boolean condition, MySFunction column, Object val) { + default Children likeLeft(boolean condition, MySFunction column, Object val) { return likeLeft(condition, null, column, val); } - default Children likeLeft(String alias, MySFunction column, Object val) { + default Children likeLeft(String alias, MySFunction column, Object val) { return likeLeft(true, alias, column, val); } - Children likeLeft(boolean condition, String alias, MySFunction column, Object val); + Children likeLeft(boolean condition, String alias, MySFunction column, Object val); /* ***************************************** likeLeft end ********************************************* */ @@ -404,19 +403,19 @@ public interface MyCompare extends Serializable { /* ***************************************** likeRight start ********************************************* */ - default Children likeRight(MySFunction column, Object val) { + default Children likeRight(MySFunction column, Object val) { return likeRight(true, null, column, val); } - default Children likeRight(boolean condition, MySFunction column, Object val) { + default Children likeRight(boolean condition, MySFunction column, Object val) { return likeRight(condition, null, column, val); } - default Children likeRight(String alias, MySFunction column, Object val) { + default Children likeRight(String alias, MySFunction column, Object val) { return likeRight(true, alias, column, val); } - Children likeRight(boolean condition, String alias, MySFunction column, Object val); + Children likeRight(boolean condition, String alias, MySFunction column, Object val); /* ***************************************** likeRight end ********************************************* */ diff --git a/src/main/java/com/github/mybatisplus/wrapper/interfaces/MyFunc.java b/src/main/java/com/github/mybatisplus/wrapper/interfaces/MyFunc.java index 7930cb6..b87526b 100644 --- a/src/main/java/com/github/mybatisplus/wrapper/interfaces/MyFunc.java +++ b/src/main/java/com/github/mybatisplus/wrapper/interfaces/MyFunc.java @@ -1,6 +1,5 @@ package com.github.mybatisplus.wrapper.interfaces; -import com.github.mybatisplus.base.MyBaseEntity; import com.github.mybatisplus.func.MySFunction; import java.io.Serializable; @@ -17,198 +16,198 @@ import static java.util.stream.Collectors.toList; @SuppressWarnings("unchecked") public interface MyFunc extends Serializable { - default Children isNull(MySFunction column) { + default Children isNull(MySFunction column) { return isNull(true, null, column); } - default Children isNull(boolean condition, MySFunction column) { + default Children isNull(boolean condition, MySFunction column) { return isNull(condition, null, column); } - default Children isNull(String alias, MySFunction column) { + default Children isNull(String alias, MySFunction column) { return isNull(true, alias, column); } - Children isNull(boolean condition, String alias, MySFunction column); + Children isNull(boolean condition, String alias, MySFunction column); - default Children isNotNull(MySFunction column) { + default Children isNotNull(MySFunction column) { return isNotNull(true, column); } - default Children isNotNull(boolean condition, MySFunction column) { + default Children isNotNull(boolean condition, MySFunction column) { return isNotNull(condition, null, column); } - default Children isNotNull(String alias, MySFunction column) { + default Children isNotNull(String alias, MySFunction column) { return isNotNull(true, alias, column); } - Children isNotNull(boolean condition, String alias, MySFunction column); + Children isNotNull(boolean condition, String alias, MySFunction column); - default Children in(MySFunction column, Collection coll) { + default Children in(MySFunction column, Collection coll) { return in(true, null, column, coll); } - default Children in(boolean condition, MySFunction column, Collection coll) { + default Children in(boolean condition, MySFunction column, Collection coll) { return in(condition, null, column, coll); } - default Children in(String alias, MySFunction column, Collection coll) { + default Children in(String alias, MySFunction column, Collection coll) { return in(true, alias, column, coll); } - Children in(boolean condition, String alias, MySFunction column, Collection coll); + Children in(boolean condition, String alias, MySFunction column, Collection coll); - default Children in(MySFunction column, Object... values) { + default Children in(MySFunction column, Object... values) { return in(true, null, column, values); } - default Children in(boolean condition, MySFunction column, Object... values) { + default Children in(boolean condition, MySFunction column, Object... values) { return in(condition, null, column, values); } - default Children in(String alias, MySFunction column, Object... values) { + default Children in(String alias, MySFunction column, Object... values) { return in(true, alias, column, values); } - default Children in(boolean condition, String alias, MySFunction column, Object... values) { + default Children in(boolean condition, String alias, MySFunction column, Object... values) { return in(condition, alias, column, Arrays.stream(Optional.ofNullable(values).orElseGet(() -> new Object[]{})) .collect(toList())); } - default Children notIn(MySFunction column, Collection coll) { + default Children notIn(MySFunction column, Collection coll) { return notIn(true, null, column, coll); } - default Children notIn(boolean condition, MySFunction column, Collection coll) { + default Children notIn(boolean condition, MySFunction column, Collection coll) { return notIn(condition, null, column, coll); } - default Children notIn(String alias, MySFunction column, Collection coll) { + default Children notIn(String alias, MySFunction column, Collection coll) { return notIn(true, alias, column, coll); } - Children notIn(boolean condition, String alias, MySFunction column, Collection coll); + Children notIn(boolean condition, String alias, MySFunction column, Collection coll); - default Children notIn(MySFunction column, Object... value) { + default Children notIn(MySFunction column, Object... value) { return notIn(true, null, column, value); } - default Children notIn(boolean condition, MySFunction column, Object... value) { + default Children notIn(boolean condition, MySFunction column, Object... value) { return notIn(condition, null, column, value); } - default Children notIn(String alias, MySFunction column, Object... value) { + default Children notIn(String alias, MySFunction column, Object... value) { return notIn(true, alias, column, value); } - default Children notIn(boolean condition, String alias, MySFunction column, Object... values) { + default Children notIn(boolean condition, String alias, MySFunction column, Object... values) { return notIn(condition, alias, column, Arrays.stream(Optional.ofNullable(values).orElseGet(() -> new Object[]{})) .collect(toList())); } - default Children inSql(MySFunction column, String inValue) { + default Children inSql(MySFunction column, String inValue) { return inSql(true, null, column, inValue); } - default Children inSql(boolean condition, MySFunction column, String inValue) { + default Children inSql(boolean condition, MySFunction column, String inValue) { return inSql(condition, null, column, inValue); } - default Children inSql(String alias, MySFunction column, String inValue) { + default Children inSql(String alias, MySFunction column, String inValue) { return inSql(true, alias, column, inValue); } - Children inSql(boolean condition, String alias, MySFunction column, String inValue); + Children inSql(boolean condition, String alias, MySFunction column, String inValue); - default Children notInSql(MySFunction column, String inValue) { + default Children notInSql(MySFunction column, String inValue) { return notInSql(true, null, column, inValue); } - default Children notInSql(boolean condition, MySFunction column, String inValue) { + default Children notInSql(boolean condition, MySFunction column, String inValue) { return notInSql(condition, null, column, inValue); } - default Children notInSql(String alias, MySFunction column, String inValue) { + default Children notInSql(String alias, MySFunction column, String inValue) { return notInSql(true, alias, column, inValue); } - Children notInSql(boolean condition, String alias, MySFunction column, String inValue); + Children notInSql(boolean condition, String alias, MySFunction column, String inValue); - default Children groupBy(MySFunction... columns) { + default Children groupBy(MySFunction... columns) { return groupBy(true, null, columns); } - default Children groupBy(boolean condition, MySFunction... columns) { + default Children groupBy(boolean condition, MySFunction... columns) { return groupBy(condition, null, columns); } - default Children groupBy(String alias, MySFunction... columns) { + default Children groupBy(String alias, MySFunction... columns) { return groupBy(true, alias, columns); } - Children groupBy(boolean condition, String alias, MySFunction... columns); + Children groupBy(boolean condition, String alias, MySFunction... columns); - default Children orderByAsc(MySFunction... columns) { + default Children orderByAsc(MySFunction... columns) { return orderByAsc(true, null, columns); } - default Children orderByAsc(boolean condition, MySFunction... columns) { + default Children orderByAsc(boolean condition, MySFunction... columns) { return orderByAsc(condition, null, columns); } - default Children orderByAsc(String alias, MySFunction... columns) { + default Children orderByAsc(String alias, MySFunction... columns) { return orderByAsc(true, alias, columns); } - default Children orderByAsc(boolean condition, String alias, MySFunction... columns) { + default Children orderByAsc(boolean condition, String alias, MySFunction... columns) { return orderBy(condition, alias, true, columns); } - default Children orderByDesc(MySFunction... columns) { + default Children orderByDesc(MySFunction... columns) { return orderByDesc(true, null, columns); } - default Children orderByDesc(boolean condition, MySFunction... columns) { + default Children orderByDesc(boolean condition, MySFunction... columns) { return orderByDesc(condition, null, columns); } - default Children orderByDesc(String alias, MySFunction... columns) { + default Children orderByDesc(String alias, MySFunction... columns) { return orderByDesc(true, alias, columns); } - default Children orderByDesc(boolean condition, String alias, MySFunction... columns) { + default Children orderByDesc(boolean condition, String alias, MySFunction... columns) { return orderBy(condition, alias, false, columns); } - Children orderBy(boolean condition, String alias, boolean isAsc, MySFunction... columns); + Children orderBy(boolean condition, String alias, boolean isAsc, MySFunction... columns); - default Children having(String sqlHaving, Object... params) { + default Children having(String sqlHaving, Object... params) { return having(true, null, sqlHaving, params); } - default Children having(boolean condition, String sqlHaving, Object... params) { + default Children having(boolean condition, String sqlHaving, Object... params) { return having(condition, null, sqlHaving, params); } - default Children having(String alias, String sqlHaving, Object... params) { + default Children having(String alias, String sqlHaving, Object... params) { return having(true, alias, sqlHaving, params); } - Children having(boolean condition, String alias, String sqlHaving, Object... params); + Children having(boolean condition, String alias, String sqlHaving, Object... params); - default Children func(Consumer consumer) { + default Children func(Consumer consumer) { return func(true, null, consumer); } - default Children func(boolean condition, Consumer consumer) { + default Children func(boolean condition, Consumer consumer) { return func(condition, null, consumer); } - default Children func(String alias, Consumer consumer) { + default Children func(String alias, Consumer consumer) { return func(true, alias, consumer); } - Children func(boolean condition, String alias, Consumer consumer); + Children func(boolean condition, String alias, Consumer consumer); } diff --git a/src/main/java/com/github/mybatisplus/wrapper/interfaces/MyJoin.java b/src/main/java/com/github/mybatisplus/wrapper/interfaces/MyJoin.java index 13cc67a..be9b730 100644 --- a/src/main/java/com/github/mybatisplus/wrapper/interfaces/MyJoin.java +++ b/src/main/java/com/github/mybatisplus/wrapper/interfaces/MyJoin.java @@ -1,6 +1,5 @@ package com.github.mybatisplus.wrapper.interfaces; -import com.github.mybatisplus.base.MyBaseEntity; import com.github.mybatisplus.func.MySFunction; import com.github.mybatisplus.wrapper.MyJoinLambdaQueryWrapper; @@ -9,80 +8,80 @@ import java.util.function.Function; /** * @author yulichang */ -public interface MyJoin { +public interface MyJoin { - Children leftJoin(boolean condition, - String alias, - MySFunction leftCondition, - MySFunction rightCondition, - Function, MyJoinLambdaQueryWrapper> rightWrapper); + Children leftJoin(boolean condition, + String alias, + MySFunction leftCondition, + MySFunction rightCondition, + Function, MyJoinLambdaQueryWrapper> rightWrapper); - default Children leftJoin(MySFunction leftCondition, - MySFunction rightCondition, - Function, MyJoinLambdaQueryWrapper> rightWrapper) { + default Children leftJoin(MySFunction leftCondition, + MySFunction rightCondition, + Function, MyJoinLambdaQueryWrapper> rightWrapper) { return leftJoin(true, null, leftCondition, rightCondition, rightWrapper); } - default Children leftJoin(String alias, MySFunction leftCondition, MySFunction rightCondition, Function, MyJoinLambdaQueryWrapper> rightWrapper) { + default Children leftJoin(String alias, MySFunction leftCondition, MySFunction rightCondition, Function, MyJoinLambdaQueryWrapper> rightWrapper) { return leftJoin(true, alias, leftCondition, rightCondition, rightWrapper); } - default Children leftJoin(boolean condition, - MySFunction leftCondition, - MySFunction rightCondition, - Function, MyJoinLambdaQueryWrapper> rightWrapper) { + default Children leftJoin(boolean condition, + MySFunction leftCondition, + MySFunction rightCondition, + Function, MyJoinLambdaQueryWrapper> rightWrapper) { return leftJoin(condition, null, leftCondition, rightCondition, rightWrapper); } - Children rightJoin(boolean condition, - String alias, - MySFunction leftCondition, - MySFunction rightCondition, - Function, MyJoinLambdaQueryWrapper> rightWrapper); + Children rightJoin(boolean condition, + String alias, + MySFunction leftCondition, + MySFunction rightCondition, + Function, MyJoinLambdaQueryWrapper> rightWrapper); - default Children rightJoin(MySFunction leftCondition, - MySFunction rightCondition, - Function, MyJoinLambdaQueryWrapper> rightWrapper) { + default Children rightJoin(MySFunction leftCondition, + MySFunction rightCondition, + Function, MyJoinLambdaQueryWrapper> rightWrapper) { return rightJoin(true, null, leftCondition, rightCondition, rightWrapper); } - default Children rightJoin(String alias, MySFunction leftCondition, MySFunction rightCondition, Function, MyJoinLambdaQueryWrapper> rightWrapper) { + default Children rightJoin(String alias, MySFunction leftCondition, MySFunction rightCondition, Function, MyJoinLambdaQueryWrapper> rightWrapper) { return rightJoin(true, alias, leftCondition, rightCondition, rightWrapper); } - default Children rightJoin(boolean condition, - MySFunction leftCondition, - MySFunction rightCondition, - Function, MyJoinLambdaQueryWrapper> rightWrapper) { + default Children rightJoin(boolean condition, + MySFunction leftCondition, + MySFunction rightCondition, + Function, MyJoinLambdaQueryWrapper> rightWrapper) { return rightJoin(condition, null, leftCondition, rightCondition, rightWrapper); } - Children innerJoin(boolean condition, - String alias, - MySFunction leftCondition, - MySFunction rightCondition, - Function, MyJoinLambdaQueryWrapper> rightWrapper); + Children innerJoin(boolean condition, + String alias, + MySFunction leftCondition, + MySFunction rightCondition, + Function, MyJoinLambdaQueryWrapper> rightWrapper); - default Children innerJoin(MySFunction leftCondition, - MySFunction rightCondition, - Function, MyJoinLambdaQueryWrapper> rightWrapper) { + default Children innerJoin(MySFunction leftCondition, + MySFunction rightCondition, + Function, MyJoinLambdaQueryWrapper> rightWrapper) { return innerJoin(true, null, leftCondition, rightCondition, rightWrapper); } - default Children innerJoin(String alias, MySFunction leftCondition, MySFunction rightCondition, Function, MyJoinLambdaQueryWrapper> rightWrapper) { + default Children innerJoin(String alias, MySFunction leftCondition, MySFunction rightCondition, Function, MyJoinLambdaQueryWrapper> rightWrapper) { return innerJoin(true, alias, leftCondition, rightCondition, rightWrapper); } - default Children innerJoin(boolean condition, - MySFunction leftCondition, - MySFunction rightCondition, - Function, MyJoinLambdaQueryWrapper> rightWrapper) { + default Children innerJoin(boolean condition, + MySFunction leftCondition, + MySFunction rightCondition, + Function, MyJoinLambdaQueryWrapper> rightWrapper) { return innerJoin(condition, null, leftCondition, rightCondition, rightWrapper); }