diff --git a/src/modules/network_element/repository/ne_info.impl.go b/src/modules/network_element/repository/ne_info.impl.go index 36607eff..adbc75c8 100644 --- a/src/modules/network_element/repository/ne_info.impl.go +++ b/src/modules/network_element/repository/ne_info.impl.go @@ -2,7 +2,6 @@ package repository import ( "fmt" - "sort" "strings" "time" @@ -82,29 +81,21 @@ func (r *NeInfoImpl) convertResultRows(rows []map[string]any) []model.NeInfo { arr = append(arr, item) } - // 排序 - sort.Slice(arr, func(i, j int) bool { - // 前一个 - after := arr[i] - afterIndex := 0 - for i, v := range neListSort { - if after.NeType == v { - afterIndex = i - break + // 创建优先级映射 + priority := make(map[string]int) + for i, v := range neListSort { + priority[v] = i + } + // 冒泡排序 + n := len(arr) + for i := 0; i < n-1; i++ { + for j := 0; j < n-i-1; j++ { + if priority[arr[j].NeType] > priority[arr[j+1].NeType] { + // 交换元素 + arr[j], arr[j+1] = arr[j+1], arr[j] } } - // 后一个 - befter := arr[j] - befterIndex := 0 - for i, v := range neListSort { - if befter.NeType == v { - befterIndex = i - break - } - } - // 升序 - return afterIndex < befterIndex - }) + } return arr } @@ -175,7 +166,7 @@ func (r *NeInfoImpl) SelectPage(query map[string]any) map[string]any { params = append(params, pageSize) // 查询数据 - querySql := r.selectSql + whereSql + " order by ne_type asc, ne_id desc " + pageSql + querySql := r.selectSql + whereSql + " order by ne_type asc, ne_id asc " + pageSql results, err := datasource.RawDB("", querySql, params) if err != nil { logger.Errorf("query err => %v", err) @@ -208,7 +199,7 @@ func (r *NeInfoImpl) SelectList(neInfo model.NeInfo) []model.NeInfo { } // 查询数据 - querySql := r.selectSql + whereSql + " order by ne_type asc, ne_id desc " + querySql := r.selectSql + whereSql + " order by ne_type asc, ne_id asc " results, err := datasource.RawDB("", querySql, params) if err != nil { logger.Errorf("query err => %v", err)