浏览代码

fix:滚动相关性图表数据返回调整

Roc 1 年之前
父节点
当前提交
0aefca445f

+ 2 - 2
controllers/data_manage/correlation/correlation_chart_info.go

@@ -716,7 +716,7 @@ func (this *CorrelationChartInfoController) Detail() {
 		}
 	case utils.CHART_SOURCE_ROLLING_CORRELATION: // 滚动相关性图
 		startDate, endDate := utils.GetDateByDateType(correlationChart.DateType, correlationChart.StartDate.Format(utils.FormatDate), correlationChart.EndDate.Format(utils.FormatDate))
-		dataResp, e = correlationServ.GetRollingCorrelationChartDataByEdbInfo(edbInfoMappingA, edbInfoMappingB, correlationChart.LeadValue, correlationChart.LeadUnit, correlationChart.CalculateValue, correlationChart.CalculateUnit, startDate, endDate)
+		dataResp, e = correlationServ.GetRollingCorrelationChartDataByEdbInfo(edbInfoMappingA, edbInfoMappingB, correlationChart.LeadValue, correlationChart.LeadUnit, correlationChart.CalculateValue, correlationChart.CalculateUnit, startDate, endDate, chartInfo.ChartName, chartInfo.ChartNameEn)
 		if e != nil {
 			br.Msg = "获取失败"
 			br.ErrMsg = "获取滚动相关性图表, 图表计算值失败, Err:" + e.Error()
@@ -1196,7 +1196,7 @@ func GetChartInfoDetailFromUniqueCode(chartInfo *data_manage.ChartInfoView, isCa
 	case utils.CHART_SOURCE_ROLLING_CORRELATION: // 滚动相关性图
 		startDate, endDate := utils.GetDateByDateType(correlationChart.DateType, correlationChart.StartDate.Format(utils.FormatDate), correlationChart.EndDate.Format(utils.FormatDate))
 
-		dataResp, e = correlationServ.GetRollingCorrelationChartDataByEdbInfo(edbInfoMappingA, edbInfoMappingB, correlationChart.LeadValue, correlationChart.LeadUnit, correlationChart.CalculateValue, correlationChart.CalculateUnit, startDate, endDate)
+		dataResp, e = correlationServ.GetRollingCorrelationChartDataByEdbInfo(edbInfoMappingA, edbInfoMappingB, correlationChart.LeadValue, correlationChart.LeadUnit, correlationChart.CalculateValue, correlationChart.CalculateUnit, startDate, endDate, chartInfo.ChartName, chartInfo.ChartNameEn)
 		if e != nil {
 			msg = "获取失败"
 			errMsg = "获取滚动相关性图表, 图表计算值失败, Err:" + e.Error()

+ 7 - 7
controllers/data_manage/multiple_graph_config.go

@@ -354,12 +354,6 @@ func (this *ChartInfoController) MultipleGraphPreview() {
 			rollingCorrelationData := make([]interface{}, 0)
 			for _, rollingCorrelationConf := range rollingCorrelationConfList {
 				if rollingCorrelationConf.CalculateValue > 0 && rollingCorrelationConf.CalculateUnit != `` {
-					dataList, e := correlationServ.GetRollingCorrelationChartDataByEdbInfo(edbInfoMappingA, edbInfoMappingB, rollingCorrelationConf.LeadValue, rollingCorrelationConf.LeadUnit, rollingCorrelationConf.CalculateValue, rollingCorrelationConf.CalculateUnit, startDate, endDate)
-					if e != nil {
-						br.Msg = "获取失败"
-						br.ErrMsg = "获取滚动相关性图表, 图表计算值失败, Err:" + e.Error()
-						return
-					}
 					tmpChartInfo := *chartInfo
 					tmpChartInfo.Source = utils.CHART_SOURCE_ROLLING_CORRELATION
 					// ”指标A名称“+”指标B名称“+"滚动相关性"+”滚动相关性计算窗口值“+”滚动相关性计算窗口单位“
@@ -374,10 +368,16 @@ func (this *ChartInfoController) MultipleGraphPreview() {
 					} else {
 						tmpChartInfo.ChartName = fmt.Sprintf(`%s与%s(领先%d%s)%d%s滚动相关性`, edbInfoMappingA.EdbName, edbInfoMappingB.EdbName, int(math.Abs(float64(rollingCorrelationConf.LeadValue))), rollingCorrelationConf.LeadUnit, rollingCorrelationConf.CalculateValue, rollingCorrelationConf.CalculateUnit)
 					}
+					dataResp, e := correlationServ.GetRollingCorrelationChartDataByEdbInfo(edbInfoMappingA, edbInfoMappingB, rollingCorrelationConf.LeadValue, rollingCorrelationConf.LeadUnit, rollingCorrelationConf.CalculateValue, rollingCorrelationConf.CalculateUnit, startDate, endDate, tmpChartInfo.ChartName, tmpChartInfo.ChartNameEn)
+					if e != nil {
+						br.Msg = "获取失败"
+						br.ErrMsg = "获取滚动相关性图表, 图表计算值失败, Err:" + e.Error()
+						return
+					}
 					rollingCorrelationData = append(rollingCorrelationData, response.RollingCorrelationResp{
 						ChartInfo:   tmpChartInfo,
 						EdbInfoList: mappingList,
-						DataList:    dataList,
+						DataResp:    dataResp,
 						CorrelationChartInfo: data_manage.CorrelationInfo{
 							LeadValue:       rollingCorrelationConf.LeadValue,
 							LeadUnit:        rollingCorrelationConf.LeadUnit,

+ 1 - 1
models/data_manage/response/multiple_graph_config.go

@@ -26,7 +26,7 @@ type CorrelationResp struct {
 type RollingCorrelationResp struct {
 	ChartInfo            data_manage.ChartInfoView
 	EdbInfoList          []*data_manage.ChartEdbInfoMapping
-	DataList             []data_manage.EdbDataList
+	DataResp             interface{}
 	CorrelationChartInfo data_manage.CorrelationInfo `description:"相关性图表信息"`
 }
 

+ 34 - 2
services/data/correlation/chart_info.go

@@ -379,9 +379,40 @@ func GetChartDataByEdbInfo(edbInfoMappingA, edbInfoMappingB *data_manage.ChartEd
 	return
 }
 
+type RollingCorrelationChartDataResp struct {
+	MaxData             float64
+	MinData             float64
+	LatestDate          string `description:"真实数据的最后日期"`
+	EdbInfoCategoryType int
+	ChartColor          string
+	ChartStyle          string
+	PredictChartColor   string
+	ChartType           int
+	ChartWidth          int
+	EdbName             string
+	EdbNameEn           string
+	Unit                string
+	UnitEn              string
+	IsAxis              int
+	DataList            []data_manage.EdbDataList
+}
+
 // GetRollingCorrelationChartDataByEdbInfo 滚动相关性计算
-func GetRollingCorrelationChartDataByEdbInfo(edbInfoMappingA, edbInfoMappingB *data_manage.ChartEdbInfoMapping, leadValue int, leadUnit string, calculateValue int, calculateUnit string, startDate, endDate string) (dataList []data_manage.EdbDataList, err error) {
-	dataList = make([]data_manage.EdbDataList, 0)
+func GetRollingCorrelationChartDataByEdbInfo(edbInfoMappingA, edbInfoMappingB *data_manage.ChartEdbInfoMapping, leadValue int, leadUnit string, calculateValue int, calculateUnit string, startDate, endDate, chartName, chartNameEn string) (dataResp RollingCorrelationChartDataResp, err error) {
+	dataResp = RollingCorrelationChartDataResp{
+		DataList:          make([]data_manage.EdbDataList, 0),
+		MaxData:           0,
+		MinData:           0,
+		ChartColor:        "#00f",
+		ChartStyle:        `spline`,
+		PredictChartColor: `#00f`,
+		ChartType:         0,
+		ChartWidth:        3,
+		EdbName:           chartName,
+		EdbNameEn:         chartNameEn,
+		IsAxis:            1,
+	}
+	dataList := make([]data_manage.EdbDataList, 0)
 
 	// 计算窗口,不包含第一天
 	startDateTime, _ := time.ParseInLocation(utils.FormatDate, startDate, time.Local)
@@ -507,6 +538,7 @@ func GetRollingCorrelationChartDataByEdbInfo(edbInfoMappingA, edbInfoMappingB *d
 		}
 	}
 
+	dataResp.DataList = dataList
 	return
 }