modelRT/util/convert.go

28 lines
696 B
Go
Raw Normal View History

// Package util provide some utility fun
package util
import (
"sort"
"github.com/redis/go-redis/v9"
)
// ConvertZSetMembersToFloat64 define func to conver zset member type to float64
func ConvertZSetMembersToFloat64(members []redis.Z) []float64 {
dataFloats := make([]float64, 0, len(members))
// recovery time sorted in ascending order
sortRedisZByTimeMemberAscending(members)
for _, member := range members {
dataFloats = append(dataFloats, member.Score)
}
return dataFloats
}
func sortRedisZByTimeMemberAscending(data []redis.Z) {
sort.Slice(data, func(i, j int) bool {
memberI := data[i].Member.(string)
memberJ := data[j].Member.(string)
return memberI < memberJ
})
}