refactor: 升级 MyBatis Plus 3.5.3.1 => 3.5.3.2,并优化数据权限处理

1.解决升级到 MyBatis Plus 3.5.3.2 后,由于 BaseMapper 接口变化导致部分数据权限处理报 Invalid bound statement (not found) 错误的问题(处理思路来源于:https://github.com/baomidou/mybatis-plus/issues/5630)
2.提取 DataPermissionMapper(数据权限 Mapper 基类),如需处理通用 Mapper 方法的数据权限,继承该 Mapper 即可
This commit is contained in:
2023-09-04 22:18:28 +08:00
parent c6ae5db826
commit 32904b54ef
5 changed files with 60 additions and 30 deletions

View File

@@ -16,17 +16,10 @@
package top.charles7c.cnadmin.system.mapper;
import java.util.List;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Constants;
import top.charles7c.cnadmin.common.annotation.DataPermission;
import top.charles7c.cnadmin.common.base.BaseMapper;
import top.charles7c.cnadmin.common.base.DataPermissionMapper;
import top.charles7c.cnadmin.system.model.entity.UserDO;
/**
@@ -35,15 +28,7 @@ import top.charles7c.cnadmin.system.model.entity.UserDO;
* @author Charles7c
* @since 2022/12/22 21:47
*/
public interface UserMapper extends BaseMapper<UserDO> {
@Override
@DataPermission
List<UserDO> selectList(@Param(Constants.WRAPPER) Wrapper<UserDO> queryWrapper);
@Override
@DataPermission
<P extends IPage<UserDO>> P selectPage(P page, @Param(Constants.WRAPPER) Wrapper<UserDO> queryWrapper);
public interface UserMapper extends DataPermissionMapper<UserDO> {
/**
* 根据用户名查询