|
@@ -1391,12 +1391,39 @@ func (this *CorrelationChartInfoController) Copy() {
|
|
|
}
|
|
|
|
|
|
// 新增图表/相关性图表/图表指标关联/指标系列图表关联
|
|
|
- chartInfoId, e := data_manage.CreateMultiFactorCorrelationChartAndEdb(chartInfo, edbMappings, chartCorrelate, originChartMappings, true, originSeries, originEdbSeriesMapping)
|
|
|
+ chartInfoId, seriesIdMap, e := data_manage.CreateMultiFactorCorrelationChartAndEdb(chartInfo, edbMappings, chartCorrelate, originChartMappings, true, originSeries, originEdbSeriesMapping)
|
|
|
if e != nil {
|
|
|
br.Msg = "保存失败"
|
|
|
br.ErrMsg = fmt.Sprintf("新增多因子相关性图表失败, Err: %v", e)
|
|
|
return
|
|
|
}
|
|
|
+
|
|
|
+ // 如果原图表有设置图例-那么替换图例设置中的系列ID
|
|
|
+ if originChart.ExtraConfig != "" {
|
|
|
+ conf := new(data_manage.CorrelationChartInfoExtraConfig)
|
|
|
+ e = json.Unmarshal([]byte(originChart.ExtraConfig), &conf)
|
|
|
+ if e != nil {
|
|
|
+ br.Msg = "保存失败"
|
|
|
+ br.ErrMsg = fmt.Sprintf("解析图表额外配置失败, Err: %v", e)
|
|
|
+ return
|
|
|
+ }
|
|
|
+ for _, v := range conf.LegendConfig {
|
|
|
+ v.SeriesId = seriesIdMap[v.SeriesId]
|
|
|
+ }
|
|
|
+ b, e := json.Marshal(conf)
|
|
|
+ if e != nil {
|
|
|
+ br.Msg = "保存失败"
|
|
|
+ br.ErrMsg = fmt.Sprintf("图表来源JSON格式化失败, Err: %v", e)
|
|
|
+ return
|
|
|
+ }
|
|
|
+ chartInfo.ExtraConfig = string(b)
|
|
|
+ if e = chartInfo.Update([]string{"ExtraConfig"}); e != nil {
|
|
|
+ br.Msg = "保存失败"
|
|
|
+ br.ErrMsg = fmt.Sprintf("更新图例信息失败, %v", e)
|
|
|
+ return
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
go data.EsAddOrEditChartInfo(chartInfoId)
|
|
|
}
|
|
|
|
|
@@ -2343,6 +2370,7 @@ func (this *CorrelationChartInfoController) MultiFactorAdd() {
|
|
|
for _, v := range chartMappings {
|
|
|
v.Source = chartSource
|
|
|
k := fmt.Sprintf("%d-%d", v.FactorEdbSeriesId, v.EdbInfoId)
|
|
|
+ v.EdbUsed = 0 // 先重置一下
|
|
|
if edbUsed[k] {
|
|
|
v.EdbUsed = 1
|
|
|
}
|
|
@@ -2383,12 +2411,34 @@ func (this *CorrelationChartInfoController) MultiFactorAdd() {
|
|
|
}
|
|
|
|
|
|
// 新增图表/相关性图表/图表指标关联/指标系列图表关联
|
|
|
- chartInfoId, e := data_manage.CreateMultiFactorCorrelationChartAndEdb(chartInfo, edbMappings, chartCorrelate, chartMappings, req.SaveAs, originSeries, originEdbSeriesMapping)
|
|
|
+ chartInfoId, seriesIdMap, e := data_manage.CreateMultiFactorCorrelationChartAndEdb(chartInfo, edbMappings, chartCorrelate, chartMappings, req.SaveAs, originSeries, originEdbSeriesMapping)
|
|
|
if e != nil {
|
|
|
br.Msg = "保存失败"
|
|
|
br.ErrMsg = fmt.Sprintf("新增多因子相关性图表失败, Err: %v", e)
|
|
|
return
|
|
|
}
|
|
|
+
|
|
|
+ // 另存为-替换图例设置中的系列ID
|
|
|
+ if req.SaveAs {
|
|
|
+ if req.ExtraConfig != nil {
|
|
|
+ for _, v := range req.ExtraConfig.LegendConfig {
|
|
|
+ v.SeriesId = seriesIdMap[v.SeriesId]
|
|
|
+ }
|
|
|
+ b, e := json.Marshal(req.ExtraConfig)
|
|
|
+ if e != nil {
|
|
|
+ br.Msg = "保存失败"
|
|
|
+ br.ErrMsg = fmt.Sprintf("图表来源JSON格式化失败, Err: %v", e)
|
|
|
+ return
|
|
|
+ }
|
|
|
+ chartInfo.ExtraConfig = string(b)
|
|
|
+ if e = chartInfo.Update([]string{"ExtraConfig"}); e != nil {
|
|
|
+ br.Msg = "保存失败"
|
|
|
+ br.ErrMsg = fmt.Sprintf("更新图例信息失败, %v", e)
|
|
|
+ return
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
go data.EsAddOrEditChartInfo(chartInfoId)
|
|
|
|
|
|
// 操作日志
|