diff --git a/soul-api/internal/handler/ckb.go b/soul-api/internal/handler/ckb.go index e0c66d2e..15158d45 100644 --- a/soul-api/internal/handler/ckb.go +++ b/soul-api/internal/handler/ckb.go @@ -25,6 +25,29 @@ const ckbAPIURL = "https://ckbapi.quwanzhi.com/v1/api/scenarios" var ckbSourceMap = map[string]string{"team": "团队招募", "investor": "资源对接", "mentor": "导师顾问", "partner": "创业合伙"} var ckbTagsMap = map[string]string{"team": "切片团队,团队招募", "investor": "资源对接,资源群", "mentor": "导师顾问,咨询服务", "partner": "创业合伙,创业伙伴"} +func getCKBRuntimeConfig() (apiKey string, apiURL string, docNotes string) { + apiKey = ckbAPIKey + apiURL = ckbAPIURL + var cfg model.SystemConfig + if err := database.DB().Where("config_key = ?", "ckb_config").First(&cfg).Error; err != nil { + return + } + var m map[string]interface{} + if err := json.Unmarshal(cfg.ConfigValue, &m); err != nil { + return + } + if v, ok := m["apiKey"].(string); ok && strings.TrimSpace(v) != "" { + apiKey = strings.TrimSpace(v) + } + if v, ok := m["apiUrl"].(string); ok && strings.TrimSpace(v) != "" { + apiURL = strings.TrimSpace(v) + } + if v, ok := m["docNotes"].(string); ok { + docNotes = v + } + return +} + // ckbSign 与 next-project app/api/ckb/join 一致:排除 sign/apiKey/portrait,空值跳过,按键升序拼接值,MD5(拼接串) 再 MD5(结果+apiKey) func ckbSign(params map[string]interface{}, apiKey string) string { keys := make([]string, 0, len(params))