소스 검색

只查询图上的指标数据

xyxie 1 개월 전
부모
커밋
a5a8710aeb
1개의 변경된 파일5개의 추가작업 그리고 0개의 파일을 삭제
  1. 5 0
      services/chart_info.go

+ 5 - 0
services/chart_info.go

@@ -139,11 +139,13 @@ func GetEdbListByEdbInfoId(edbInfoIds []int) (edbInfoList []*models.EdbInfo, edb
 	//查询所有指标数据
 	//查询这个指标相关的mapping信息放到数组里,
 	//将得到的指标ID信息放到数组里
+	chartEdbInfoIdMap := make(map[int]struct{}) //只查询图表上直接相关的指标数据
 	hasFindMap := make(map[int]struct{})
 	edbInfoIdMap := make(map[int]struct{})
 	edbMappingList = make([]*models.EdbInfoCalculateMapping, 0)
 	edbMappingMap := make(map[int]struct{})
 	for _, edbInfoId := range edbInfoIds {
+		chartEdbInfoIdMap[edbInfoId] = struct{}{}
 		edbMappingList, err = traceEdbInfoByEdbInfoId(edbInfoId, hasFindMap, edbInfoIdMap, edbMappingList, edbMappingMap)
 		if err != nil {
 			return
@@ -162,6 +164,9 @@ func GetEdbListByEdbInfoId(edbInfoIds []int) (edbInfoList []*models.EdbInfo, edb
 	}
 
 	for _, v := range edbInfoList {
+		if _, ok := chartEdbInfoIdMap[v.EdbInfoId]; !ok {
+			continue
+		}
 		var dataList []*models.EdbDataBase
 		if v.Source == utils.DATA_SOURCE_BUSINESS && utils.UseMongo {
 			dataList, err = models.GetEdbDataBaseMongoByEdbInfoId(v.EdbInfoId, v.Source, v.SubSource)