当前使用版本(必填,否则不予处理)

3.5.5

该问题是如何引起的?(确定最新版也有问题再提!!!)

自定义基类 BaseEntity 自定义IBaseService 在IBaseService 自定义 unique方法

重现步骤(如果有就写完整)

实现类如下 `public class BaseServiceImpl, T extends BaseEntity\> extends ServiceImpl implements IBaseService {

/**
 * 判断是否唯一
 *
 * @param id             ID
 * @param attributeName  属性名称
 * @param attributeValue 属性值
 * @return 是否唯一
 */
@Override
public boolean unique(Serializable id, SFunction<T, ?> attributeName, Object attributeValue) {
    LambdaQueryWrapper<T> wrapper = new LambdaQueryWrapper<>();

    if (id != null) {
        wrapper.ne(T::getId, id);
    }
    wrapper.eq(attributeName, attributeValue);
    return count(wrapper) <= 0;
}
}`

报错信息

debug调试发现 在类:com.baomidou.mybatisplus.core.conditions.AbstractLambdaWrapper#columnMap 缓存中只有基类字段信息 没有当前SystemRole类字段信息 com.baomidou.mybatisplus.core.exceptions.MybatisPlusException: can not find lambda cache for this property [code] of entity [cn.xx.xx.SystemRole] at com.baomidou.mybatisplus.core.toolkit.ExceptionUtils.mpe(ExceptionUtils.java:49) at com.baomidou.mybatisplus.core.toolkit.Assert.isTrue(Assert.java:38) at com.baomidou.mybatisplus.core.toolkit.Assert.notNull(Assert.java:72) at com.baomidou.mybatisplus.core.conditions.AbstractLambdaWrapper.getColumnCache(AbstractLambdaWrapper.java:149) at com.baomidou.mybatisplus.core.conditions.AbstractLambdaWrapper.getColumnCache(AbstractLambdaWrapper.java:132)

Comment From: miemieYaho

new LambdaQueryWrapper(xx.class)