From b519170c068e34f6ed940dc2643b9a7c54b0457e Mon Sep 17 00:00:00 2001 From: Singee Date: Tue, 28 Nov 2023 14:51:59 +0800 Subject: [PATCH] fix SearchUsers --- model/user.go | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/model/user.go b/model/user.go index 7844eb6a..06cf685c 100644 --- a/model/user.go +++ b/model/user.go @@ -6,6 +6,7 @@ import ( "gorm.io/gorm" "one-api/common" "strings" + "strconv" ) // User if you add sensitive fields, don't forget to clean them in setupLogin function. @@ -42,7 +43,12 @@ func GetAllUsers(startIdx int, num int) (users []*User, err error) { } func SearchUsers(keyword string) (users []*User, err error) { - err = DB.Omit("password").Where("id = ? or username LIKE ? or email LIKE ? or display_name LIKE ?", keyword, keyword+"%", keyword+"%", keyword+"%").Find(&users).Error + if uid, ok := strconv.Atoi(keyword); ok == nil { + err = DB.Omit("password").Where("id = ? or username LIKE ? or email LIKE ? or display_name LIKE ?", uid, keyword+"%", keyword+"%", keyword+"%").Find(&users).Error + } else { + err = DB.Omit("password").Where("username LIKE ? or email LIKE ? or display_name LIKE ?", keyword+"%", keyword+"%", keyword+"%").Find(&users).Error + } + return users, err }