|
@@ -827,6 +827,7 @@ func GetSeasonEdbInfoDataListByXDate(dataList []*data_manage.EdbDataList, latest
|
|
|
return
|
|
|
}
|
|
|
endYear := lastDateT.Year()
|
|
|
+ nowYear := time.Now().Year()
|
|
|
dataMap := make(map[string]data_manage.QuarterXDateItem, 0)
|
|
|
|
|
|
quarterDataList := make([]*data_manage.QuarterData, 0)
|
|
@@ -859,6 +860,10 @@ func GetSeasonEdbInfoDataListByXDate(dataList []*data_manage.EdbDataList, latest
|
|
|
//如果最新的日期在起始日之前,则跳出循环
|
|
|
break
|
|
|
}
|
|
|
+ if endT.Year() > nowYear {
|
|
|
+ //如果最新的日期比真实年份要大,则数据全部按照最大的年份补齐
|
|
|
+ nowYear = endT.Year()
|
|
|
+ }
|
|
|
item := data_manage.QuarterXDateItem{
|
|
|
StartDate: startT,
|
|
|
EndDate: endT,
|
|
@@ -868,14 +873,13 @@ func GetSeasonEdbInfoDataListByXDate(dataList []*data_manage.EdbDataList, latest
|
|
|
dataMap[name] = item
|
|
|
}
|
|
|
|
|
|
- nowYear := time.Now().Year()
|
|
|
for _, v := range dataList {
|
|
|
dataTimeT, _ := time.Parse(utils.FormatDate, v.DataTime)
|
|
|
year := dataTimeT.Year()
|
|
|
newItemDate := dataTimeT.AddDate(nowYear-year, 0, 0)
|
|
|
for k, dateItem := range dataMap {
|
|
|
if (dateItem.StartDate.Before(dataTimeT) && dateItem.EndDate.After(dataTimeT)) || dateItem.StartDate == dataTimeT || dateItem.EndDate == dataTimeT {
|
|
|
- if jumpYear == 1 && year < nowYear {
|
|
|
+ if jumpYear == 1 {
|
|
|
//计算前一年最大的日期, 只补齐数据到去年
|
|
|
beforeYearMaxDate := fmt.Sprintf("%d-12-31", dateItem.StartDate.Year())
|
|
|
beforeYearMaxDateT, _ := time.Parse(utils.FormatDate, beforeYearMaxDate)
|