|
@@ -2,6 +2,7 @@ package controllers
|
|
|
|
|
|
import (
|
|
|
"encoding/json"
|
|
|
+ "errors"
|
|
|
"eta/eta_index_lib/logic"
|
|
|
"eta/eta_index_lib/models"
|
|
|
"eta/eta_index_lib/services"
|
|
@@ -68,23 +69,12 @@ func (this *WindController) Add() {
|
|
|
}
|
|
|
|
|
|
if windUrl == `` {
|
|
|
- // 先配置中获取,如果有指定配置的话,那么取配置中的数据
|
|
|
- tmpConfig, err := models.GetConfigDetailByCode("wind_data_url")
|
|
|
- if err != nil && err.Error() != utils.ErrNoRow() {
|
|
|
- br.Msg = "获取配置的wind地址失败!"
|
|
|
- br.ErrMsg = "获取配置的wind地址失败,err:" + err.Error()
|
|
|
+ windUrl, err = GetServerUrl(req.EdbCode)
|
|
|
+ if err != nil {
|
|
|
+ br.Msg = "获取可以使用的wind地址失败!"
|
|
|
+ br.ErrMsg = "获取可以使用的wind地址失败,err:" + err.Error()
|
|
|
return
|
|
|
}
|
|
|
- if tmpConfig != nil {
|
|
|
- windUrl = tmpConfig.ConfigValue
|
|
|
- } else {
|
|
|
- windUrl, err = GetServerUrl(req.EdbCode)
|
|
|
- if err != nil {
|
|
|
- br.Msg = "获取使用的wind地址失败!"
|
|
|
- br.ErrMsg = "获取使用的wind地址失败,err:" + err.Error()
|
|
|
- return
|
|
|
- }
|
|
|
- }
|
|
|
}
|
|
|
|
|
|
if windUrl == `` {
|
|
@@ -233,6 +223,28 @@ func (this *WindController) Refresh() {
|
|
|
|
|
|
// GetServerUrl 获取服务器地址
|
|
|
func GetServerUrl(edbCode string) (windUrl string, err error) {
|
|
|
+ defer func() {
|
|
|
+ if err != nil && windUrl != `` {
|
|
|
+ //windUrl = `http://datawind.hzinsights.com:8040/`
|
|
|
+ // 设置缓存
|
|
|
+ cacheKey := utils.CACHE_WIND_URL + ":" + edbCode
|
|
|
+ _ = utils.Rc.SetNX(cacheKey, windUrl, utils.GetTodayLastSecond())
|
|
|
+ }
|
|
|
+ }()
|
|
|
+
|
|
|
+ // 先配置中获取,如果有指定配置的话,那么取配置中的数据
|
|
|
+ tmpConfig, err := models.GetConfigDetailByCode("wind_data_url")
|
|
|
+ if err != nil && err.Error() != utils.ErrNoRow() {
|
|
|
+ err = errors.New("获取配置的wind地址失败,err:" + err.Error())
|
|
|
+ return
|
|
|
+ }
|
|
|
+ err = nil
|
|
|
+ if tmpConfig != nil {
|
|
|
+ windUrl = tmpConfig.ConfigValue
|
|
|
+ return
|
|
|
+ }
|
|
|
+
|
|
|
+ // 配置中没有的话,那么就从分组获取
|
|
|
list, err := models.GetServerUrlCountGroupByServerUrl()
|
|
|
if err != nil {
|
|
|
return
|
|
@@ -254,9 +266,5 @@ func GetServerUrl(edbCode string) (windUrl string, err error) {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- //windUrl = `http://datawind.hzinsights.com:8040/`
|
|
|
- // 设置缓存
|
|
|
- cacheKey := utils.CACHE_WIND_URL + ":" + edbCode
|
|
|
- _ = utils.Rc.SetNX(cacheKey, windUrl, utils.GetTodayLastSecond())
|
|
|
return
|
|
|
}
|