xyxie 6 months ago
parent
commit
b518e28597
1 changed files with 24 additions and 12 deletions
  1. 24 12
      services/data/range_analysis/chart_info.go

+ 24 - 12
services/data/range_analysis/chart_info.go

@@ -80,7 +80,7 @@ func HandleDataByCalculateType(originList []*data_manage.ChartRangeAnalysisDateD
 	switch calculateType {
 	case 0: //均值
 		var sum float64
-		if req.DateRangeType == 0 {
+		if req.DateRangeType == 0 && req.AutoDateConf.IsAutoStartDate > 0 {
 			for _, item := range originList {
 				for _, v := range item.DataList {
 					sum = 0
@@ -120,7 +120,7 @@ func HandleDataByCalculateType(originList []*data_manage.ChartRangeAnalysisDateD
 
 	case 1: //累计值
 		var sum float64
-		if req.DateRangeType == 0 {
+		if req.DateRangeType == 0 && req.AutoDateConf.IsAutoStartDate > 0 {
 			for _, item := range originList {
 				sum = 0
 				for _, v := range item.DataList {
@@ -160,7 +160,7 @@ func HandleDataByCalculateType(originList []*data_manage.ChartRangeAnalysisDateD
 		}
 
 	case 2: //涨幅
-		if req.DateRangeType == 0 {
+		if req.DateRangeType == 0 && req.AutoDateConf.IsAutoStartDate > 0 {
 			for _, item := range originList {
 				for _, v := range item.DataList {
 					var baseVal float64
@@ -208,7 +208,7 @@ func HandleDataByCalculateType(originList []*data_manage.ChartRangeAnalysisDateD
 			}
 		}
 	case 3: //复合增长率
-		if req.DateRangeType == 0 {
+		if req.DateRangeType == 0 && req.AutoDateConf.IsAutoStartDate > 0 {
 			for _, item := range originList {
 				for _, v := range item.DataList {
 					var baseVal float64
@@ -282,7 +282,7 @@ func HandleDataByCalculateType(originList []*data_manage.ChartRangeAnalysisDateD
 		}
 	case 4: //最大值
 		var maxVal float64
-		if req.DateRangeType == 0 {
+		if req.DateRangeType == 0 && req.AutoDateConf.IsAutoStartDate > 0 {
 			for _, item := range originList {
 				for _, v := range item.DataList {
 					calDataList, e := GetAutoCalculateDateDataList(v.DataTime, originDataList, req)
@@ -321,7 +321,7 @@ func HandleDataByCalculateType(originList []*data_manage.ChartRangeAnalysisDateD
 		}
 	case 5: //最小值
 		var minVal float64
-		if req.DateRangeType == 0 {
+		if req.DateRangeType == 0 && req.AutoDateConf.IsAutoStartDate > 0 {
 			for _, item := range originList {
 				for _, v := range item.DataList {
 					calDataList, e := GetAutoCalculateDateDataList(v.DataTime, originDataList, req)
@@ -405,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)
 		// 处理上下限
@@ -526,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
 		// 处理上下限
@@ -653,13 +665,13 @@ func getChartDataByEdbInfo(edbInfoMapping *data_manage.ChartEdbInfoMapping, req
 		// 智能划分得到一个开始日期,和结束日期
 		var startDateTime, endDateTime time.Time
 		startDateTime = edbStartDateTime
-		/*if req.AutoDateConf.IsAutoStartDate == 0 { //固定设置
+		if req.AutoDateConf.IsAutoStartDate == 0 { //固定设置
 			startDate := req.AutoDateConf.StartDate
 			if startDate == "" {
 				startDate = "2020-01-01"
 			}
 			startDateTime, _ = time.ParseInLocation(utils.FormatDate, startDate, time.Local)
-		} else {
+		} /*else {
 			startConf := req.AutoDateConf.StartDateConf
 			startDate := ""
 			if startConf.BaseDateType == 0 { //