Bladeren bron

截面组合图值排序

xyxie 8 maanden geleden
bovenliggende
commit
181e8ce435
3 gewijzigde bestanden met toevoegingen van 48 en 10 verwijderingen
  1. 32 0
      models/data_manage/chart_series.go
  2. 14 8
      services/data/chart_extra_config.go
  3. 2 2
      services/data/chart_info.go

+ 32 - 0
models/data_manage/chart_series.go

@@ -271,3 +271,35 @@ func DeleteChartSeriesAndEdbMapping(chartInfoId int) (err error) {
 	_, err = to.Raw(sql, chartInfoId).Exec()
 	return
 }
+
+type ChartSectionSeriesValSortAsc []ChartSectionSeriesValSort
+type ChartSectionSeriesValSortDesc []ChartSectionSeriesValSort
+
+type ChartSectionSeriesValSort struct {
+	Index int
+	Value float64
+}
+
+func (s ChartSectionSeriesValSortAsc) Len() int {
+	return len(s)
+}
+
+func (s ChartSectionSeriesValSortAsc) Less(i, j int) bool {
+	return s[i].Value < s[j].Value // 升序排序,如果想要降序则改为 s[i].Value > s[j].Value
+}
+
+func (s ChartSectionSeriesValSortAsc) Swap(i, j int) {
+	s[i], s[j] = s[j], s[i]
+}
+
+func (s ChartSectionSeriesValSortDesc) Len() int {
+	return len(s)
+}
+
+func (s ChartSectionSeriesValSortDesc) Less(i, j int) bool {
+	return s[i].Value > s[j].Value // 升序排序,如果想要降序则改为 s[i].Value > s[j].Value
+}
+
+func (s ChartSectionSeriesValSortDesc) Swap(i, j int) {
+	s[i], s[j] = s[j], s[i]
+}

+ 14 - 8
services/data/chart_extra_config.go

@@ -393,7 +393,7 @@ func GetChartSectionCombineData(chartInfo *data_manage.ChartInfo, mappingList []
 			}
 			seriesItem.EdbInfoList[index].EdbName = edbMappingInfo.EdbName
 			seriesItem.EdbInfoList[index].EdbNameEn = edbMappingInfo.EdbNameEn
-			seriesItem.EdbInfoList[index].EdbInfoType = edbMappingInfo.EdbInfoType
+			seriesItem.EdbInfoList[index].EdbInfoType = edbMappingInfo.EdbInfoCategoryType
 			seriesItem.EdbInfoList[index].Unit = edbMappingInfo.Unit
 			seriesItem.EdbInfoList[index].UnitEn = edbMappingInfo.UnitEn
 			if index == 0 {
@@ -901,15 +901,21 @@ func SortChartSeriesDataSet(baseName string, baseDataList []float64, baseSeriesN
 
 	}
 	length := len(indices)
-	// 根据Group1的数据进行排序,asc决定是升序还是降序
+	baseDataSortList := make([]data_manage.ChartSectionSeriesValSort, length)
+	for i, value := range baseDataList {
+		if i < length {
+			baseDataSortList[i] = data_manage.ChartSectionSeriesValSort{Index: i, Value: value}
+		}
+	}
 	if asc == 1 {
-		sort.Slice(indices, func(i, j int) bool {
-			return baseDataList[i] < baseDataList[j]
-		})
+		// 使用sort.Sort进行排序
+		sort.Sort(data_manage.ChartSectionSeriesValSortAsc(baseDataSortList))
 	} else {
-		sort.Slice(indices, func(i, j int) bool {
-			return baseDataList[i] > baseDataList[j]
-		})
+		sort.Sort(data_manage.ChartSectionSeriesValSortDesc(baseDataSortList))
+	}
+
+	for k, v := range baseDataSortList {
+		indices[k] = v.Index
 	}
 
 	for i := range newIndices {

+ 2 - 2
services/data/chart_info.go

@@ -394,7 +394,7 @@ func GetChartEdbData(chartInfoId, chartType int, calendar, startDate, endDate st
 					err = json.Unmarshal([]byte(v.DateConf), &dateConf)
 					if err != nil {
 						errMsg = "截面组合图配置异常"
-						err = errors.New(errMsg + e.Error())
+						err = errors.New(errMsg + err.Error())
 						return
 					}
 				}
@@ -3501,7 +3501,7 @@ func GetChartEdbDataV2(chartInfoId, chartType int, calendar, startDate, endDate
 					err = json.Unmarshal([]byte(v.DateConf), &dateConf)
 					if err != nil {
 						errMsg = "截面组合图配置异常"
-						err = errors.New(errMsg + e.Error())
+						err = errors.New(errMsg + err.Error())
 						return
 					}
 				}