Bladeren bron

fix:调整预测指标的季节性计算方式

Roc 1 week geleden
bovenliggende
commit
b32e491da7
1 gewijzigde bestanden met toevoegingen van 7 en 7 verwijderingen
  1. 7 7
      services/data/predict_edb_info_rule.go

+ 7 - 7
services/data/predict_edb_info_rule.go

@@ -777,19 +777,19 @@ func GetChartPredictEdbInfoDataListByRuleSeason(edbInfoId int, configValue strin
 		tmpLenAllDataList := len(allDataList)
 		tmpK := tmpLenAllDataList - 1    //上1期数据的下标
 		lastDayData := allDataList[tmpK] // 上1期的数据
-		lastDayStr := lastDayData.DataTime
+		//lastDayStr := lastDayData.DataTime
 		lastDayVal := lastDayData.Value
-		lastDay, tmpErr := time.ParseInLocation(utils.FormatDate, lastDayStr, time.Local)
-		if tmpErr != nil {
-			err = errors.New("获取上期日期转换失败:" + tmpErr.Error())
-		}
+		//lastDay, tmpErr := time.ParseInLocation(utils.FormatDate, lastDayStr, time.Local)
+		//if tmpErr != nil {
+		//	err = errors.New("获取上期日期转换失败:" + tmpErr.Error())
+		//}
 		for _, year := range yearList {
 			moveDay := moveDayMap[year] //需要移动的天数
 			var tmpHistoryCurrentVal, tmpHistoryLastVal float64
 			var isFindHistoryCurrent, isFindHistoryLast bool //是否找到前几年的数据
 
 			//前几年当日的日期
-			tmpHistoryCurrentDate := currentDate.AddDate(year-currentDate.Year(), 0, -moveDay)
+			tmpHistoryCurrentDate := currentDate.AddDate(year-currentDate.Year(), 0, -(moveDay + 1))
 			for i := 0; i <= 35; i++ { // 前后35天找数据,找到最近的值,先向后面找,再往前面找
 				tmpDate := tmpHistoryCurrentDate.AddDate(0, 0, i)
 				if val, ok := handleDataMap[tmpDate.Format(utils.FormatDate)]; ok {
@@ -807,7 +807,7 @@ func GetChartPredictEdbInfoDataListByRuleSeason(edbInfoId int, configValue strin
 			}
 
 			//前几年上一期的日期
-			tmpHistoryLastDate := lastDay.AddDate(year-lastDay.Year(), 0, -moveDay)
+			tmpHistoryLastDate := tmpHistoryCurrentDate.AddDate(0, 0, -1)
 			for i := 0; i <= 35; i++ { // 前后35天找数据,找到最近的值,先向后面找,再往前面找
 				tmpDate := tmpHistoryLastDate.AddDate(0, 0, i)
 				if val, ok := handleDataMap[tmpDate.Format(utils.FormatDate)]; ok {