From fd4d00a86d6a69dcf207339e5adabf8fbd1bae5b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=B5=B5=E5=BF=A0=E6=9E=97?= <170083662@qq.com> Date: Sat, 4 Apr 2026 04:26:00 +0800 Subject: [PATCH] =?UTF-8?q?feat(system):=20=E6=B7=BB=E5=8A=A0=20websopy=20?= =?UTF-8?q?=E7=94=A8=E6=88=B7=E5=90=8C=E6=AD=A5=E6=9C=8D=E5=8A=A1=E9=9B=86?= =?UTF-8?q?=E6=88=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 配置 websopy 服务地址用于用户数据同步功能 - 实现用户同步到 websopy 的接口调用逻辑 - 添加用户缓存刷新功能以保持数据一致性 - 移除 PostConstruct 初始化方式改为运行时获取配置 - 添加同步操作的空值检查和警告日志处理 --- .../common/system/service/UserSyncService.java | 18 +++++++----------- src/main/resources/application-prod.yml | 3 +++ src/main/resources/application.yml | 3 +++ 3 files changed, 13 insertions(+), 11 deletions(-) diff --git a/src/main/java/com/gxwebsoft/common/system/service/UserSyncService.java b/src/main/java/com/gxwebsoft/common/system/service/UserSyncService.java index e284fcd..a189219 100644 --- a/src/main/java/com/gxwebsoft/common/system/service/UserSyncService.java +++ b/src/main/java/com/gxwebsoft/common/system/service/UserSyncService.java @@ -10,7 +10,6 @@ import org.apache.http.HttpResponse; import org.apache.http.util.EntityUtils; import org.springframework.stereotype.Service; -import javax.annotation.PostConstruct; import javax.annotation.Resource; import java.nio.charset.StandardCharsets; import java.util.HashMap; @@ -29,16 +28,11 @@ public class UserSyncService { @Resource private ConfigProperties configProperties; - private String websopyBaseUrl; - - @PostConstruct - public void init() { - websopyBaseUrl = configProperties.getWebsopyUrl(); - if (websopyBaseUrl == null || websopyBaseUrl.isEmpty()) { - log.warn("websopyUrl 未配置,用户同步功能将不可用"); - } else { - log.info("用户同步服务初始化完成,websopy地址: {}", websopyBaseUrl); - } + /** + * 获取 websopy 基础 URL + */ + private String getWebsopyBaseUrl() { + return configProperties.getWebsopyUrl(); } /** @@ -47,6 +41,7 @@ public class UserSyncService { * @param user 用户信息 */ public void syncUserToWebsopy(User user) { + String websopyBaseUrl = getWebsopyBaseUrl(); if (websopyBaseUrl == null || websopyBaseUrl.isEmpty()) { log.warn("websopyUrl 未配置,跳过用户同步: userId={}", user.getUserId()); return; @@ -102,6 +97,7 @@ public class UserSyncService { * @param userId 用户ID */ public void refreshUserCache(Integer userId) { + String websopyBaseUrl = getWebsopyBaseUrl(); if (websopyBaseUrl == null || websopyBaseUrl.isEmpty()) { log.warn("websopyUrl 未配置,跳过刷新缓存: userId={}", userId); return; diff --git a/src/main/resources/application-prod.yml b/src/main/resources/application-prod.yml index f472de7..dc5cb9f 100644 --- a/src/main/resources/application-prod.yml +++ b/src/main/resources/application-prod.yml @@ -46,6 +46,9 @@ config: bucketDomain: https://oss.wsdns.cn aliyunDomain: https://oss-gxwebsoft.oss-cn-shenzhen.aliyuncs.com + # websopy 服务地址(用于同步用户数据) + websopyUrl: https://websopy-api.websoft.top + # 生产环境证书配置 certificate: # 生产环境使用挂载卷模式 diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml index d85d421..3693350 100644 --- a/src/main/resources/application.yml +++ b/src/main/resources/application.yml @@ -98,6 +98,9 @@ config: upload-path: /Users/gxwebsoft/Documents/uploads local-upload-path: /Users/gxwebsoft/Documents/uploads + # websopy 服务地址(用于同步用户数据) + websopyUrl: https://websopy-api.websoft.top + # 阿里云OSS云存储 endpoint: https://oss-cn-shenzhen.aliyuncs.com accessKeyId: LTAI5tGXuJku8MK7TA6gQMZw