|
@@ -73,7 +73,7 @@ func GetMixedTableCellData(mixedTableReq request.MixedTableReq) (newMixedTableCe
|
|
|
// 日度指标数据map
|
|
|
edbDayDataListMap := make(map[int]map[string]float64)
|
|
|
// 月度指标数据map
|
|
|
- edbMonthDataListMap := make(map[int]map[string]float64)
|
|
|
+ edbMonthDataListMap := make(map[int]map[string]string)
|
|
|
// 日度指标数据map
|
|
|
edbDataListMap := make(map[int][]*data_manage.EdbDataList)
|
|
|
for _, edbInfo := range edbInfoList {
|
|
@@ -90,18 +90,19 @@ func GetMixedTableCellData(mixedTableReq request.MixedTableReq) (newMixedTableCe
|
|
|
}
|
|
|
|
|
|
dateValMap := make(map[string]float64)
|
|
|
- monthValMap := make(map[string]float64)
|
|
|
+ monthDateMap := make(map[string]string)
|
|
|
for _, tmpData := range dataList {
|
|
|
// 日度数据
|
|
|
dateValMap[tmpData.DataTime] = tmpData.Value
|
|
|
// 月度数据(取该月份的第一个数据)
|
|
|
yearMonth := strings.Join(strings.Split(tmpData.DataTime, "-")[0:2], "-")
|
|
|
- if _, ok := monthValMap[yearMonth]; !ok {
|
|
|
- monthValMap[yearMonth] = tmpData.Value
|
|
|
+ if _, ok := monthDateMap[yearMonth]; !ok {
|
|
|
+ // 存最早的时间
|
|
|
+ monthDateMap[yearMonth] = tmpData.DataTime
|
|
|
}
|
|
|
}
|
|
|
edbDayDataListMap[edbInfo.EdbInfoId] = dateValMap
|
|
|
- edbMonthDataListMap[edbInfo.EdbInfoId] = monthValMap
|
|
|
+ edbMonthDataListMap[edbInfo.EdbInfoId] = monthDateMap
|
|
|
edbDataListMap[edbInfo.EdbInfoId] = dataList
|
|
|
}
|
|
|
|
|
@@ -242,22 +243,36 @@ func GetMixedTableCellData(mixedTableReq request.MixedTableReq) (newMixedTableCe
|
|
|
} else {
|
|
|
tmpDateList := strings.Split(cell.DataTime, "-")
|
|
|
tmpDateValMap := make(map[string]float64)
|
|
|
+ var newDate string
|
|
|
if len(tmpDateList) == 2 {
|
|
|
//月度数据
|
|
|
- if dateValMap, ok := edbMonthDataListMap[cell.EdbInfoId]; ok {
|
|
|
- tmpDateValMap = dateValMap
|
|
|
+ if dateMap, ok1 := edbMonthDataListMap[cell.EdbInfoId]; ok1 {
|
|
|
+ if d, ok2 := dateMap[cell.DataTime]; ok2 {
|
|
|
+ newDate = d
|
|
|
+ }
|
|
|
}
|
|
|
} else {
|
|
|
// 日度数据
|
|
|
- if dateValMap, ok := edbDayDataListMap[cell.EdbInfoId]; ok {
|
|
|
- tmpDateValMap = dateValMap
|
|
|
- }
|
|
|
+ newDate = cell.DataTime
|
|
|
+ }
|
|
|
+ // 日期变换后才能确定最后的时间
|
|
|
+ //做期数前移动和日期变换
|
|
|
+ if !strings.Contains(cell.Value, "{") {
|
|
|
+ cell.Value = ""
|
|
|
+ }
|
|
|
|
|
|
+ newDate, err = HandleMixTableDateChange(newDate, cell.Value)
|
|
|
+ if err != nil {
|
|
|
+ return
|
|
|
}
|
|
|
- if val, ok2 := tmpDateValMap[cell.DataTime]; ok2 {
|
|
|
- //cell.ShowValue = fmt.Sprint(val)
|
|
|
- cellKeyVal[cell.Uid] = val
|
|
|
- cell.ShowValue = utils.FormatTableDataShowValue(val)
|
|
|
+
|
|
|
+ if dateValMap, ok3 := edbDayDataListMap[cell.EdbInfoId]; ok3 {
|
|
|
+ tmpDateValMap = dateValMap
|
|
|
+ if val, ok2 := tmpDateValMap[cell.DataTime]; ok2 {
|
|
|
+ //cell.ShowValue = fmt.Sprint(val)
|
|
|
+ cellKeyVal[cell.Uid] = val
|
|
|
+ cell.ShowValue = utils.FormatTableDataShowValue(val)
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
}
|