dengzedong
2024-12-25 3ddbb6f6f8ecb625bf81b750a788e7d75309334c
iailab-framework/iailab-common-biz-data-permission/src/main/java/com/iailab/framework/datapermission/config/IailabDataPermissionAutoConfiguration.java
@@ -1,7 +1,8 @@
package com.iailab.framework.datapermission.config;
import com.baomidou.mybatisplus.extension.plugins.inner.DataPermissionInterceptor;
import com.iailab.framework.datapermission.core.aop.DataPermissionAnnotationAdvisor;
import com.iailab.framework.datapermission.core.db.DataPermissionDatabaseInterceptor;
import com.iailab.framework.datapermission.core.db.DataPermissionRuleHandler;
import com.iailab.framework.datapermission.core.rule.DataPermissionRule;
import com.iailab.framework.datapermission.core.rule.DataPermissionRuleFactory;
import com.iailab.framework.datapermission.core.rule.DataPermissionRuleFactoryImpl;
@@ -26,16 +27,18 @@
    }
    @Bean
    public DataPermissionDatabaseInterceptor dataPermissionDatabaseInterceptor(MybatisPlusInterceptor interceptor,
                                                                               DataPermissionRuleFactory ruleFactory) {
        // 创建 DataPermissionDatabaseInterceptor 拦截器
        DataPermissionDatabaseInterceptor inner = new DataPermissionDatabaseInterceptor(ruleFactory);
    public DataPermissionRuleHandler dataPermissionRuleHandler(MybatisPlusInterceptor interceptor,
                                                               DataPermissionRuleFactory ruleFactory) {
        // 创建 DataPermissionInterceptor 拦截器
        DataPermissionRuleHandler handler = new DataPermissionRuleHandler(ruleFactory);
        DataPermissionInterceptor inner = new DataPermissionInterceptor(handler);
        // 添加到 interceptor 中
        // 需要加在首个,主要是为了在分页插件前面。这个是 MyBatis Plus 的规定
        MyBatisUtils.addInterceptor(interceptor, inner, 0);
        return inner;
        return handler;
    }
    @Bean
    public DataPermissionAnnotationAdvisor dataPermissionAnnotationAdvisor() {
        return new DataPermissionAnnotationAdvisor();