From 554152635dcd9388bdd0d4cbee7cabd4ae192996 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=A7=8B=E8=BE=9E=E6=9C=AA=E5=AF=92?= <545073804@qq.com> Date: Tue, 29 Jul 2025 15:52:08 +0800 Subject: [PATCH] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E6=9D=83=E9=99=90=E6=B3=A8=E8=A7=A3=E5=88=87=E7=82=B9=E9=80=BB?= =?UTF-8?q?=E8=BE=91=EF=BC=8C=E4=BD=BF=E5=88=87=E7=82=B9=E9=80=BB=E8=BE=91?= =?UTF-8?q?=E6=9B=B4=E6=B8=85=E6=99=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...thodMatcher.java => DataPermissionPointcut.java} | 13 +++---------- .../aspect/DataPermissionPointcutAdvisor.java | 7 +------ 2 files changed, 4 insertions(+), 16 deletions(-) rename ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/aspect/{DataPermissionDynamicMethodMatcher.java => DataPermissionPointcut.java} (81%) diff --git a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/aspect/DataPermissionDynamicMethodMatcher.java b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/aspect/DataPermissionPointcut.java similarity index 81% rename from ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/aspect/DataPermissionDynamicMethodMatcher.java rename to ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/aspect/DataPermissionPointcut.java index db1271bbb..4b7d945a3 100644 --- a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/aspect/DataPermissionDynamicMethodMatcher.java +++ b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/aspect/DataPermissionPointcut.java @@ -2,21 +2,19 @@ package org.dromara.common.mybatis.aspect; import lombok.extern.slf4j.Slf4j; import org.dromara.common.mybatis.annotation.DataPermission; -import org.springframework.aop.support.DynamicMethodMatcher; +import org.springframework.aop.support.StaticMethodMatcherPointcut; import java.lang.reflect.Method; import java.lang.reflect.Proxy; /** - * 数据权限动态方法匹配器 + * 数据权限匹配切点 * * @author 秋辞未寒 */ @Slf4j @SuppressWarnings("all") -public class DataPermissionDynamicMethodMatcher extends DynamicMethodMatcher { - - public DataPermissionDynamicMethodMatcher() {} +public class DataPermissionPointcut extends StaticMethodMatcherPointcut { @Override public boolean matches(Method method, Class targetClass) { @@ -38,9 +36,4 @@ public class DataPermissionDynamicMethodMatcher extends DynamicMethodMatcher { return targetClassRef.isAnnotationPresent(DataPermission.class); } - @Override - public boolean matches(Method method, Class targetClass, Object... args) { - return matches(method, targetClass); - } - } diff --git a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/aspect/DataPermissionPointcutAdvisor.java b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/aspect/DataPermissionPointcutAdvisor.java index 14dfed1df..351288ce4 100644 --- a/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/aspect/DataPermissionPointcutAdvisor.java +++ b/ruoyi-common/ruoyi-common-mybatis/src/main/java/org/dromara/common/mybatis/aspect/DataPermissionPointcutAdvisor.java @@ -1,11 +1,8 @@ package org.dromara.common.mybatis.aspect; import org.aopalliance.aop.Advice; -import org.dromara.common.mybatis.annotation.DataPermission; import org.springframework.aop.Pointcut; import org.springframework.aop.support.AbstractPointcutAdvisor; -import org.springframework.aop.support.ComposablePointcut; -import org.springframework.aop.support.annotation.AnnotationMatchingPointcut; /** * 数据权限注解切面定义 @@ -20,9 +17,7 @@ public class DataPermissionPointcutAdvisor extends AbstractPointcutAdvisor { public DataPermissionPointcutAdvisor() { this.advice = new DataPermissionAdvice(); - AnnotationMatchingPointcut matchingPointcut = new AnnotationMatchingPointcut(DataPermission.class, true); - DataPermissionDynamicMethodMatcher matcher = new DataPermissionDynamicMethodMatcher(); - this.pointcut = new ComposablePointcut(matcher).union(matchingPointcut); + this.pointcut = new DataPermissionPointcut(); } @Override