|
@@ -362,56 +362,6 @@ func HandleDataByCalculateType(originList []*data_manage.ChartRangeAnalysisDateD
|
|
|
return
|
|
|
}
|
|
|
|
|
|
-// MoveDataDaysToNewDataList 平移指标数据生成新的数据序列
|
|
|
-func MoveDataDaysToNewDataList(dataList []*data_manage.EdbDataList, moveDay int) (newDataList []data_manage.EdbDataList, dateDataMap map[string]float64) {
|
|
|
- dateMap := make(map[time.Time]float64)
|
|
|
- var minDate, maxDate time.Time
|
|
|
- dateDataMap = make(map[string]float64)
|
|
|
-
|
|
|
- for _, v := range dataList {
|
|
|
- currDate, _ := time.ParseInLocation(utils.FormatDate, v.DataTime, time.Local)
|
|
|
- if minDate.IsZero() || currDate.Before(minDate) {
|
|
|
- minDate = currDate
|
|
|
- }
|
|
|
- if maxDate.IsZero() || currDate.After(maxDate) {
|
|
|
- maxDate = currDate
|
|
|
- }
|
|
|
- dateMap[currDate] = v.Value
|
|
|
- }
|
|
|
-
|
|
|
- // 处理领先、滞后数据
|
|
|
- newDateMap := make(map[time.Time]float64)
|
|
|
- for currDate, value := range dateMap {
|
|
|
- newDate := currDate.AddDate(0, 0, moveDay)
|
|
|
- newDateMap[newDate] = value
|
|
|
- }
|
|
|
- minDate = minDate.AddDate(0, 0, moveDay)
|
|
|
- maxDate = maxDate.AddDate(0, 0, moveDay)
|
|
|
-
|
|
|
- // 获取日期相差日
|
|
|
- dayNum := utils.GetTimeSubDay(minDate, maxDate)
|
|
|
-
|
|
|
- for i := 0; i <= dayNum; i++ {
|
|
|
- currDate := minDate.AddDate(0, 0, i)
|
|
|
- tmpValue, ok := newDateMap[currDate]
|
|
|
- if !ok {
|
|
|
- //找不到数据,那么就用前面的数据吧
|
|
|
- if len(newDataList)-1 < 0 {
|
|
|
- tmpValue = 0
|
|
|
- } else {
|
|
|
- tmpValue = newDataList[len(newDataList)-1].Value
|
|
|
- }
|
|
|
- }
|
|
|
- tmpData := data_manage.EdbDataList{
|
|
|
- DataTime: currDate.Format(utils.FormatDate),
|
|
|
- Value: tmpValue,
|
|
|
- }
|
|
|
- dateDataMap[tmpData.DataTime] = tmpData.Value
|
|
|
- newDataList = append(newDataList, tmpData)
|
|
|
- }
|
|
|
- return
|
|
|
-}
|
|
|
-
|
|
|
// GetChartEdbInfoFormat 区间计算图表-获取指标信息
|
|
|
func GetChartEdbInfoFormat(chartInfoId int, edbInfoMappingList []*data_manage.ChartEdbInfoMapping) (edbList []*data_manage.ChartEdbInfoMapping, err error) {
|
|
|
edbList = make([]*data_manage.ChartEdbInfoMapping, 0)
|
|
@@ -455,9 +405,15 @@ func GetChartDataByEdbInfoList(chartInfoId int, dateType, startYear int, startDa
|
|
|
if err != nil {
|
|
|
return
|
|
|
}
|
|
|
+ edbInfoMapping.ConvertUnit = edbInfoMapping.Unit
|
|
|
+ edbInfoMapping.ConvertEnUnit = edbInfoMapping.UnitEn
|
|
|
if req.CalculateType == 2 || req.CalculateType == 3 {
|
|
|
- edbInfoMapping.Unit = "无"
|
|
|
- edbInfoMapping.UnitEn = "无"
|
|
|
+ edbInfoMapping.ConvertUnit = "无"
|
|
|
+ edbInfoMapping.ConvertEnUnit = "无"
|
|
|
+ }
|
|
|
+ if req.DataConvertType > 0 && req.DataConvertConf.Unit != "" {
|
|
|
+ edbInfoMapping.ConvertUnit = req.DataConvertConf.Unit
|
|
|
+ edbInfoMapping.ConvertEnUnit = req.DataConvertConf.Unit
|
|
|
}
|
|
|
dataList := edbInfoMapping.DataList.([]*data_manage.EdbDataList)
|
|
|
// 处理上下限
|
|
@@ -576,9 +532,15 @@ func GetChartDataByEdbInfoListBySeries(chartInfoId int, dateType, startYear int,
|
|
|
err = e
|
|
|
return
|
|
|
}
|
|
|
+ edbInfoMapping.ConvertUnit = edbInfoMapping.Unit
|
|
|
+ edbInfoMapping.ConvertEnUnit = edbInfoMapping.UnitEn
|
|
|
if req.CalculateType == 2 || req.CalculateType == 3 {
|
|
|
- edbInfoMapping.Unit = "无"
|
|
|
- edbInfoMapping.UnitEn = "无"
|
|
|
+ edbInfoMapping.ConvertUnit = "无"
|
|
|
+ edbInfoMapping.ConvertEnUnit = "无"
|
|
|
+ }
|
|
|
+ if req.DataConvertType > 0 && req.DataConvertConf.Unit != "" {
|
|
|
+ edbInfoMapping.ConvertUnit = req.DataConvertConf.Unit
|
|
|
+ edbInfoMapping.ConvertEnUnit = req.DataConvertConf.Unit
|
|
|
}
|
|
|
edbInfoMapping.DataList = dataList
|
|
|
// 处理上下限
|