|
@@ -200,7 +200,7 @@ func GetChartEdbInfoFormat(chartInfoId int, edbInfoMappingA, edbInfoMappingB *da
|
|
|
}
|
|
|
|
|
|
// GetChartDataByEdbInfo 相关性图表-根据指标信息获取x轴和y轴
|
|
|
-func GetChartDataByEdbInfo(edbInfoMappingA, edbInfoMappingB *data_manage.ChartEdbInfoMapping, leadValue int, leadUnit, startDate, endDate string) (xEdbIdValue []int, yDataList []data_manage.YData, err error) {
|
|
|
+func GetChartDataByEdbInfo(edbInfoMappingA, edbInfoMappingB *data_manage.ChartEdbInfoMapping, leadValue int, leadUnit, startDate, endDate, extraConfig string) (xEdbIdValue []int, yDataList []data_manage.YData, err error) {
|
|
|
xData := make([]int, 0)
|
|
|
yData := make([]float64, 0)
|
|
|
if leadValue == 0 {
|
|
@@ -377,13 +377,30 @@ func GetChartDataByEdbInfo(edbInfoMappingA, edbInfoMappingB *data_manage.ChartEd
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ // 图例
|
|
|
+ var extra data_manage.CorrelationChartInfoExtraConfig
|
|
|
+ legend := new(data_manage.CorrelationChartLegend)
|
|
|
+ if extraConfig != "" {
|
|
|
+ if e := json.Unmarshal([]byte(extraConfig), &extra); e != nil {
|
|
|
+ err = fmt.Errorf("图例解析异常, err: %v", e)
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if len(extra.LegendConfig) > 0 {
|
|
|
+ legend = extra.LegendConfig[0]
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
xEdbIdValue = xData
|
|
|
yDataList = make([]data_manage.YData, 0)
|
|
|
yDate := "0000-00-00"
|
|
|
- yDataList = append(yDataList, data_manage.YData{
|
|
|
- Date: yDate,
|
|
|
- Value: yData,
|
|
|
- })
|
|
|
+ var y data_manage.YData
|
|
|
+ y.Date = yDate
|
|
|
+ y.Value = yData
|
|
|
+ if legend != nil {
|
|
|
+ y.Name = legend.LegendName
|
|
|
+ y.Color = legend.Color
|
|
|
+ }
|
|
|
+ yDataList = append(yDataList, y)
|
|
|
return
|
|
|
}
|
|
|
|
|
@@ -589,12 +606,13 @@ func ChartInfoRefresh(chartInfoId int) (err error) {
|
|
|
errMsg = "获取相关性图表, A指标mapping信息失败, Err:" + err.Error()
|
|
|
return
|
|
|
}
|
|
|
+ // TODO:多因子刷新
|
|
|
edbInfoMappingB, err := data_manage.GetChartEdbMappingByEdbInfoId(correlationChart.EdbInfoIdSecond)
|
|
|
if err != nil {
|
|
|
errMsg = "获取相关性图表, B指标mapping信息失败, Err:" + err.Error()
|
|
|
return
|
|
|
}
|
|
|
- periodData, correlationData, err := GetChartDataByEdbInfo(edbInfoMappingA, edbInfoMappingB, correlationChart.LeadValue, correlationChart.LeadUnit, correlationChart.StartDate.Format(utils.FormatDate), correlationChart.EndDate.Format(utils.FormatDate))
|
|
|
+ periodData, correlationData, err := GetChartDataByEdbInfo(edbInfoMappingA, edbInfoMappingB, correlationChart.LeadValue, correlationChart.LeadUnit, correlationChart.StartDate.Format(utils.FormatDate), correlationChart.EndDate.Format(utils.FormatDate), "")
|
|
|
if err != nil {
|
|
|
errMsg = "获取相关性图表, 图表计算值失败, Err:" + err.Error()
|
|
|
return
|
|
@@ -821,6 +839,9 @@ func AddChartInfo(req data_manage.AddChartInfoReq, source int, sysUser *system.A
|
|
|
chartInfo.Instructions = req.Instructions
|
|
|
chartInfo.MarkersLines = req.MarkersLines
|
|
|
chartInfo.MarkersAreas = req.MarkersAreas
|
|
|
+ if req.ExtraConfig != "" {
|
|
|
+ chartInfo.ExtraConfig = req.ExtraConfig
|
|
|
+ }
|
|
|
|
|
|
// 指标信息
|
|
|
mapList := make([]*data_manage.ChartEdbMapping, 0)
|