Browse Source

雷达图主题

xyxie 1 year ago
parent
commit
08a792b415
2 changed files with 44 additions and 3 deletions
  1. 6 0
      controllers/data_manage/chart_theme.go
  2. 38 3
      services/data/chart_theme.go

+ 6 - 0
controllers/data_manage/chart_theme.go

@@ -166,6 +166,12 @@ func (c *ChartThemeController) GetThemePreviewData() {
 		edbInfoIdList = []int{9, 10, 11, 12, 13, 14, 15, 16, 17, 18}
 		extraConfigStr = `{"XName":"123","XNameEn":"123","XUnitName":"无","XUnitNameEn":"none","YName":"321","YNameEn":"321","YUnitName":"无","YUnitNameEn":"none","XMinValue":"0.3686","XMaxValue":"0.3686","YMinValue":"-0.1398","YMaxValue":"-0.1398","SeriesList":[{"Name":"2021-11-21","NameEn":"2021-11-21","IsNameDefault":true,"Color":"#00f","EdbInfoList":[{"XEdbInfoId":9,"YEdbInfoId":14,"Name":"指标1","NameEn":"","XDateType":1,"XDate":"","XDateValue":0,"YDateType":1,"YDate":"","YDateValue":0,"IsShow":false},{"XEdbInfoId":10,"YEdbInfoId":15,"Name":"指标2","NameEn":"指标2","XDateType":1,"XDate":"","XDateValue":0,"YDateType":1,"YDate":"","YDateValue":0,"IsShow":false},{"XEdbInfoId":11,"YEdbInfoId":16,"Name":"指标3","NameEn":"","XDateType":1,"XDate":"","XDateValue":0,"YDateType":1,"YDate":"","YDateValue":0,"IsShow":false},{"XEdbInfoId":12,"YEdbInfoId":17,"Name":"指标4","NameEn":"指标4","XDateType":1,"XDate":"","XDateValue":0,"YDateType":1,"YDate":"","YDateValue":0,"IsShow":false},{"XEdbInfoId":13,"YEdbInfoId":18,"Name":"指标5","NameEn":"","XDateType":1,"XDate":"","XDateValue":0,"YDateType":1,"YDate":"","YDateValue":0,"IsShow":false}],"ShowTrendLine":false,"ShowFitEquation":false,"ShowRSquare":false}]}`
 		chartInfo.ChartName = "截面散点图"
+	case utils.CHART_TYPE_RADAR:
+		edbInfoIdList = []int{1, 2, 3, 4, 5}
+		chartInfo.LeftMin = "260"
+		chartInfo.LeftMax = "430"
+		extraConfigStr = `{"EdbInfoIdList":[{"EdbInfoId":1,"Name":"指标1","NameEn":"","Source":0},{"EdbInfoId":2,"Name":"指标2","NameEn":"","Source":0},{"EdbInfoId":3,"Name":"指标3","NameEn":"","Source":0},{"EdbInfoId":4,"Name":"指标4","NameEn":"","Source":0},{"EdbInfoId":5,"Name":"指标5","NameEn":"","Source":0}],"DateList":[{"Type":2,"Date":"","Value":100,"Color":"#00f","Name":""},{"Type":1,"Date":"","Value":0,"Color":"#f00","Name":""}],"Unit":"千桶","UnitEn":""}`
+		chartInfo.ChartName = "雷达图"
 	default:
 		br.Msg = "暂不支持该类型"
 		br.IsSendEmail = false

+ 38 - 3
services/data/chart_theme.go

@@ -49,7 +49,20 @@ func GetThemePreviewChartEdbData(chartType int, calendar, startDate, endDate str
 		}
 
 		extraConfig = tmpExtraConfig
-
+	case utils.CHART_TYPE_RADAR:
+		var barConfig data_manage.RadarChartInfoReq
+		if extraConfigStr == `` {
+			errMsg = "雷达图未配置"
+			err = errors.New(errMsg)
+			return
+		}
+		err = json.Unmarshal([]byte(extraConfigStr), &barConfig)
+		if err != nil {
+			errMsg = "雷达图配置异常"
+			err = errors.New(errMsg)
+			return
+		}
+		extraConfig = barConfig
 	default:
 		xEdbIdValue = make([]int, 0)
 		yDataList = make([]data_manage.YData, 0)
@@ -103,8 +116,30 @@ func GetThemePreviewChartEdbData(chartType int, calendar, startDate, endDate str
 		for _, v := range edbList {
 			v.DataList = nil
 		}
-	}
 
+	case utils.CHART_TYPE_RADAR: //雷达图
+		radarConf := extraConfig.(data_manage.RadarChartInfoReq)
+		xEdbIdValue, dataResp, err = RadarChartData(edbDataListMap, radarConf)
+
+		// todo 中英文单位设置
+		/*
+			chartDataResp := dataResp.(data_manage.RadarChartInfoResp)
+			for k := range chartDataResp.YDataList {
+				yDataList[k].Unit = radarConf.Unit
+				yDataList[k].UnitEn = radarConf.UnitEn
+			}*/
+
+		for _, v := range edbList {
+			// 指标别名
+			if radarConf.EdbInfoIdList != nil && len(radarConf.EdbInfoIdList) > 0 {
+				for _, reqEdb := range radarConf.EdbInfoIdList {
+					if v.EdbInfoId == reqEdb.EdbInfoId {
+						v.EdbAliasName = reqEdb.Name
+					}
+				}
+			}
+		}
+	}
 	return
 }
 
@@ -228,7 +263,7 @@ func getThemePreviewEdbDataMapList(chartType int, calendar, startDate, endDate s
 				return
 			}
 			item.DataList = quarterDataList
-		} else if chartType == 7 { //柱方图
+		} else if chartType == 7 || chartType == utils.CHART_TYPE_RADAR { //柱方图
 			//item.DataList = dataList
 		} else {
 			item.DataList = dataList