mirror of
https://gitee.com/best_handsome/mybatis-plus-join
synced 2025-07-11 00:02:22 +08:00
fix
This commit is contained in:
parent
a19d7fcae9
commit
54432b76a4
@ -65,7 +65,7 @@ public abstract class MPJAbstractLambdaWrapper<T, Children extends MPJAbstractLa
|
||||
}
|
||||
Table table = tableList.get(clazz, index);
|
||||
if (Objects.nonNull(table.getIndex())) {
|
||||
if (isJoin) {
|
||||
if (isJoin && clazz == getEntityClass()) {
|
||||
//除自己以外的倒序第一个
|
||||
Table t = tableList.getOrElse(clazz, index);
|
||||
if (Objects.isNull(t.getIndex())) {
|
||||
|
@ -0,0 +1,9 @@
|
||||
package com.github.yulichang.test.join.mapper;
|
||||
|
||||
import com.github.yulichang.base.MPJBaseMapper;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
|
||||
@Mapper
|
||||
@SuppressWarnings("unused")
|
||||
public interface MYBaseMapper<T> extends MPJBaseMapper<T> {
|
||||
}
|
@ -143,20 +143,20 @@ class LambdaWrapperTest {
|
||||
@Test
|
||||
void testLogicDel() {
|
||||
List<UserDTO> l1 = userMapper.selectJoinList(UserDTO.class, new MPJLambdaWrapper<>());
|
||||
assert l1.size() < 15;
|
||||
assert l1.size() == 14;
|
||||
|
||||
List<UserDTO> l2 = userMapper.selectJoinList(UserDTO.class, new MPJLambdaWrapper<UserDO>()
|
||||
.selectAll(UserDO.class)
|
||||
.select(AddressDO::getAddress)
|
||||
.leftJoin(AddressDO.class, AddressDO::getUserId, UserDO::getId));
|
||||
assert l2.size() < 11;
|
||||
assert l2.size() == 10;
|
||||
|
||||
List<UserDTO> l3 = userMapper.selectJoinList(UserDTO.class, new MPJLambdaWrapper<UserDO>()
|
||||
.disableSubLogicDel()
|
||||
.selectAll(UserDO.class)
|
||||
.selectCollection(AddressDO.class, UserDTO::getAddressList)
|
||||
.leftJoin(AddressDO.class, AddressDO::getUserId, UserDO::getId));
|
||||
assert l3.size() > 5 && l3.get(0).getAddressList().size() > 5;
|
||||
assert l3.size() == 14 && l3.get(0).getAddressList().size() == 9;
|
||||
|
||||
List<UserDTO> l4 = userMapper.selectJoinList(UserDTO.class, new MPJLambdaWrapper<UserDO>()
|
||||
.disableSubLogicDel()
|
||||
@ -165,7 +165,7 @@ class LambdaWrapperTest {
|
||||
.leftJoin(AddressDO.class, on -> on
|
||||
.eq(AddressDO::getUserId, UserDO::getId)
|
||||
.eq(AddressDO::getDel, false)));
|
||||
assert l4.size() > 5 && l4.get(0).getAddressList().size() <= 5;
|
||||
assert l4.size() == 14 && l4.get(0).getAddressList().size() == 5;
|
||||
}
|
||||
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user