|
@@ -981,8 +981,7 @@ func GetSeasonEdbInfoDataListByXDateNong(result *data_manage.EdbDataResult, late
|
|
|
//判断横轴的两个时间之间是不是跨年了,如果跨年了,则横轴截止年份比起始年份+1,如果不跨年,截止年份等于起始年份
|
|
|
//根据数据确定最早的年份,和最近年份
|
|
|
//根据横轴的日期,汇总所有的年份
|
|
|
- startYear := result.List[0].Year
|
|
|
-
|
|
|
+ startYear := calendarPreYear
|
|
|
itemLength := len(result.List[length-1].Items)
|
|
|
//获取数据的最新日期
|
|
|
lastDate := result.List[length-1].Items[itemLength-1].DataTime
|
|
@@ -995,7 +994,7 @@ func GetSeasonEdbInfoDataListByXDateNong(result *data_manage.EdbDataResult, late
|
|
|
dataMap := make(map[string]data_manage.QuarterXDateItem)
|
|
|
|
|
|
quarterDataList := make([]*data_manage.QuarterData, 0)
|
|
|
- //resultData := make([]*data_manage.QuarterData, 0)
|
|
|
+ resultData := make([]*data_manage.QuarterData, 0)
|
|
|
quarterMap := make(map[string][]*data_manage.EdbDataList)
|
|
|
//整理出日期
|
|
|
leftNameFlag := true
|
|
@@ -1052,33 +1051,33 @@ func GetSeasonEdbInfoDataListByXDateNong(result *data_manage.EdbDataResult, late
|
|
|
yearDataListMap[lv.Year] = lv
|
|
|
}
|
|
|
|
|
|
- for name, dateItem := range dataMap {
|
|
|
- lv, ok1 := yearDataListMap[dateItem.StartDate.Year()]
|
|
|
- if startYear == calendarPreYear {
|
|
|
- lv, ok1 = yearDataListMap[dateItem.EndDate.Year()]
|
|
|
- }
|
|
|
- if !ok1 {
|
|
|
- lv, ok1 = yearDataListMap[dateItem.StartDate.Year()]
|
|
|
- if !ok1 {
|
|
|
- break
|
|
|
- }
|
|
|
- }
|
|
|
- //判断哪些点应该落在同一条时间线上
|
|
|
- maxY := 0
|
|
|
+ //判断哪些点应该落在同一条时间线上
|
|
|
+ maxY := 0
|
|
|
+ for _, lv := range result.List {
|
|
|
for _, item := range lv.Items {
|
|
|
dataTimeT, _ := time.Parse(utils.FormatDate, item.DataTime)
|
|
|
if dataTimeT.Year() > maxY {
|
|
|
maxY = dataTimeT.Year()
|
|
|
}
|
|
|
}
|
|
|
- endTmp := fmt.Sprintf("%d-%s", maxY, xEndDate)
|
|
|
- endTmpT, _ := time.Parse(utils.FormatDate, endTmp)
|
|
|
- minY := maxY
|
|
|
- if jumpYear == 1 {
|
|
|
- minY = maxY - 1
|
|
|
+ }
|
|
|
+ endTmp := fmt.Sprintf("%d-%s", maxY, xEndDate)
|
|
|
+ endTmpT, _ := time.Parse(utils.FormatDate, endTmp)
|
|
|
+ minY := maxY
|
|
|
+ if jumpYear == 1 {
|
|
|
+ minY = maxY - 1
|
|
|
+ }
|
|
|
+ startTmp := fmt.Sprintf("%d-%s", minY, xStartDate)
|
|
|
+ startTmpT, _ := time.Parse(utils.FormatDate, startTmp)
|
|
|
+
|
|
|
+ for name, dateItem := range dataMap {
|
|
|
+ lv, ok1 := yearDataListMap[dateItem.EndDate.Year()]
|
|
|
+ if result.List[0].Year == calendarPreYear {
|
|
|
+ lv, ok1 = yearDataListMap[dateItem.StartDate.Year()]
|
|
|
+ }
|
|
|
+ if !ok1 {
|
|
|
+ break
|
|
|
}
|
|
|
- startTmp := fmt.Sprintf("%d-%s", minY, xStartDate)
|
|
|
- startTmpT, _ := time.Parse(utils.FormatDate, startTmp)
|
|
|
|
|
|
for _, item := range lv.Items {
|
|
|
dataTimeT, _ := time.Parse(utils.FormatDate, item.DataTime)
|
|
@@ -1091,7 +1090,6 @@ func GetSeasonEdbInfoDataListByXDateNong(result *data_manage.EdbDataResult, late
|
|
|
findVal = append(findVal, item)
|
|
|
quarterMap[name] = findVal
|
|
|
}
|
|
|
-
|
|
|
// todo 统计截止日
|
|
|
if lv.Year == endYear && item.DataTime == latestDateStr {
|
|
|
if dv, ok1 := dataMap[name]; ok1 {
|
|
@@ -1125,7 +1123,7 @@ func GetSeasonEdbInfoDataListByXDateNong(result *data_manage.EdbDataResult, late
|
|
|
quarterDataList = append(quarterDataList, quarterItem)
|
|
|
}
|
|
|
|
|
|
- /*if startYear != calendarPreYear {
|
|
|
+ if result.List[0].Year != calendarPreYear {
|
|
|
itemList := make([]*data_manage.EdbDataList, 0)
|
|
|
items := new(data_manage.QuarterData)
|
|
|
//items.Year = calendarPreYear
|
|
@@ -1137,10 +1135,10 @@ func GetSeasonEdbInfoDataListByXDateNong(result *data_manage.EdbDataResult, late
|
|
|
resultData = newResult
|
|
|
} else {
|
|
|
resultData = quarterDataList
|
|
|
- }*/
|
|
|
+ }
|
|
|
|
|
|
if len(quarterDataList) > 0 {
|
|
|
- quarterDataListSort = quarterDataList
|
|
|
+ quarterDataListSort = resultData
|
|
|
sort.Sort(quarterDataListSort)
|
|
|
}
|
|
|
return
|
|
@@ -1916,7 +1914,7 @@ func AddChartInfo(req data_manage.AddChartInfoReq, sysUserId int, sysUserRealNam
|
|
|
|
|
|
// 处理季节性图表横轴配置
|
|
|
{
|
|
|
- if req.SeasonExtraConfig.XStartDate < req.SeasonExtraConfig.XEndDate && req.SeasonExtraConfig.JumpYear != 1 {
|
|
|
+ if req.SeasonExtraConfig.XStartDate > req.SeasonExtraConfig.XEndDate && req.SeasonExtraConfig.JumpYear != 1 {
|
|
|
errMsg = "季节性图表配置信息异常:横坐标日期配置错误"
|
|
|
err = errors.New("季节性图表配置信息异常: 横坐标日期配置错误")
|
|
|
return
|
|
@@ -2250,7 +2248,7 @@ func EditChartInfo(req data_manage.EditChartInfoReq, sysUser *system.Admin) (cha
|
|
|
|
|
|
// 处理季节性图表横轴配置
|
|
|
{
|
|
|
- if req.SeasonExtraConfig.XStartDate < req.SeasonExtraConfig.XEndDate && req.SeasonExtraConfig.JumpYear != 1 {
|
|
|
+ if req.SeasonExtraConfig.XStartDate > req.SeasonExtraConfig.XEndDate && req.SeasonExtraConfig.JumpYear != 1 {
|
|
|
errMsg = "季节性图表配置信息异常:横坐标日期配置错误"
|
|
|
err = errors.New("季节性图表配置信息异常: 横坐标日期配置错误")
|
|
|
return
|