Browse Source

定时任务刷新重复刷新过滤

kobe6258 4 days ago
parent
commit
1b8e30a2cc
2 changed files with 24 additions and 23 deletions
  1. 8 7
      models/data_manage/edb_info.go
  2. 16 16
      services/data/edb_info.go

+ 8 - 7
models/data_manage/edb_info.go

@@ -398,13 +398,14 @@ func ModifyEdbUpdateStatus(edbIdList []int, indexCodeList []string, calculateEdb
 	}
 	return
 }
-func StopRefreshCalculateEdbIndex(edbInfoId int) (err error) {
-	o := global.DbMap[utils.DbNameIndex]
-	// 更改指标的更新状态
-	sql := ` UPDATE edb_info SET no_update = 1,set_update_time=? WHERE edb_type =2 AND edb_info_id = ? AND  no_update = 0`
-	err = o.Exec(sql, time.Now(), edbInfoId).Error
-	return
-}
+
+//func StopRefreshCalculateEdbIndex(edbInfoId int) (err error) {
+//	o := global.DbMap[utils.DbNameIndex]
+//	// 更改指标的更新状态
+//	sql := ` UPDATE edb_info SET no_update = 1,set_update_time=? WHERE edb_type =2 AND edb_info_id = ? AND  no_update = 0`
+//	err = o.Exec(sql, time.Now(), edbInfoId).Error
+//	return
+//}
 
 // GetEdbInfoByIdList 根据指标id集合 获取 指标列表
 func GetEdbInfoByIdList(edbInfoIdList []int) (items []*EdbInfo, err error) {

+ 16 - 16
services/data/edb_info.go

@@ -297,22 +297,22 @@ func RefreshDataFromCalculateAll() (err error) {
 			continue
 		}
 		fmt.Println(v.EdbInfoId, v.EdbCode, v.EdbName, v.SourceName, source)
-		//对依赖指标是基础指标的且基础指标停用,停用当前计算指标,因为item是按照edb_Info_id升序,所以默认层级关系是由低而上,所以不需要考虑嵌套,只要考虑当前的下一级依赖即可
-		mappings, err := data_manage.GetEdbInfoCalculateMappingListByEdbInfoId(v.EdbInfoId)
-		if err != nil {
-			utils.FileLog.Error("[获取计算指标的依赖指标失败,不刷新指标,CODE:" + v.EdbCode + "],err:" + err.Error())
-			continue
-		}
-		for _, mapping := range mappings {
-			if mapping.FromEdbInfoId > 0 && mapping.NoUpdate == 1 {
-				utils.FileLog.Info("依赖指标停用,依赖指标ID:" + mapping.FromEdbCode + ",停用当前计算指标,CODE:" + v.EdbCode)
-				stopErr := data_manage.StopRefreshCalculateEdbIndex(v.EdbInfoId)
-				if stopErr != nil {
-					utils.FileLog.Error(fmt.Sprintf("停用计算指标失败,ID:%d;指标编码:%s;err:%s", mapping.EdbInfoId, mapping.EdbCode, stopErr.Error()))
-				}
-				continue
-			}
-		}
+		////对依赖指标是基础指标的且基础指标停用,停用当前计算指标,因为item是按照edb_Info_id升序,所以默认层级关系是由低而上,所以不需要考虑嵌套,只要考虑当前的下一级依赖即可
+		//mappings, err := data_manage.GetEdbInfoCalculateMappingListByEdbInfoId(v.EdbInfoId)
+		//if err != nil {
+		//	utils.FileLog.Error("[获取计算指标的依赖指标失败,不刷新指标,CODE:" + v.EdbCode + "],err:" + err.Error())
+		//	continue
+		//}
+		//for _, mapping := range mappings {
+		//	if mapping.FromEdbInfoId > 0 && mapping.NoUpdate == 1 {
+		//		utils.FileLog.Info("依赖指标停用,依赖指标ID:" + mapping.FromEdbCode + ",停用当前计算指标,CODE:" + v.EdbCode)
+		//		stopErr := data_manage.StopRefreshCalculateEdbIndex(v.EdbInfoId)
+		//		if stopErr != nil {
+		//			utils.FileLog.Error(fmt.Sprintf("停用计算指标失败,ID:%d;指标编码:%s;err:%s", mapping.EdbInfoId, mapping.EdbCode, stopErr.Error()))
+		//		}
+		//		continue
+		//	}
+		//}
 		fmt.Println("RefreshEdbCalculateData", v.EdbInfoId, v.EdbCode, startDate)
 		result, tmpErr := RefreshEdbCalculateData(v.EdbInfoId, v.EdbCode, startDate)
 		if tmpErr != nil {