From 6a8b93548a088d7bb5711cca25452074beb4d641 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=8E=E9=BE=99?= Date: Fri, 7 Feb 2025 17:16:28 +0800 Subject: [PATCH] =?UTF-8?q?feat=EF=BC=9A(hotfix)=20controller=E5=A4=84?= =?UTF-8?q?=E7=90=86=E5=AE=8C=E5=90=8E=EF=BC=8C=E6=8A=8AthreadLocal?= =?UTF-8?q?=E7=BB=99=E6=B8=85=E7=A9=BA=E6=8E=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../aop/DataPermissionInterceptor.java | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/axzo-common-data-permission/src/main/java/cn/axzo/framework/datapermission/aop/DataPermissionInterceptor.java b/axzo-common-data-permission/src/main/java/cn/axzo/framework/datapermission/aop/DataPermissionInterceptor.java index 0a0937d..f3d510d 100644 --- a/axzo-common-data-permission/src/main/java/cn/axzo/framework/datapermission/aop/DataPermissionInterceptor.java +++ b/axzo-common-data-permission/src/main/java/cn/axzo/framework/datapermission/aop/DataPermissionInterceptor.java @@ -82,7 +82,7 @@ public class DataPermissionInterceptor { @SneakyThrows public Object classHandler(ProceedingJoinPoint pjp, DataPermission dataPermission, RestController restController) { handle(dataPermission); - return pjp.proceed(pjp.getArgs()); + return proceed(pjp); } /** @@ -92,7 +92,17 @@ public class DataPermissionInterceptor { @SneakyThrows public Object methodHandler(ProceedingJoinPoint pjp, DataPermission dataPermission) { handle(dataPermission); - return pjp.proceed(pjp.getArgs()); + return proceed(pjp); + } + + private static Object proceed(ProceedingJoinPoint pjp) throws Throwable { + Object result; + try { + result = pjp.proceed(pjp.getArgs()); + } finally { + ContextInfoHolder.clear(); + } + return result; } @AfterThrowing(value = "(@within(cn.axzo.framework.datapermission.annotation.DataPermission) && @within(org.springframework.web.bind.annotation.RestController)) " +