From 0cb8b7cad9696be7c289a340d51a6a007dcadf45 Mon Sep 17 00:00:00 2001 From: admin <570810310@qq.com> Date: Thu, 25 Mar 2021 15:23:25 +0800 Subject: [PATCH] [issues](https://gitee.com/best_handsome/mybatis-plus-join/issues/I3D5T7) --- .../github/yulichang/toolkit/Constant.java | 14 ++++++++ .../wrapper/MPJAbstractLambdaWrapper.java | 14 -------- .../wrapper/MPJJoinLambdaQueryWrapper.java | 32 +++++++++++-------- 3 files changed, 33 insertions(+), 27 deletions(-) diff --git a/src/main/java/com/github/yulichang/toolkit/Constant.java b/src/main/java/com/github/yulichang/toolkit/Constant.java index c9eb9f0..834b42a 100644 --- a/src/main/java/com/github/yulichang/toolkit/Constant.java +++ b/src/main/java/com/github/yulichang/toolkit/Constant.java @@ -42,4 +42,18 @@ public interface Constant { */ String INNER_JOIN = StringPool.SPACE + INNER + StringPool.SPACE + JOIN + StringPool.SPACE; + /** + * " t" + */ + String SPACE_TABLE_ALIAS = StringPool.SPACE + Constant.TABLE_ALIAS; + + /** + * " ON t" + */ + String ON_TABLE_ALIAS = Constant.ON + Constant.TABLE_ALIAS; + + /** + * " = t" + */ + String EQUALS_TABLE_ALIAS = Constant.EQUALS + Constant.TABLE_ALIAS; } diff --git a/src/main/java/com/github/yulichang/wrapper/MPJAbstractLambdaWrapper.java b/src/main/java/com/github/yulichang/wrapper/MPJAbstractLambdaWrapper.java index 42793cb..22fb40f 100644 --- a/src/main/java/com/github/yulichang/wrapper/MPJAbstractLambdaWrapper.java +++ b/src/main/java/com/github/yulichang/wrapper/MPJAbstractLambdaWrapper.java @@ -1,7 +1,6 @@ package com.github.yulichang.wrapper; import com.baomidou.mybatisplus.core.toolkit.StringPool; -import com.baomidou.mybatisplus.core.toolkit.support.ColumnCache; import com.baomidou.mybatisplus.core.toolkit.support.SFunction; import com.github.yulichang.toolkit.Constant; import com.github.yulichang.toolkit.LambdaUtils; @@ -20,29 +19,16 @@ import static java.util.stream.Collectors.joining; public abstract class MPJAbstractLambdaWrapper> extends MPJAbstractWrapper { - private Map columnMap = null; - private boolean initColumnMap = false; - /** * 关联的表 */ protected final Map, Integer> subTable = new HashMap<>(); - @SuppressWarnings("unchecked") - protected String columnsToString(SFunction... columns) { - return columnsToString(true, columns); - } - @Override protected String columnToString(X column) { return columnToString((SFunction) column, true); } - @SuppressWarnings("unchecked") - protected String columnsToString(boolean onlyColumn, SFunction... columns) { - return Arrays.stream(columns).map(i -> columnToString(i, onlyColumn)).collect(joining(StringPool.COMMA)); - } - @Override protected String columnsToString(X... columns) { return Arrays.stream(columns).map(i -> columnToString((SFunction) i, true)).collect(joining(StringPool.COMMA)); diff --git a/src/main/java/com/github/yulichang/wrapper/MPJJoinLambdaQueryWrapper.java b/src/main/java/com/github/yulichang/wrapper/MPJJoinLambdaQueryWrapper.java index fc035f5..a086756 100644 --- a/src/main/java/com/github/yulichang/wrapper/MPJJoinLambdaQueryWrapper.java +++ b/src/main/java/com/github/yulichang/wrapper/MPJJoinLambdaQueryWrapper.java @@ -133,12 +133,26 @@ public class MPJJoinLambdaQueryWrapper extends MPJAbstractLambdaWrapper MPJJoinLambdaQueryWrapper selectAs(SFunction columns, SFunction alias) { + return selectAs(true, columns, LambdaUtils.getName(alias)); + } + + /** + * @since 1.1.3 + */ + public final MPJJoinLambdaQueryWrapper selectAs(SFunction columns, String alias) { return selectAs(true, columns, alias); } - public final MPJJoinLambdaQueryWrapper selectAs(boolean condition, SFunction columns, SFunction alias) { + public final MPJJoinLambdaQueryWrapper selectAs(boolean condition, SFunction columns, SFunction alias) { + return selectAs(condition, columns, LambdaUtils.getName(alias)); + } + + /** + * @since 1.1.3 + */ + public final MPJJoinLambdaQueryWrapper selectAs(boolean condition, SFunction columns, String alias) { if (condition) { - selectColumns.add(new SelectColumn(LambdaUtils.getEntityClass(columns), LambdaUtils.getColumn(columns), LambdaUtils.getName(alias))); + selectColumns.add(new SelectColumn(LambdaUtils.getEntityClass(columns), LambdaUtils.getColumn(columns), alias)); } return typedThis; } @@ -160,7 +174,6 @@ public class MPJJoinLambdaQueryWrapper extends MPJAbstractLambdaWrapper extends MPJAbstractLambdaWrapper extends MPJAbstractLambdaWrapper