fix: 网元列表预设排序

This commit is contained in:
TsMask
2024-09-03 15:42:41 +08:00
parent 04390ce0dd
commit 2bbaaf7ccd

View File

@@ -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)