Эх сурвалжийг харах

fix:移除滚动相关性图表与相关性图表强关联性

Roc 2 жил өмнө
parent
commit
2d2cfd3489

+ 2 - 20
controllers/chart_common.go

@@ -341,31 +341,13 @@ func GetCorrelationChartInfoDetailFromUniqueCode(chartInfo *models.ChartInfo, ke
 			return
 		}
 	case utils.CHART_SOURCE_ROLLING_CORRELATION: // 滚动相关性图
-		multipleGraphConfigChartMapping, e := data_manage.GetMultipleGraphConfigChartMappingByChartId(chartInfo.ChartInfoId)
-		if e != nil {
-			msg = "获取失败"
-			errMsg = "获取滚动相关性图表的配置信息失败, Err:" + e.Error()
-			return
-		}
-		baseChartMultipleGraphConfigChartMapping, e := data_manage.GetMultipleGraphConfigChartMappingByIdAndSource(multipleGraphConfigChartMapping.MultipleGraphConfigId, 2)
-		if e != nil {
-			msg = "获取失败"
-			errMsg = "获取相关性图表的配置信息失败, Err:" + e.Error()
-			return
-		}
-		baseChartCorrelationChart := new(data_manage.ChartInfoCorrelation)
-		if e := baseChartCorrelationChart.GetItemById(baseChartMultipleGraphConfigChartMapping.ChartInfoId); e != nil {
-			msg = "获取失败"
-			errMsg = "获取基础相关性图表信息失败, Err:" + e.Error()
-			return
-		}
-		moveUnitDays, ok := utils.FrequencyDaysMap[baseChartCorrelationChart.CalculateUnit]
+		moveUnitDays, ok := utils.FrequencyDaysMap[correlationChart.BaseCalculateUnit]
 		if !ok {
 			msg = "错误的分析周期"
 			errMsg = "错误的分析周期"
 			return
 		}
-		startDate := time.Now().AddDate(0, 0, -baseChartCorrelationChart.CalculateValue*moveUnitDays).Format(utils.FormatDate)
+		startDate := time.Now().AddDate(0, 0, -correlationChart.BaseCalculateValue*moveUnitDays).Format(utils.FormatDate)
 		endDate := time.Now().Format(utils.FormatDate)
 		xDateTimeValue, yDataList, e = correlationServ.GetRollingCorrelationChartDataByEdbInfo(edbInfoMappingA, edbInfoMappingB, correlationChart.LeadValue, correlationChart.LeadUnit, correlationChart.CalculateValue, correlationChart.CalculateUnit, startDate, endDate)
 		dataResp = models.RollingCorrelationChartDataResp{

+ 2 - 0
models/data_manage/chart_info_correlation.go

@@ -14,6 +14,8 @@ type ChartInfoCorrelation struct {
 	LeadUnit               string    `description:"领先单位"`
 	CalculateValue         int       `description:"计算窗口"`
 	CalculateUnit          string    `description:"计算频度"`
+	BaseCalculateValue     int       `description:"基础计算窗口(滚动相关性的时候用到)"`
+	BaseCalculateUnit      string    `description:"基础计算频度(滚动相关性的时候用到)"`
 	StartDate              time.Time `description:"开始日期"`
 	EndDate                time.Time `description:"结束日期"`
 	EdbInfoIdFirst         int       `description:"A指标ID"`

+ 1 - 0
services/data/correlation/chart_info.go

@@ -438,6 +438,7 @@ func GetRollingCorrelationChartDataByEdbInfo(edbInfoMappingA, edbInfoMappingB *m
 	{
 		startDateTime, _ := time.ParseInLocation(utils.FormatDate, startDate, time.Local)
 		endDateTime, _ := time.ParseInLocation(utils.FormatDate, endDate, time.Local)
+		endDateTime = endDateTime.AddDate(0, 0, -(calculateDay - 1))
 
 		for currDay := startDateTime; !currDay.After(endDateTime); currDay = currDay.AddDate(0, 0, 1) {
 			yCalculateData := make([]float64, 0)