ziwen 1 year ago
parent
commit
ccbdb351d5
2 changed files with 57 additions and 1 deletions
  1. 26 1
      models/data_manage/chart_info.go
  2. 31 0
      services/data/chart_info.go

+ 26 - 1
models/data_manage/chart_info.go

@@ -2,10 +2,10 @@ package data_manage
 
 import (
 	"errors"
+	"eta/eta_api/utils"
 	"fmt"
 	"github.com/beego/beego/v2/client/orm"
 	"github.com/rdlucklib/rdluck_tools/paging"
-	"eta/eta_api/utils"
 	"strconv"
 	"strings"
 	"time"
@@ -1644,6 +1644,7 @@ type SectionScatterReq struct {
 type SectionScatterSeriesItemReq struct {
 	Name            string `description:"系列名"`
 	NameEn          string `description:"系列名(英文名)"`
+	IsNameDefault   bool   `description:"是否使用默认的系列名 false修改过 true默认  影响自动更新"`
 	Color           string `description:"颜色"`
 	EdbInfoList     []SectionScatterEdbItemReq
 	ShowTrendLine   bool `description:"是否展示趋势线"`
@@ -1687,6 +1688,7 @@ type SectionScatterInfoResp struct {
 type SectionScatterSeriesItemResp struct {
 	Name            string `description:"系列名"`
 	NameEn          string `description:"系列名(英文)"`
+	IsNameDefault   bool   `description:"是否使用默认的系列名 false修改过 true默认  影响自动更新"`
 	Color           string `description:"颜色"`
 	EdbInfoList     []SectionScatterEdbItemResp
 	ShowTrendLine   bool              `description:"是否展示趋势线"`
@@ -1773,5 +1775,28 @@ func GetChartInfoAdminList() (items []int, err error) {
 	sql := ` SELECT sys_user_id FROM chart_info GROUP BY sys_user_id `
 
 	_, err = o.Raw(sql).QueryRows(&items)
+	return
+}
+
+// EditChartInfoExtraConfig 修改 ETA图库 的 图表额外配置
+func EditChartInfoExtraConfig(chartId int, extraConfig string) (err error) {
+	o := orm.NewOrmUsingDB("data")
+	var pars []interface{}
+	pars = append(pars, extraConfig)
+
+	sql := ` UPDATE  chart_info
+			SET
+			  modify_time = NOW(),
+              extra_config = ?
+			`
+	sql += `WHERE chart_info_id = ?`
+
+	pars = append(pars, extraConfig)
+	_, err = o.Raw(sql, pars).Exec()
+	if err != nil {
+		fmt.Println("UPDATE  chart_info Err:", err.Error())
+		return err
+	}
+
 	return
 }

+ 31 - 0
services/data/chart_info.go

@@ -535,7 +535,37 @@ 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
+				for _, v := range edbList {
+					if v.EdbInfoId == firstXEdbInfoId {
+						tmpExtraConfig.SeriesList[0].Name = v.LatestDate
+					}
+				}
+			}
+		}
+
 		extraConfig = tmpExtraConfig
+
+		extraConfigByte, e := json.Marshal(tmpExtraConfig)
+		if e != nil {
+			errMsg = "截面散点系列更新异常"
+			err = errors.New(errMsg)
+			return
+		}
+		extraConfigStr = string(extraConfigByte)
+
+		err = data_manage.EditChartInfoExtraConfig(chartInfoId, extraConfigStr)
+		if err != nil {
+			errMsg = "截面散点系列更新异常"
+			err = errors.New(errMsg)
+			return
+		}
+
 	default:
 		xEdbIdValue = make([]int, 0)
 		yDataList = make([]data_manage.YData, 0)
@@ -1502,6 +1532,7 @@ func GetSectionScatterChartData(mappingList []*data_manage.ChartEdbInfoMapping,
 		dataListResp = append(dataListResp, data_manage.SectionScatterSeriesItemResp{
 			Name:            seriesItem.Name,
 			NameEn:          seriesItem.NameEn,
+			IsNameDefault:   seriesItem.IsNameDefault,
 			Color:           seriesItem.Color,
 			EdbInfoList:     tmpSeriesEdbInfoList,
 			ShowTrendLine:   seriesItem.ShowTrendLine,