|
@@ -1098,6 +1098,7 @@ func GetSeasonEdbInfoDataListByXDateNong(result *data_manage.EdbDataResult, late
|
|
|
|
|
|
for name, dateItem := range dataMap {
|
|
|
lv, ok1 := yearDataListMap[dateItem.EndDate.Year()]
|
|
|
+
|
|
|
if dateItem.EndDate.Year() > lastDateT.Year() {
|
|
|
lv, ok1 = yearDataListMap[dateItem.StartDate.Year()]
|
|
|
}
|
|
@@ -1115,35 +1116,70 @@ func GetSeasonEdbInfoDataListByXDateNong(result *data_manage.EdbDataResult, late
|
|
|
dataTimeT, _ := time.Parse(utils.FormatDate, item.DataTime)
|
|
|
year := dataTimeT.Year()
|
|
|
newItemDate := dataTimeT.AddDate(nowYear-year, 0, 0)
|
|
|
- if (startTmpT.Before(dataTimeT) && endTmpT.After(dataTimeT)) || startTmpT == dataTimeT || endTmpT == dataTimeT {
|
|
|
- if jumpYear == 1 {
|
|
|
- //计算前一年最大的日期, 只补齐数据到去年
|
|
|
- beforeYearMaxDate := fmt.Sprintf("%d-12-31", startTmpT.Year())
|
|
|
- beforeYearMaxDateT, _ := time.Parse(utils.FormatDate, beforeYearMaxDate)
|
|
|
- if dataTimeT.Before(beforeYearMaxDateT) || dataTimeT == beforeYearMaxDateT {
|
|
|
- newItemDate = dataTimeT.AddDate(nowYear-year-1, 0, 0)
|
|
|
+ if dateItem.EndDate.Year() > maxY {
|
|
|
+ if (dateItem.StartDate.Before(dataTimeT) && dateItem.EndDate.After(dataTimeT)) || dateItem.StartDate == dataTimeT || dateItem.EndDate == dataTimeT {
|
|
|
+ if jumpYear == 1 {
|
|
|
+ //计算前一年最大的日期, 只补齐数据到去年
|
|
|
+ beforeYearMaxDate := fmt.Sprintf("%d-12-31", dateItem.StartDate.Year())
|
|
|
+ beforeYearMaxDateT, _ := time.Parse(utils.FormatDate, beforeYearMaxDate)
|
|
|
+ if dataTimeT.Before(beforeYearMaxDateT) || dataTimeT == beforeYearMaxDateT {
|
|
|
+ newItemDate = dataTimeT.AddDate(nowYear-year-1, 0, 0)
|
|
|
+ } else {
|
|
|
+ newItemDate = dataTimeT.AddDate(nowYear-year, 0, 0)
|
|
|
+ }
|
|
|
} else {
|
|
|
newItemDate = dataTimeT.AddDate(nowYear-year, 0, 0)
|
|
|
}
|
|
|
- } else {
|
|
|
- newItemDate = dataTimeT.AddDate(nowYear-year, 0, 0)
|
|
|
- }
|
|
|
- timestamp := newItemDate.UnixNano() / 1e6
|
|
|
- tmpVal.DataTimestamp = timestamp
|
|
|
- tmpV := &tmpVal
|
|
|
- if findVal, ok := quarterMap[name]; !ok {
|
|
|
- findVal = append(findVal, tmpV)
|
|
|
- quarterMap[name] = findVal
|
|
|
- } else {
|
|
|
- findVal = append(findVal, tmpV)
|
|
|
- quarterMap[name] = findVal
|
|
|
+ timestamp := newItemDate.UnixNano() / 1e6
|
|
|
+ tmpVal.DataTimestamp = timestamp
|
|
|
+ tmpV := &tmpVal
|
|
|
+ if findVal, ok := quarterMap[name]; !ok {
|
|
|
+ findVal = append(findVal, tmpV)
|
|
|
+ quarterMap[name] = findVal
|
|
|
+ } else {
|
|
|
+ findVal = append(findVal, tmpV)
|
|
|
+ quarterMap[name] = findVal
|
|
|
+ }
|
|
|
+ if lv.Year >= latestDateYear {
|
|
|
+ // 切割的日期时间字符串
|
|
|
+ cuttingDataTimeStr := latestDate.AddDate(0, 0, lv.BetweenDay).Format(utils.FormatDate)
|
|
|
+ if item.DataTime == cuttingDataTimeStr {
|
|
|
+ dateItem.CuttingDataTimestamp = timestamp
|
|
|
+ dataMap[name] = dateItem
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|
|
|
- if lv.Year >= latestDateYear {
|
|
|
- // 切割的日期时间字符串
|
|
|
- cuttingDataTimeStr := latestDate.AddDate(0, 0, lv.BetweenDay).Format(utils.FormatDate)
|
|
|
- if item.DataTime == cuttingDataTimeStr {
|
|
|
- dateItem.CuttingDataTimestamp = timestamp
|
|
|
- dataMap[name] = dateItem
|
|
|
+ } else {
|
|
|
+ if (startTmpT.Before(dataTimeT) && endTmpT.After(dataTimeT)) || startTmpT == dataTimeT || endTmpT == dataTimeT {
|
|
|
+ if jumpYear == 1 {
|
|
|
+ //计算前一年最大的日期, 只补齐数据到去年
|
|
|
+ beforeYearMaxDate := fmt.Sprintf("%d-12-31", startTmpT.Year())
|
|
|
+ beforeYearMaxDateT, _ := time.Parse(utils.FormatDate, beforeYearMaxDate)
|
|
|
+ if dataTimeT.Before(beforeYearMaxDateT) || dataTimeT == beforeYearMaxDateT {
|
|
|
+ newItemDate = dataTimeT.AddDate(nowYear-year-1, 0, 0)
|
|
|
+ } else {
|
|
|
+ newItemDate = dataTimeT.AddDate(nowYear-year, 0, 0)
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ newItemDate = dataTimeT.AddDate(nowYear-year, 0, 0)
|
|
|
+ }
|
|
|
+ timestamp := newItemDate.UnixNano() / 1e6
|
|
|
+ tmpVal.DataTimestamp = timestamp
|
|
|
+ tmpV := &tmpVal
|
|
|
+ if findVal, ok := quarterMap[name]; !ok {
|
|
|
+ findVal = append(findVal, tmpV)
|
|
|
+ quarterMap[name] = findVal
|
|
|
+ } else {
|
|
|
+ findVal = append(findVal, tmpV)
|
|
|
+ quarterMap[name] = findVal
|
|
|
+ }
|
|
|
+ if lv.Year >= latestDateYear {
|
|
|
+ // 切割的日期时间字符串
|
|
|
+ cuttingDataTimeStr := latestDate.AddDate(0, 0, lv.BetweenDay).Format(utils.FormatDate)
|
|
|
+ if item.DataTime == cuttingDataTimeStr {
|
|
|
+ dateItem.CuttingDataTimestamp = timestamp
|
|
|
+ dataMap[name] = dateItem
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
}
|