Browse Source

fix:统一调用移除没有权限的图表的方法

Roc 1 year ago
parent
commit
844edcc378

+ 9 - 56
controllers/data_manage/chart_classify.go

@@ -95,7 +95,7 @@ func (this *ChartClassifyController) ChartClassifyListV2() {
 			return
 		}
 		// 移除没有权限的图表
-		allNodes := handleNoPermissionChart(resp.AllNodes, noPermissionChartIdMap)
+		allNodes := data.HandleNoPermissionChart(resp.AllNodes, noPermissionChartIdMap)
 		resp.AllNodes = allNodes
 
 		br.Ret = 200
@@ -110,11 +110,11 @@ func (this *ChartClassifyController) ChartClassifyListV2() {
 	key := utils.CACHE_CHART_CLASSIFY
 	if utils.Re == nil {
 		if utils.Re == nil && utils.Rc.IsExist(key) {
-			if data, err1 := utils.Rc.RedisBytes(key); err1 == nil {
-				err := json.Unmarshal(data, &resp)
+			if redisData, err1 := utils.Rc.RedisBytes(key); err1 == nil {
+				err := json.Unmarshal(redisData, &resp)
 				if err == nil && resp != nil {
 					// 移除没有权限的图表
-					allNodes := handleNoPermissionChart(resp.AllNodes, noPermissionChartIdMap)
+					allNodes := data.HandleNoPermissionChart(resp.AllNodes, noPermissionChartIdMap)
 					resp.AllNodes = allNodes
 
 					br.Ret = 200
@@ -185,12 +185,12 @@ func (this *ChartClassifyController) ChartClassifyListV2() {
 
 	// 将数据加入缓存
 	if utils.Re == nil {
-		data, _ := json.Marshal(resp)
-		utils.Rc.Put(key, data, 2*time.Hour)
+		redisData, _ := json.Marshal(resp)
+		utils.Rc.Put(key, redisData, 2*time.Hour)
 	}
 
 	// 移除没有权限的图表
-	allNodes := handleNoPermissionChart(resp.AllNodes, noPermissionChartIdMap)
+	allNodes := data.HandleNoPermissionChart(resp.AllNodes, noPermissionChartIdMap)
 	resp.AllNodes = allNodes
 
 	br.Ret = 200
@@ -248,53 +248,6 @@ func getChartClassifyListForMe(adminInfo system.Admin, resp *data_manage.ChartCl
 	return
 }
 
-// handleNoPermissionChart 图表列表返回,将没有权限的图表移除
-func handleNoPermissionChart(allNodes []*data_manage.ChartClassifyItems, noPermissionChartIdMap map[int]bool) (newAllNodes []*data_manage.ChartClassifyItems) {
-	// 移除没有权限的图表
-	newAllNodes = make([]*data_manage.ChartClassifyItems, 0)
-	for _, node := range allNodes {
-		// 二级分类
-		tmpNodeInfo := *node
-		tmpNodeList := make([]*data_manage.ChartClassifyItems, 0)
-		if node.Children != nil {
-			for _, chartList := range node.Children {
-				tmpInfo := *chartList
-				tmpList := make([]*data_manage.ChartClassifyItems, 0)
-
-				if chartList.Children != nil {
-					for _, chartInfo := range chartList.Children {
-						thirdInfo := *chartInfo
-						thirdList := make([]*data_manage.ChartClassifyItems, 0)
-						// 如果指标不可见,那么就不返回该指标
-						if _, ok := noPermissionChartIdMap[chartInfo.ChartInfoId]; ok {
-							continue
-						}
-						tmpList = append(tmpList, chartInfo)
-
-						if chartInfo.Children != nil {
-							for _, thirdChart := range chartInfo.Children {
-								// 如果指标不可见,那么就不返回该指标
-								if _, ok := noPermissionChartIdMap[chartInfo.ChartInfoId]; ok {
-									continue
-								}
-								thirdList = append(thirdList, thirdChart)
-							}
-						}
-						thirdInfo.Children = thirdList
-						tmpList = append(tmpList, &thirdInfo)
-					}
-				}
-				tmpInfo.Children = tmpList
-				tmpNodeList = append(tmpNodeList, &tmpInfo)
-			}
-		}
-		tmpNodeInfo.Children = tmpNodeList
-		newAllNodes = append(newAllNodes, &tmpNodeInfo)
-	}
-
-	return
-}
-
 // ChartClassifyItems
 // @Title 获取所有图表分类接口-不包含图表
 // @Description 获取所有图表分类接口-不包含图表
@@ -1015,7 +968,7 @@ func (this *ChartClassifyController) ChartClassifyChartListV2() {
 			return
 		}
 		// 移除没有权限的图表
-		allNodes := handleNoPermissionChart(allChartInfo, noPermissionChartIdMap)
+		allNodes := data.HandleNoPermissionChart(allChartInfo, noPermissionChartIdMap)
 		resp.AllNodes = allNodes
 
 		br.Ret = 200
@@ -1033,7 +986,7 @@ func (this *ChartClassifyController) ChartClassifyChartListV2() {
 		return
 	}
 	// 移除没有权限的图表
-	allNodes := handleNoPermissionChart(allChartInfo, noPermissionChartIdMap)
+	allNodes := data.HandleNoPermissionChart(allChartInfo, noPermissionChartIdMap)
 
 	for k, item := range allNodes {
 		item.Button = data.GetChartOpButton(this.SysUser, item.SysUserId)

+ 1 - 27
controllers/data_manage/correlation/correlation_chart_classify.go

@@ -104,7 +104,7 @@ func (this *CorrelationChartClassifyController) ChartClassifyList() {
 	}
 
 	// 移除没有权限的图表
-	allNodes := handleNoPermissionChart(rootList, noPermissionChartIdMap)
+	allNodes := data.HandleNoPermissionChart(rootList, noPermissionChartIdMap)
 	resp.AllNodes = allNodes
 
 	br.Ret = 200
@@ -162,32 +162,6 @@ func getChartClassifyListForMe(adminInfo system.Admin, resp *data_manage.ChartCl
 	return
 }
 
-// handleNoPermissionChart 图表列表返回,将没有权限的图表移除
-func handleNoPermissionChart(allNodes []*data_manage.ChartClassifyItems, noPermissionChartIdMap map[int]bool) (newAllNodes []*data_manage.ChartClassifyItems) {
-	// 移除没有权限的图表
-	newAllNodes = make([]*data_manage.ChartClassifyItems, 0)
-	for _, node := range allNodes {
-		// 二级分类
-		tmpNodeInfo := *node
-		tmpNodeList := make([]*data_manage.ChartClassifyItems, 0)
-
-		if node.Children != nil {
-			for _, chartInfo := range node.Children {
-				// 如果指标不可见,那么就不返回该指标
-				if _, ok := noPermissionChartIdMap[chartInfo.ChartInfoId]; ok {
-					continue
-				}
-				tmpNodeList = append(tmpNodeList, chartInfo)
-			}
-		}
-
-		tmpNodeInfo.Children = tmpNodeList
-		newAllNodes = append(newAllNodes, &tmpNodeInfo)
-	}
-
-	return
-}
-
 // ChartClassifyItems
 // @Title 获取所有相关性图表分类接口-不包含图表
 // @Description 获取所有相关性图表分类接口-不包含图表

+ 2 - 28
controllers/data_manage/future_good/future_good_chart_classify.go

@@ -56,7 +56,7 @@ func (this *FutureGoodChartClassifyController) ChartClassifyList() {
 			return
 		}
 		// 移除没有权限的图表
-		allNodes := handleNoPermissionChart(resp.AllNodes, noPermissionChartIdMap)
+		allNodes := data.HandleNoPermissionChart(resp.AllNodes, noPermissionChartIdMap)
 		resp.AllNodes = allNodes
 
 		br.Ret = 200
@@ -97,7 +97,7 @@ func (this *FutureGoodChartClassifyController) ChartClassifyList() {
 	}
 
 	// 移除没有权限的图表
-	allNodes := handleNoPermissionChart(rootList, noPermissionChartIdMap)
+	allNodes := data.HandleNoPermissionChart(rootList, noPermissionChartIdMap)
 	resp.AllNodes = allNodes
 
 	br.Ret = 200
@@ -139,32 +139,6 @@ func getChartClassifyListForMe(adminInfo system.Admin, resp *data_manage.ChartCl
 	return
 }
 
-// handleNoPermissionChart 图表列表返回,将没有权限的图表移除
-func handleNoPermissionChart(allNodes []*data_manage.ChartClassifyItems, noPermissionChartIdMap map[int]bool) (newAllNodes []*data_manage.ChartClassifyItems) {
-	// 移除没有权限的图表
-	newAllNodes = make([]*data_manage.ChartClassifyItems, 0)
-	for _, node := range allNodes {
-		// 二级分类
-		tmpNodeInfo := *node
-		tmpNodeList := make([]*data_manage.ChartClassifyItems, 0)
-
-		if node.Children != nil {
-			for _, chartInfo := range node.Children {
-				// 如果指标不可见,那么就不返回该指标
-				if _, ok := noPermissionChartIdMap[chartInfo.ChartInfoId]; ok {
-					continue
-				}
-				tmpNodeList = append(tmpNodeList, chartInfo)
-			}
-		}
-
-		tmpNodeInfo.Children = tmpNodeList
-		newAllNodes = append(newAllNodes, &tmpNodeInfo)
-	}
-
-	return
-}
-
 // ChartClassifyItems
 // @Title 获取所有商品价格图表分类接口-不包含图表
 // @Description 获取所有商品价格图表分类接口-不包含图表

+ 1 - 27
controllers/data_manage/line_equation/line_chart_classify.go

@@ -101,7 +101,7 @@ func (this *LineEquationChartClassifyController) ChartClassifyList() {
 	}
 
 	// 移除没有权限的图表
-	allNodes := handleNoPermissionChart(rootList, noPermissionChartIdMap)
+	allNodes := data.HandleNoPermissionChart(rootList, noPermissionChartIdMap)
 	resp.AllNodes = allNodes
 
 	br.Ret = 200
@@ -144,32 +144,6 @@ func getChartClassifyListForMe(adminInfo system.Admin, resp *data_manage.ChartCl
 	return
 }
 
-// handleNoPermissionChart 图表列表返回,将没有权限的图表移除
-func handleNoPermissionChart(allNodes []*data_manage.ChartClassifyItems, noPermissionChartIdMap map[int]bool) (newAllNodes []*data_manage.ChartClassifyItems) {
-	// 移除没有权限的图表
-	newAllNodes = make([]*data_manage.ChartClassifyItems, 0)
-	for _, node := range allNodes {
-		// 二级分类
-		tmpNodeInfo := *node
-		tmpNodeList := make([]*data_manage.ChartClassifyItems, 0)
-
-		if node.Children != nil {
-			for _, chartInfo := range node.Children {
-				// 如果指标不可见,那么就不返回该指标
-				if _, ok := noPermissionChartIdMap[chartInfo.ChartInfoId]; ok {
-					continue
-				}
-				tmpNodeList = append(tmpNodeList, chartInfo)
-			}
-		}
-
-		tmpNodeInfo.Children = tmpNodeList
-		newAllNodes = append(newAllNodes, &tmpNodeInfo)
-	}
-
-	return
-}
-
 // ChartClassifyItems
 // @Title 获取所有拟合方程图表分类接口-不包含图表
 // @Description 获取所有拟合方程图表分类接口-不包含图表

+ 1 - 27
controllers/data_manage/line_feature/classify.go

@@ -101,7 +101,7 @@ func (this *LineFeaturesChartClassifyController) ChartClassifyList() {
 	}
 
 	// 移除没有权限的图表
-	allNodes := handleNoPermissionChart(rootList, noPermissionChartIdMap)
+	allNodes := data.HandleNoPermissionChart(rootList, noPermissionChartIdMap)
 	resp.AllNodes = allNodes
 
 	br.Ret = 200
@@ -144,32 +144,6 @@ func getChartClassifyListForMe(adminInfo system.Admin, resp *data_manage.ChartCl
 	return
 }
 
-// handleNoPermissionChart 图表列表返回,将没有权限的图表移除
-func handleNoPermissionChart(allNodes []*data_manage.ChartClassifyItems, noPermissionChartIdMap map[int]bool) (newAllNodes []*data_manage.ChartClassifyItems) {
-	// 移除没有权限的图表
-	newAllNodes = make([]*data_manage.ChartClassifyItems, 0)
-	for _, node := range allNodes {
-		// 二级分类
-		tmpNodeInfo := *node
-		tmpNodeList := make([]*data_manage.ChartClassifyItems, 0)
-
-		if node.Children != nil {
-			for _, chartInfo := range node.Children {
-				// 如果指标不可见,那么就不返回该指标
-				if _, ok := noPermissionChartIdMap[chartInfo.ChartInfoId]; ok {
-					continue
-				}
-				tmpNodeList = append(tmpNodeList, chartInfo)
-			}
-		}
-
-		tmpNodeInfo.Children = tmpNodeList
-		newAllNodes = append(newAllNodes, &tmpNodeInfo)
-	}
-
-	return
-}
-
 // ChartClassifyItems
 // @Title 获取所有统计特征图表分类接口-不包含图表
 // @Description 获取所有统计特征图表分类接口-不包含图表

+ 2 - 2
models/data_manage/chart_info.go

@@ -72,7 +72,7 @@ func GetChartInfoAll(sourceList []int) (items []*ChartClassifyItems, err error)
 	o := orm.NewOrmUsingDB("data")
 	sql := ` SELECT chart_info_id,chart_classify_id,chart_name AS chart_classify_name,
              unique_code,sys_user_id,sys_user_real_name,date_type,start_date,end_date,chart_type,calendar,season_start_date,season_end_date,source
-            FROM chart_info WHERE source in (` + utils.GetOrmInReplace(num) + `)  ORDER BY sort asc,create_time ASC `
+            FROM chart_info WHERE source in (` + utils.GetOrmInReplace(num) + `)  ORDER BY sort asc,chart_info_id ASC `
 	_, err = o.Raw(sql, sourceList).QueryRows(&items)
 	return
 }
@@ -1847,4 +1847,4 @@ func EditChartInfoExtraConfig(chartId int, extraConfig string) (err error) {
 	}
 
 	return
-}
+}

+ 26 - 0
services/data/chart_classify.go

@@ -141,3 +141,29 @@ func GetChartOpButton(sysUser *system.Admin, belongUserId int) (button data_mana
 
 	return
 }
+
+// HandleNoPermissionChart 图表列表返回,将没有权限的图表移除
+func HandleNoPermissionChart(allNodes []*data_manage.ChartClassifyItems, noPermissionChartIdMap map[int]bool) (newAllNodes []*data_manage.ChartClassifyItems) {
+	// 移除没有权限的图表
+	newAllNodes = make([]*data_manage.ChartClassifyItems, 0)
+	for _, node := range allNodes {
+		// 二级分类
+		tmpNodeInfo := *node
+		tmpNodeList := make([]*data_manage.ChartClassifyItems, 0)
+
+		if node.Children != nil {
+			for _, chartInfo := range node.Children {
+				// 如果指标不可见,那么就不返回该指标
+				if _, ok := noPermissionChartIdMap[chartInfo.ChartInfoId]; ok {
+					continue
+				}
+				tmpNodeList = append(tmpNodeList, chartInfo)
+			}
+		}
+
+		tmpNodeInfo.Children = tmpNodeList
+		newAllNodes = append(newAllNodes, &tmpNodeInfo)
+	}
+
+	return
+}

+ 8 - 7
utils/constants.go

@@ -262,13 +262,14 @@ const (
 const (
 	CHART_SOURCE_DEFAULT                         = 1
 	CHART_SOURCE_FUTURE_GOOD                     = 2
-	CHART_SOURCE_CORRELATION                     = 3 // 相关性图表
-	CHART_SOURCE_ROLLING_CORRELATION             = 4 // 滚动相关性图表
-	CHART_SOURCE_FUTURE_GOOD_PROFIT              = 5 // 商品利润曲线
-	CHART_SOURCE_LINE_EQUATION                   = 6 // 拟合方程图表
-	CHART_SOURCE_LINE_FEATURE_STANDARD_DEVIATION = 7 // 统计特征-标准差图表
-	CHART_SOURCE_LINE_FEATURE_PERCENTILE         = 8 // 统计特征-百分位图表
-	CHART_SOURCE_LINE_FEATURE_FREQUENCY          = 9 // 统计特征-频率分布图表
+	CHART_SOURCE_CORRELATION                     = 3  // 相关性图表
+	CHART_SOURCE_ROLLING_CORRELATION             = 4  // 滚动相关性图表
+	CHART_SOURCE_FUTURE_GOOD_PROFIT              = 5  // 商品利润曲线
+	CHART_SOURCE_LINE_EQUATION                   = 6  // 拟合方程图表
+	CHART_SOURCE_LINE_FEATURE_STANDARD_DEVIATION = 7  // 统计特征-标准差图表
+	CHART_SOURCE_LINE_FEATURE_PERCENTILE         = 8  // 统计特征-百分位图表
+	CHART_SOURCE_LINE_FEATURE_FREQUENCY          = 9  // 统计特征-频率分布图表
+	CHART_SOURCE_CROSS_HEDGING                   = 10 // 跨品种分析图表
 )
 
 // 批量配置图表的位置来源