Browse Source

Merge branch 'ETA_1.1.1' into debug

ziwen 1 year ago
parent
commit
9033b74d46
2 changed files with 50 additions and 35 deletions
  1. 1 1
      models/data_manage/chart_info.go
  2. 49 34
      services/data/chart_info.go

+ 1 - 1
models/data_manage/chart_info.go

@@ -1839,7 +1839,7 @@ func EditChartInfoExtraConfig(chartId int, extraConfig string) (err error) {
 			`
 	sql += `WHERE chart_info_id = ?`
 
-	pars = append(pars, extraConfig)
+	pars = append(pars, chartId)
 	_, err = o.Raw(sql, pars).Exec()
 	if err != nil {
 		fmt.Println("UPDATE  chart_info Err:", err.Error())

+ 49 - 34
services/data/chart_info.go

@@ -535,40 +535,9 @@ func GetChartEdbData(chartInfoId, chartType int, calendar, startDate, endDate st
 			err = errors.New(errMsg)
 			return
 		}
-
-		// 截面散点图点击详情时自动更新系列名
-		if len(tmpExtraConfig.SeriesList) > 0 {
-			// 默认名字的时候才自动更新
-			if tmpExtraConfig.SeriesList[0].IsNameDefault {
-				firstXEdbInfoId := tmpExtraConfig.SeriesList[0].EdbInfoList[0].XEdbInfoId
-				needUpdate := false
-				for _, v := range edbList {
-					if v.EdbInfoId == firstXEdbInfoId {
-						tmpExtraConfig.SeriesList[0].Name = v.LatestDate
-						needUpdate = true
-					}
-				}
-				if needUpdate {
-					err = data_manage.EditChartInfoExtraConfig(chartInfoId, extraConfigStr)
-					if err != nil {
-						errMsg = "截面散点系列更新异常"
-						err = errors.New(errMsg)
-						return
-					}
-				}
-			}
-		}
-
+		
 		extraConfig = tmpExtraConfig
 
-		extraConfigByte, e := json.Marshal(tmpExtraConfig)
-		if e != nil {
-			errMsg = "截面散点系列更新异常"
-			err = errors.New(errMsg)
-			return
-		}
-		extraConfigStr = string(extraConfigByte)
-
 	default:
 		xEdbIdValue = make([]int, 0)
 		yDataList = make([]data_manage.YData, 0)
@@ -603,7 +572,20 @@ func GetChartEdbData(chartInfoId, chartType int, calendar, startDate, endDate st
 		}
 	case 10: // 截面散点图
 		sectionScatterConf := extraConfig.(data_manage.SectionScatterReq)
-		xEdbIdValue, dataResp, err = GetSectionScatterChartData(mappingList, edbDataListMap, sectionScatterConf)
+		xEdbIdValue, dataResp, err = GetSectionScatterChartData(chartInfoId, mappingList, edbDataListMap, sectionScatterConf)
+
+		var tmpExtraConfig data_manage.SectionScatterReq
+		if extraConfigStr == `` {
+			errMsg = "截面散点图未配置"
+			err = errors.New(errMsg)
+			return
+		}
+		err = json.Unmarshal([]byte(extraConfigStr), &tmpExtraConfig)
+		if err != nil {
+			errMsg = "截面散点配置异常"
+			err = errors.New(errMsg)
+			return
+		}
 
 		// 这个数据没有必要返回给前端
 		for _, v := range edbList {
@@ -1537,7 +1519,7 @@ func CheckChartExtraConfig(chartType int, extraConfigStr string) (edbIdList []in
 }
 
 // GetSectionScatterChartData 截面散点图的数据处理
-func GetSectionScatterChartData(mappingList []*data_manage.ChartEdbInfoMapping, edbDataListMap map[int][]*data_manage.EdbDataList, extraConfig data_manage.SectionScatterReq) (edbIdList []int, chartDataResp data_manage.SectionScatterInfoResp, err error) {
+func GetSectionScatterChartData(chartInfoId int, mappingList []*data_manage.ChartEdbInfoMapping, edbDataListMap map[int][]*data_manage.EdbDataList, extraConfig data_manage.SectionScatterReq) (edbIdList []int, chartDataResp data_manage.SectionScatterInfoResp, err error) {
 	// 指标数据数组(10086:{"2022-12-02":100.01,"2022-12-01":102.3})
 	edbDataMap := make(map[int]map[string]float64)
 	for edbInfoId, edbDataList := range edbDataListMap {
@@ -1810,6 +1792,39 @@ func GetSectionScatterChartData(mappingList []*data_manage.ChartEdbInfoMapping,
 		})
 	}
 
+	// 截面散点图点击详情时自动更新系列名
+	if len(extraConfig.SeriesList) > 0 {
+		// 默认名字的时候才自动更新
+		if extraConfig.SeriesList[0].IsNameDefault {
+			firstXEdbInfoId := extraConfig.SeriesList[0].EdbInfoList[0].XEdbInfoId
+			needUpdate := false
+			if v, ok := edbMappingMap[firstXEdbInfoId]; ok {
+				extraConfig.SeriesList[0].Name = v.LatestDate
+				extraConfig.SeriesList[0].NameEn = v.LatestDate
+				dataListResp[0].Name = v.LatestDate
+				dataListResp[0].NameEn = v.LatestDate
+				needUpdate = true
+			}
+
+			extraConfigByte, e := json.Marshal(extraConfig)
+			if e != nil {
+				errMsg := "截面散点系列更新异常"
+				err = errors.New(errMsg)
+				return
+			}
+			extraConfigStr := string(extraConfigByte)
+
+			if needUpdate {
+				err = data_manage.EditChartInfoExtraConfig(chartInfoId, extraConfigStr)
+				if err != nil {
+					errMsg := "截面散点系列更新异常"
+					err = errors.New(errMsg)
+					return
+				}
+			}
+		}
+	}
+
 	chartDataResp = data_manage.SectionScatterInfoResp{
 		XName:       extraConfig.XName,
 		XNameEn:     extraConfig.XNameEn,