From 4d7dbb7bdce7dd40e9ca7d6bad3832110199d56c Mon Sep 17 00:00:00 2001 From: zlt Date: Thu, 5 Sep 2019 21:34:33 +0800 Subject: [PATCH] =?UTF-8?q?fix=20url=E6=9D=83=E9=99=90=E8=AE=A4=E8=AF=81?= =?UTF-8?q?=E6=97=B6=E7=A7=9F=E6=88=B7id=E8=8E=B7=E5=8F=96=E4=B8=8D?= =?UTF-8?q?=E5=88=B0=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/service/impl/DefaultPermissionServiceImpl.java | 5 +++++ .../com/central/common/interceptor/TenantInterceptor.java | 2 ++ .../zuul-gateway/src/main/java/com/central/GatewayApp.java | 2 ++ 3 files changed, 9 insertions(+) diff --git a/zlt-commons/zlt-auth-client-spring-boot-starter/src/main/java/com/central/oauth2/common/service/impl/DefaultPermissionServiceImpl.java b/zlt-commons/zlt-auth-client-spring-boot-starter/src/main/java/com/central/oauth2/common/service/impl/DefaultPermissionServiceImpl.java index b1f4ce4..07f5bdf 100644 --- a/zlt-commons/zlt-auth-client-spring-boot-starter/src/main/java/com/central/oauth2/common/service/impl/DefaultPermissionServiceImpl.java +++ b/zlt-commons/zlt-auth-client-spring-boot-starter/src/main/java/com/central/oauth2/common/service/impl/DefaultPermissionServiceImpl.java @@ -3,6 +3,7 @@ package com.central.oauth2.common.service.impl; import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.util.StrUtil; import com.central.common.constant.CommonConstant; +import com.central.common.context.TenantContextHolder; import com.central.common.model.SysMenu; import com.central.oauth2.common.properties.SecurityProperties; import com.central.oauth2.common.service.IPermissionService; @@ -78,6 +79,10 @@ public abstract class DefaultPermissionServiceImpl implements IPermissionService return false; } + //保存租户信息 + String clientId = auth2Authentication.getOAuth2Request().getClientId(); + TenantContextHolder.setTenant(clientId); + String roleCodes = grantedAuthorityList.stream().map(SimpleGrantedAuthority::getAuthority).collect(Collectors.joining(", ")); List menuList = findMenuByRoleCodes(roleCodes); for (SysMenu menu : menuList) { diff --git a/zlt-commons/zlt-common-spring-boot-starter/src/main/java/com/central/common/interceptor/TenantInterceptor.java b/zlt-commons/zlt-common-spring-boot-starter/src/main/java/com/central/common/interceptor/TenantInterceptor.java index 813282c..4f7aeb5 100644 --- a/zlt-commons/zlt-common-spring-boot-starter/src/main/java/com/central/common/interceptor/TenantInterceptor.java +++ b/zlt-commons/zlt-common-spring-boot-starter/src/main/java/com/central/common/interceptor/TenantInterceptor.java @@ -26,6 +26,8 @@ public class TenantInterceptor implements HandlerInterceptor { //保存租户id if(StrUtil.isNotEmpty(tenantId)){ TenantContextHolder.setTenant(tenantId); + } else { + TenantContextHolder.clear(); } return true; } diff --git a/zlt-gateway/zuul-gateway/src/main/java/com/central/GatewayApp.java b/zlt-gateway/zuul-gateway/src/main/java/com/central/GatewayApp.java index de8313b..2ee0823 100644 --- a/zlt-gateway/zuul-gateway/src/main/java/com/central/GatewayApp.java +++ b/zlt-gateway/zuul-gateway/src/main/java/com/central/GatewayApp.java @@ -1,5 +1,6 @@ package com.central; +import com.central.common.ribbon.annotation.EnableFeignInterceptor; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.cloud.client.discovery.EnableDiscoveryClient; @@ -11,6 +12,7 @@ import org.springframework.cloud.openfeign.EnableFeignClients; */ @EnableZuulProxy @EnableFeignClients +@EnableFeignInterceptor @EnableDiscoveryClient @SpringBootApplication public class GatewayApp { -- GitLab