zwxi vor 7 Monaten
Ursprung
Commit
7a9f3b2816
1 geänderte Dateien mit 60 neuen und 57 gelöschten Zeilen
  1. 60 57
      controllers/data_manage/chart_info.go

+ 60 - 57
controllers/data_manage/chart_info.go

@@ -1433,40 +1433,44 @@ func (this *ChartInfoController) PreviewChartInfoDetail() {
 			return
 		}
 		for i := range markerLines {
-			//if markerLines[i].EdbType == 1 {
-				// 指标计算
-				edbInfo, err := data_manage.GetEdbInfoById(markerLines[i].EdbInfoId)
-				if err != nil {
-					br.Msg = "指标计算标识线获取指标信息异常"
-					br.ErrMsg = "指标计算标识线获取指标信息异常" + err.Error()
-					return
-				}
-				dataList, err := data_manage.GetEdbDataList(edbInfo.Source, edbInfo.SubSource, edbInfo.EdbInfoId, markerLines[i].StartDate.Date, markerLines[i].EndDate.Date)
-				if err != nil {
-					br.Msg = "指标计算标识线获取指标数据异常"
-					br.ErrMsg = "指标计算标识线获取指标数据异常" + err.Error()
-					return
-				}
-				value, err := data.MarkerLineCalculate(markerLines[i], dataList, chartInfo)
-				if err != nil {
-					br.Msg = "标识线配置异常"
-					br.ErrMsg = "标识线配置异常" + err.Error()
-					return
+			if markerLines[i].EdbType == 0 && markerLines[i].TimeIntervalType == 0 {
+				// 图上第一个指标且时间区间跟随图表
+				if edbList[0].IsAxis == 1 {
+					value, err := data.MarkerLineCalculate(markerLines[i], edbList[0].DataList, chartInfo)
+					if err != nil {
+						br.Msg = "标识线配置异常"
+						br.ErrMsg = "标识线配置异常" + err.Error()
+						return
+					}
+					markerLines[i].Value = value
+				} else {
+					// 其他的都走指标计算
+					edbInfo, err := data_manage.GetEdbInfoById(markerLines[i].EdbInfoId)
+					if err != nil {
+						br.Msg = "指标计算标识线获取指标信息异常"
+						br.ErrMsg = "指标计算标识线获取指标信息异常" + err.Error()
+						return
+					}
+					// 判断时间区间不为跟随图表的情况
+					if markerLines[i].TimeIntervalType != 0 {
+						startDate = markerLines[i].StartDate.Date
+						endDate = markerLines[i].EndDate.Date
+					}
+					dataList, err := data_manage.GetEdbDataList(edbInfo.Source, edbInfo.SubSource, edbInfo.EdbInfoId, startDate, endDate)
+					if err != nil {
+						br.Msg = "指标计算标识线获取指标数据异常"
+						br.ErrMsg = "指标计算标识线获取指标数据异常" + err.Error()
+						return
+					}
+					value, err := data.MarkerLineCalculate(markerLines[i], dataList, chartInfo)
+					if err != nil {
+						br.Msg = "标识线配置异常"
+						br.ErrMsg = "标识线配置异常" + err.Error()
+						return
+					}
+					markerLines[i].Value = value
 				}
-				markerLines[i].Value = value
-
-			//} else {
-			//	// 跟随图表
-			//	if edbList[0].IsAxis == 1 {
-			//		value, err := data.MarkerLineCalculate(markerLines[i], edbList[0].DataList, chartInfo)
-			//		if err != nil {
-			//			br.Msg = "标识线配置异常"
-			//			br.ErrMsg = "标识线配置异常" + err.Error()
-			//			return
-			//		}
-			//		markerLines[i].Value = value
-			//	}
-			//}
+			}
 		}
 
 		markerLineStr, err := json.Marshal(markerLines)
@@ -3411,30 +3415,8 @@ func (this *ChartInfoController) PreviewBarChartInfo() {
 			return
 		}
 		for i := range markerLines {
-			if markerLines[i].EdbType == 1 {
-				// 指标计算
-				edbInfo, err := data_manage.GetEdbInfoById(markerLines[i].EdbInfoId)
-				if err != nil {
-					br.Msg = "指标计算标识线获取指标信息异常"
-					br.ErrMsg = "指标计算标识线获取指标信息异常" + err.Error()
-					return
-				}
-				dataList, err := data_manage.GetEdbDataList(edbInfo.Source, edbInfo.SubSource, edbInfo.EdbInfoId, markerLines[i].StartDate.Date, markerLines[i].EndDate.Date)
-				if err != nil {
-					br.Msg = "指标计算标识线获取指标数据异常"
-					br.ErrMsg = "指标计算标识线获取指标数据异常" + err.Error()
-					return
-				}
-				value, err := data.MarkerLineCalculate(markerLines[i], dataList, chartInfo)
-				if err != nil {
-					br.Msg = "标识线配置异常"
-					br.ErrMsg = "标识线配置异常" + err.Error()
-					return
-				}
-				markerLines[i].Value = value
-
-			} else {
-				// 跟随图表
+			if markerLines[i].EdbType == 0 && markerLines[i].TimeIntervalType == 0 {
+				// 图上第一个指标且时间区间跟随图表
 				if edbList[0].IsAxis == 1 {
 					value, err := data.MarkerLineCalculate(markerLines[i], edbList[0].DataList, chartInfo)
 					if err != nil {
@@ -3443,6 +3425,27 @@ func (this *ChartInfoController) PreviewBarChartInfo() {
 						return
 					}
 					markerLines[i].Value = value
+				} else {
+					// 其他的都走指标计算
+					edbInfo, err := data_manage.GetEdbInfoById(markerLines[i].EdbInfoId)
+					if err != nil {
+						br.Msg = "指标计算标识线获取指标信息异常"
+						br.ErrMsg = "指标计算标识线获取指标信息异常" + err.Error()
+						return
+					}
+					dataList, err := data_manage.GetEdbDataList(edbInfo.Source, edbInfo.SubSource, edbInfo.EdbInfoId, "", "")
+					if err != nil {
+						br.Msg = "指标计算标识线获取指标数据异常"
+						br.ErrMsg = "指标计算标识线获取指标数据异常" + err.Error()
+						return
+					}
+					value, err := data.MarkerLineCalculate(markerLines[i], dataList, chartInfo)
+					if err != nil {
+						br.Msg = "标识线配置异常"
+						br.ErrMsg = "标识线配置异常" + err.Error()
+						return
+					}
+					markerLines[i].Value = value
 				}
 			}
 		}