|
@@ -336,7 +336,7 @@ func handleChartSectionCombineData(extraConfig data_manage.ChartSectionAllExtraC
|
|
|
}
|
|
|
|
|
|
// GetChartSectionCombineData 截面组合图的数据处理
|
|
|
-func GetChartSectionCombineData(chartInfoId int, mappingList []*data_manage.ChartEdbInfoMapping, edbDataListMap map[int][]*data_manage.EdbDataList, extraConfig data_manage.ChartSectionAllExtraConf) (edbIdList []int, dataListResp data_manage.ChartSectionCombineDataResp, err error) {
|
|
|
+func GetChartSectionCombineData(chartInfo *data_manage.ChartInfo, mappingList []*data_manage.ChartEdbInfoMapping, edbDataListMap map[int][]*data_manage.EdbDataList, extraConfig data_manage.ChartSectionAllExtraConf) (edbIdList []int, dataListResp data_manage.ChartSectionCombineDataResp, 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 {
|
|
@@ -365,7 +365,14 @@ func GetChartSectionCombineData(chartInfoId int, mappingList []*data_manage.Char
|
|
|
// 组装数据
|
|
|
baseSeries := new(data_manage.ChartSectionSeriesItem) //y轴的系列
|
|
|
var firstUnit, leftUnit, rightUnit, right2Unit *data_manage.XData
|
|
|
-
|
|
|
+ var (
|
|
|
+ LeftMin float64
|
|
|
+ LeftMax float64
|
|
|
+ RightMin float64
|
|
|
+ RightMax float64
|
|
|
+ Right2Min float64
|
|
|
+ Right2Max float64
|
|
|
+ )
|
|
|
for _, seriesItem := range extraConfig.SeriesList {
|
|
|
var maxDate time.Time
|
|
|
var minVal, maxVal float64
|
|
@@ -461,6 +468,39 @@ func GetChartSectionCombineData(chartInfoId int, mappingList []*data_manage.Char
|
|
|
} else if seriesItem.IsAxis == 2 && right2Unit == nil {
|
|
|
right2Unit = firstUnit
|
|
|
}
|
|
|
+
|
|
|
+ //处理上下限
|
|
|
+ var minData, maxData float64
|
|
|
+ for _, d := range seriesItem.DataList {
|
|
|
+ if minData > d {
|
|
|
+ minData = d
|
|
|
+ }
|
|
|
+ if maxData < d {
|
|
|
+ maxData = d
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if seriesItem.IsAxis == 1 {
|
|
|
+ if LeftMin > minData {
|
|
|
+ LeftMin = minData
|
|
|
+ }
|
|
|
+ if LeftMax < maxData {
|
|
|
+ LeftMax = maxData
|
|
|
+ }
|
|
|
+ } else if seriesItem.IsAxis == 0 {
|
|
|
+ if RightMin > minData {
|
|
|
+ RightMin = minData
|
|
|
+ }
|
|
|
+ if RightMax < maxData {
|
|
|
+ RightMax = maxData
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ if Right2Min > minData {
|
|
|
+ Right2Min = minData
|
|
|
+ }
|
|
|
+ if Right2Max < maxData {
|
|
|
+ Right2Max = maxData
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|
|
|
// 处理横轴
|
|
|
// 遍历基准系列,判断有几个横轴名称
|
|
@@ -526,6 +566,22 @@ func GetChartSectionCombineData(chartInfoId int, mappingList []*data_manage.Char
|
|
|
unitList.RightTwoNameEn = extraConfig.UnitList.RightTwoNameEn
|
|
|
}
|
|
|
|
|
|
+ if chartInfo != nil && chartInfo.MinMaxSave == 1 {
|
|
|
+ dataListResp.LeftMin = chartInfo.LeftMin
|
|
|
+ dataListResp.LeftMax = chartInfo.LeftMax
|
|
|
+ dataListResp.RightMin = chartInfo.RightMin
|
|
|
+ dataListResp.RightMax = chartInfo.RightMax
|
|
|
+ dataListResp.Right2Min = chartInfo.Right2Min
|
|
|
+ dataListResp.Right2Max = chartInfo.Right2Max
|
|
|
+ } else {
|
|
|
+ dataListResp.LeftMin = strconv.FormatFloat(LeftMin, 'f', -1, 64)
|
|
|
+ dataListResp.LeftMax = strconv.FormatFloat(LeftMax, 'f', -1, 64)
|
|
|
+ dataListResp.RightMin = strconv.FormatFloat(RightMin, 'f', -1, 64)
|
|
|
+ dataListResp.RightMax = strconv.FormatFloat(RightMax, 'f', -1, 64)
|
|
|
+ dataListResp.Right2Min = strconv.FormatFloat(Right2Min, 'f', -1, 64)
|
|
|
+ dataListResp.Right2Max = strconv.FormatFloat(Right2Max, 'f', -1, 64)
|
|
|
+ }
|
|
|
+
|
|
|
dataListResp.SeriesList = extraConfig.SeriesList
|
|
|
dataListResp.DateConfList = extraConfig.DateConfList
|
|
|
dataListResp.BaseChartSeriesName = extraConfig.BaseChartSeriesName
|