From 04597fad6c0ff29b7bcac30fa6265961264bef62 Mon Sep 17 00:00:00 2001 From: chenbowen Date: Tue, 28 Oct 2025 17:32:42 +0800 Subject: [PATCH] =?UTF-8?q?1.=20=E7=BB=9F=E4=B8=80=E7=BD=91=E5=85=B3?= =?UTF-8?q?=E6=9C=AA=E5=91=BD=E4=B8=AD=E7=BC=93=E5=AD=98=E6=97=B6=EF=BC=8C?= =?UTF-8?q?=E8=BF=9B=E8=A1=8C=E5=85=9C=E5=BA=95=E6=9F=A5=E8=AF=A2=202.=20l?= =?UTF-8?q?oginUser=20=E6=96=B0=E5=A2=9E=20mobile=20username=20=E4=BD=9C?= =?UTF-8?q?=E4=B8=BA=20userInfo=20=E6=89=A9=E5=B1=95=E5=86=85=E5=AE=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../zt/plat/framework/security/core/LoginUser.java | 4 +++- .../integration/gateway/core/ApiFlowDispatcher.java | 13 +++++++++++-- .../service/oauth2/OAuth2TokenServiceImpl.java | 2 ++ 3 files changed, 16 insertions(+), 3 deletions(-) diff --git a/zt-framework/zt-spring-boot-starter-security/src/main/java/com/zt/plat/framework/security/core/LoginUser.java b/zt-framework/zt-spring-boot-starter-security/src/main/java/com/zt/plat/framework/security/core/LoginUser.java index 5d483513..6cc433ca 100644 --- a/zt-framework/zt-spring-boot-starter-security/src/main/java/com/zt/plat/framework/security/core/LoginUser.java +++ b/zt-framework/zt-spring-boot-starter-security/src/main/java/com/zt/plat/framework/security/core/LoginUser.java @@ -1,8 +1,8 @@ package com.zt.plat.framework.security.core; import cn.hutool.core.map.MapUtil; -import com.zt.plat.framework.common.enums.UserTypeEnum; import com.fasterxml.jackson.annotation.JsonIgnore; +import com.zt.plat.framework.common.enums.UserTypeEnum; import lombok.Data; import java.time.LocalDateTime; @@ -20,6 +20,8 @@ public class LoginUser { public static final String INFO_KEY_NICKNAME = "nickname"; public static final String INFO_KEY_TENANT_ID = "tenantId"; + public static final String INFO_KEY_USERNAME = "username"; + public static final String INFO_KEY_PHONE = "phone"; // 用户关联的公司 Id public static final String INFO_KEY_COMPANY_IDS = "companyIds"; // 用户关联的部门 Id diff --git a/zt-module-databus/zt-module-databus-server/src/main/java/com/zt/plat/module/databus/framework/integration/gateway/core/ApiFlowDispatcher.java b/zt-module-databus/zt-module-databus-server/src/main/java/com/zt/plat/module/databus/framework/integration/gateway/core/ApiFlowDispatcher.java index 5ff7a99a..ce07a981 100644 --- a/zt-module-databus/zt-module-databus-server/src/main/java/com/zt/plat/module/databus/framework/integration/gateway/core/ApiFlowDispatcher.java +++ b/zt-module-databus/zt-module-databus-server/src/main/java/com/zt/plat/module/databus/framework/integration/gateway/core/ApiFlowDispatcher.java @@ -24,8 +24,7 @@ public class ApiFlowDispatcher { private final MessagingTemplate messagingTemplate; public ApiInvocationContext dispatch(String apiCode, String version, ApiInvocationContext context) { - MessageChannel channel = integrationFlowManager.locateInputChannel(apiCode, version) - .orElseThrow(() -> ServiceExceptionUtil.exception(API_FLOW_NOT_FOUND, apiCode, version)); + MessageChannel channel = requireInputChannel(apiCode, version); Message message = MessageBuilder.withPayload(context) .setHeader("apiCode", apiCode) .setHeader("version", version) @@ -36,4 +35,14 @@ public class ApiFlowDispatcher { } return (ApiInvocationContext) reply.getPayload(); } + + private MessageChannel requireInputChannel(String apiCode, String version) { + // 未命中时,进行一次兜底补偿查询 + return integrationFlowManager.locateInputChannel(apiCode, version) + .or(() -> { + integrationFlowManager.refresh(apiCode, version); + return integrationFlowManager.locateInputChannel(apiCode, version); + }) + .orElseThrow(() -> ServiceExceptionUtil.exception(API_FLOW_NOT_FOUND, apiCode, version)); + } } diff --git a/zt-module-system/zt-module-system-server/src/main/java/com/zt/plat/module/system/service/oauth2/OAuth2TokenServiceImpl.java b/zt-module-system/zt-module-system-server/src/main/java/com/zt/plat/module/system/service/oauth2/OAuth2TokenServiceImpl.java index 10e6bdbe..a5c7d47d 100644 --- a/zt-module-system/zt-module-system-server/src/main/java/com/zt/plat/module/system/service/oauth2/OAuth2TokenServiceImpl.java +++ b/zt-module-system/zt-module-system-server/src/main/java/com/zt/plat/module/system/service/oauth2/OAuth2TokenServiceImpl.java @@ -201,6 +201,8 @@ public class OAuth2TokenServiceImpl implements OAuth2TokenService { AdminUserDO user = adminUserService.getUser(userId); return MapUtil.builder(LoginUser.INFO_KEY_NICKNAME, user.getNickname()) .put(LoginUser.INFO_KEY_TENANT_ID, user.getTenantId().toString()) + .put(LoginUser.INFO_KEY_USERNAME, user.getUsername()) + .put(LoginUser.INFO_KEY_PHONE, user.getMobile()) .put(LoginUser.INFO_KEY_COMPANY_IDS, CollUtil.isEmpty(user.getCompanyIds()) ? "[]" : JsonUtils.toJsonString(user.getCompanyIds())) .put(LoginUser.INFO_KEY_DEPT_IDS, CollUtil.isEmpty(user.getDeptIds()) ? "[]" : JsonUtils.toJsonString(user.getDeptIds())) .put(LoginUser.INFO_KEY_COMPANY_DEPT_SET, CollUtil.isEmpty(user.getCompanyDeptInfos()) ? "[]" : JsonUtils.toJsonString(user.getCompanyDeptInfos()))