浏览代码

Merge branch 'feature/jiayue_index' into debug

hsun 1 年之前
父节点
当前提交
4de03ebb74
共有 4 个文件被更改,包括 31 次插入29 次删除
  1. 4 27
      models/data_manage/edb_data_base.go
  2. 19 0
      models/data_manage/edb_source.go
  3. 4 1
      models/edb_data_base.go
  4. 4 1
      services/data/base_edb_lib.go

+ 4 - 27
models/data_manage/edb_data_base.go

@@ -4,32 +4,6 @@ import (
 	"eta/eta_chart_lib/utils"
 )
 
-var (
-	EdbDataTableNameMap     map[int]string // 指标来源对应数据表名
-	EdbDataAddMethodMap     map[int]string // 指标来源对应的新增指标方法
-	EdbDataRefreshMethodMap map[int]string // 指标来源对应的刷新指标方法
-	EdbSourceNameMap        map[int]string // 指标来源名称
-)
-
-// InitEdbSourceVar 初始化时加载指标来源对应信息, 避免循环中查库, 注意edb_source表修改table_name的话需要重启服务
-func InitEdbSourceVar() {
-	EdbDataTableNameMap = make(map[int]string)
-	EdbDataAddMethodMap = make(map[int]string)
-	EdbDataRefreshMethodMap = make(map[int]string)
-	EdbSourceNameMap = make(map[int]string)
-	sources, e := GetEdbSourceItemsByCondition(``, make([]interface{}, 0), []string{}, "")
-	if e != nil {
-		utils.FileLog.Info("init source table err: %s", e.Error())
-		return
-	}
-	for _, v := range sources {
-		EdbDataTableNameMap[v.EdbSourceId] = v.TableName
-		EdbDataAddMethodMap[v.EdbSourceId] = v.EdbAddMethod
-		EdbDataRefreshMethodMap[v.EdbSourceId] = v.EdbRefreshMethod
-		EdbSourceNameMap[v.EdbSourceId] = v.SourceName
-	}
-}
-
 // GetEdbDataTableName 指标数据->存储表
 func GetEdbDataTableName(source int) (tableName string) {
 	switch source {
@@ -180,7 +154,10 @@ func GetEdbDataTableName(source int) (tableName string) {
 	case utils.DATA_SOURCE_CALCULATE_RJZ: //日均值->75
 		tableName = "edb_data_calculate_rjz"
 	default:
-		tableName = EdbDataTableNameMap[source] // 没有对应的从edb_source中取
+		edbSource := EdbSourceIdMap[source]
+		if edbSource != nil {
+			tableName = edbSource.TableName
+		}
 	}
 	return
 }

+ 19 - 0
models/data_manage/edb_source.go

@@ -1,11 +1,16 @@
 package data_manage
 
 import (
+	"eta/eta_chart_lib/utils"
 	"fmt"
 	"github.com/beego/beego/v2/client/orm"
 	"strings"
 )
 
+var (
+	EdbSourceIdMap map[int]*EdbSource // 指标来源
+)
+
 // EdbSource 指标来源表
 type EdbSource struct {
 	EdbSourceId      int    `orm:"column(edb_source_id);pk"`
@@ -17,6 +22,7 @@ type EdbSource struct {
 	FromBridge       int    `description:"是否来源于桥接服务: 0-否; 1-是"`
 	BridgeFlag       string `description:"桥接服务对象标识"`
 	SourceExtend     string `description:"扩展字段做查询用"`
+	EdbCodeRequired  int    `description:"指标编码是否必填: 0-否; 1-是"`
 }
 
 // GetEdbSourceItemsByCondition 获取指标来源列表
@@ -51,3 +57,16 @@ func GetEdbSourceItemByCondition(condition string, pars []interface{}) (item *Ed
 	err = o.Raw(sql, pars).QueryRow(&item)
 	return
 }
+
+// InitEdbSourceVar 初始化时加载指标来源对应信息, 避免循环中查库, 注意edb_source表修改table_name的话需要重启服务
+func InitEdbSourceVar() {
+	EdbSourceIdMap = make(map[int]*EdbSource)
+	sources, e := GetEdbSourceItemsByCondition(``, make([]interface{}, 0), []string{}, "")
+	if e != nil {
+		utils.FileLog.Info("init source table err: %s", e.Error())
+		return
+	}
+	for _, v := range sources {
+		EdbSourceIdMap[v.EdbSourceId] = v
+	}
+}

+ 4 - 1
models/edb_data_base.go

@@ -154,7 +154,10 @@ func GetEdbDataTableName(source int) (tableName string) {
 	case utils.DATA_SOURCE_CALCULATE_RJZ: //日均值->75
 		tableName = "edb_data_calculate_rjz"
 	default:
-		tableName = data_manage.EdbDataTableNameMap[source] // 没有对应的从edb_source中取
+		edbSource := data_manage.EdbSourceIdMap[source]
+		if edbSource != nil {
+			tableName = edbSource.TableName
+		}
 	}
 	return
 }

+ 4 - 1
services/data/base_edb_lib.go

@@ -125,7 +125,10 @@ func RefreshEdbData(edbInfoId, source int, edbCode, startDate string) (resp *mod
 	case utils.DATA_SOURCE_FUBAO:
 		urlStr = "fubao/refresh"
 	default:
-		urlStr = data_manage.EdbDataRefreshMethodMap[source] // 没有对应的从edb_source中取
+		edbSource := data_manage.EdbSourceIdMap[source]
+		if edbSource != nil {
+			urlStr = edbSource.EdbRefreshMethod
+		}
 	}
 	if urlStr == "" {
 		err = fmt.Errorf(fmt.Sprint("source:", source, ";未实现该指标的刷新接口,请联系管理员"))