|
|
@@ -2,9 +2,9 @@ package com.fs.config.cloud;
|
|
|
|
|
|
import com.alibaba.fastjson.JSONObject;
|
|
|
import com.fs.common.utils.StringUtils;
|
|
|
-import com.fs.common.utils.spring.SpringUtils;
|
|
|
import com.fs.config.saas.ProjectConfig;
|
|
|
import com.fs.core.config.TenantConfigContext;
|
|
|
+import com.fs.system.mapper.SysConfigMapper;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Component;
|
|
|
|
|
|
@@ -14,19 +14,23 @@ import java.util.Arrays;
|
|
|
* 云托管相关配置访问器。
|
|
|
*
|
|
|
* 优先从当前租户的 {@link TenantConfigContext} 中读取 cloud_host/headerImg,
|
|
|
- * 若租户未配置,则回退到全局 {@link ProjectConfig}。
|
|
|
+ * 若租户未配置,则回退到从数据库查询的全局 ProjectConfig。
|
|
|
*/
|
|
|
@Component
|
|
|
public class CloudHostProper {
|
|
|
|
|
|
- /**
|
|
|
- * 全局配置(application-*.yml 中的 projectConfig),用于租户未配置时兜底。
|
|
|
- */
|
|
|
- private final ProjectConfig globalProjectConfig;
|
|
|
+ private final SysConfigMapper sysConfigMapper;
|
|
|
|
|
|
@Autowired
|
|
|
- public CloudHostProper(ProjectConfig projectConfig) {
|
|
|
- this.globalProjectConfig = projectConfig;
|
|
|
+ public CloudHostProper(SysConfigMapper sysConfigMapper) {
|
|
|
+ this.sysConfigMapper = sysConfigMapper;
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 获取全局配置(从数据库查询)
|
|
|
+ */
|
|
|
+ private ProjectConfig getGlobalProjectConfig() {
|
|
|
+ return ProjectConfig.getFromDB(sysConfigMapper);
|
|
|
}
|
|
|
|
|
|
private JSONObject currentTenantCfg() {
|
|
|
@@ -49,6 +53,7 @@ public class CloudHostProper {
|
|
|
}
|
|
|
}
|
|
|
// 租户未配置时回退到全局配置
|
|
|
+ ProjectConfig globalProjectConfig = getGlobalProjectConfig();
|
|
|
if (globalProjectConfig != null && globalProjectConfig.getCloudHost() != null) {
|
|
|
return globalProjectConfig.getCloudHost().getCompanyName();
|
|
|
}
|
|
|
@@ -66,6 +71,7 @@ public class CloudHostProper {
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
+ ProjectConfig globalProjectConfig = getGlobalProjectConfig();
|
|
|
if (globalProjectConfig != null && globalProjectConfig.getHeaderImg() != null) {
|
|
|
return globalProjectConfig.getHeaderImg().getImgUrl();
|
|
|
}
|
|
|
@@ -87,6 +93,7 @@ public class CloudHostProper {
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
+ ProjectConfig globalProjectConfig = getGlobalProjectConfig();
|
|
|
if (globalProjectConfig != null && globalProjectConfig.getCloudHost() != null) {
|
|
|
return globalProjectConfig.getCloudHost().getProjectCode();
|
|
|
}
|
|
|
@@ -107,6 +114,7 @@ public class CloudHostProper {
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
+ ProjectConfig globalProjectConfig = getGlobalProjectConfig();
|
|
|
if (globalProjectConfig != null && globalProjectConfig.getCloudHost() != null) {
|
|
|
return globalProjectConfig.getCloudHost().getSpaceName();
|
|
|
}
|
|
|
@@ -127,6 +135,7 @@ public class CloudHostProper {
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
+ ProjectConfig globalProjectConfig = getGlobalProjectConfig();
|
|
|
if (globalProjectConfig != null && globalProjectConfig.getCloudHost() != null) {
|
|
|
return globalProjectConfig.getCloudHost().getVolcengineUrl();
|
|
|
}
|