feat: add server-side pagination (#312)

Signed-off-by: “seriouszyx” <seriouszyx@foxmail.com>
This commit is contained in:
Yixiang Zhao
2021-11-06 11:32:22 +08:00
committed by GitHub
parent 7520b71198
commit b1db47bad1
28 changed files with 444 additions and 103 deletions

View File

@ -49,6 +49,15 @@ type TokenWrapper struct {
Scope string `json:"scope"`
}
func GetTokenCount(owner string) int {
count, err := adapter.Engine.Count(&Token{Owner: owner})
if err != nil {
panic(err)
}
return int(count)
}
func GetTokens(owner string) []*Token {
tokens := []*Token{}
err := adapter.Engine.Desc("created_time").Find(&tokens, &Token{Owner: owner})
@ -59,6 +68,16 @@ func GetTokens(owner string) []*Token {
return tokens
}
func GetPaginationTokens(owner string, offset, limit int) []*Token {
tokens := []*Token{}
err := adapter.Engine.Desc("created_time").Limit(limit, offset).Find(&tokens, &Token{Owner: owner})
if err != nil {
panic(err)
}
return tokens
}
func getToken(owner string, name string) *Token {
if owner == "" || name == "" {
return nil
@ -73,7 +92,7 @@ func getToken(owner string, name string) *Token {
if existed {
return &token
}
return nil
}
@ -87,7 +106,7 @@ func getTokenByCode(code string) *Token {
if existed {
return &token
}
return nil
}