From a6c26b7bca10cfccd11dcb4c684775d5b7441d6c Mon Sep 17 00:00:00 2001 From: lbw Date: Sun, 29 Nov 2020 12:01:23 +0800 Subject: [PATCH] =?UTF-8?q?:sparkles:=20Introducing=20new=20features.=20#2?= =?UTF-8?q?034=20=E5=AE=A2=E6=88=B7=E7=AB=AF=E7=AE=A1=E7=90=86=20=E5=A2=9E?= =?UTF-8?q?=E5=8A=A0=E9=AA=8C=E8=AF=81=E7=A0=81=E3=80=81=E5=89=8D=E7=AB=AF?= =?UTF-8?q?=E7=99=BB=E5=BD=95=E5=8A=A0=E5=AF=86=E6=8E=A7=E5=88=B6=E5=8A=9F?= =?UTF-8?q?=E8=83=BD=20=20=20=E4=BB=A3=E7=A0=81=E4=BC=98=E5=8C=96=2096a5d4?= =?UTF-8?q?c3f56c1decc1606dc743b0122438f9693e?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../api/entity/SysOauthClientDetails.java | 5 --- .../admin/config/ClientDetailsInitRunner.java | 33 ++++++++----------- 2 files changed, 14 insertions(+), 24 deletions(-) diff --git a/pigx-upms/pigx-upms-api/src/main/java/com/pig4cloud/pigx/admin/api/entity/SysOauthClientDetails.java b/pigx-upms/pigx-upms-api/src/main/java/com/pig4cloud/pigx/admin/api/entity/SysOauthClientDetails.java index 9011f377b..42acda534 100644 --- a/pigx-upms/pigx-upms-api/src/main/java/com/pig4cloud/pigx/admin/api/entity/SysOauthClientDetails.java +++ b/pigx-upms/pigx-upms-api/src/main/java/com/pig4cloud/pigx/admin/api/entity/SysOauthClientDetails.java @@ -125,9 +125,4 @@ public class SysOauthClientDetails extends Model { @ApiModelProperty(value = "删除标记,1:已删除,0:正常") private String delFlag; - /** - * 租户编号 - */ - private Integer tenantId; - } diff --git a/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/config/ClientDetailsInitRunner.java b/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/config/ClientDetailsInitRunner.java index 127d9b6c0..58f45cf4a 100644 --- a/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/config/ClientDetailsInitRunner.java +++ b/pigx-upms/pigx-upms-biz/src/main/java/com/pig4cloud/pigx/admin/config/ClientDetailsInitRunner.java @@ -1,7 +1,6 @@ package com.pig4cloud.pigx.admin.config; import cn.hutool.core.util.StrUtil; -import com.pig4cloud.pigx.admin.api.entity.SysOauthClientDetails; import com.pig4cloud.pigx.admin.service.SysOauthClientDetailsService; import com.pig4cloud.pigx.admin.service.SysTenantService; import com.pig4cloud.pigx.common.core.constant.CacheConstants; @@ -16,9 +15,6 @@ import org.springframework.data.redis.core.RedisTemplate; import org.springframework.scheduling.annotation.Async; import org.springframework.stereotype.Service; -import java.util.ArrayList; -import java.util.List; - /** * @author lengleng * @date 2020/11/18 @@ -42,22 +38,21 @@ public class ClientDetailsInitRunner { @EventListener({ WebServerInitializedEvent.class, ClientDetailsInitEvent.class }) public void initClientDetails() { log.debug("初始化客户端信息开始 "); - List clientDetailsList = new ArrayList<>(); - // 查询全部租户的客户端定义信息 - tenantService.list().forEach(tenant -> clientDetailsList - .addAll(TenantBroker.applyAs(tenant.getId(), tenantId -> clientDetailsService.list()))); - - for (SysOauthClientDetails client : clientDetailsList) { - if (StrUtil.isBlank(client.getAdditionalInformation())) { - continue; - } - // 拼接key 1:client_config_flag:clinetId - String key = String.format("%s:%s:%s", client.getTenantId(), CacheConstants.CLIENT_FLAG, - client.getClientId()); - // hashkey clientId - redisTemplate.opsForValue().set(key, client.getAdditionalInformation()); - } + // 1. 查询全部租户循环遍历 + tenantService.list().forEach(tenant -> { + TenantBroker.runAs(tenant.getId(), tenantId -> { + // 2. 查询当前租户的所有客户端信息 (排除客户端扩展信息为空) + clientDetailsService.list().stream().filter(client -> { + return StrUtil.isNotBlank(client.getAdditionalInformation()); + }).forEach(client -> { + // 3. 拼接key 1:client_config_flag:clinetId + String key = String.format("%s:%s:%s", tenantId, CacheConstants.CLIENT_FLAG, client.getClientId()); + // 4. hashkey clientId 保存客户端信息 + redisTemplate.opsForValue().set(key, client.getAdditionalInformation()); + }); + }); + }); log.debug("初始化客户端信息结束 "); }