PersonalMain-Golang/internal/dao/tokenDAO/tokenDAO.go

70 lines
1.8 KiB
Go
Raw Normal View History

2023-12-25 02:15:59 +08:00
package tokenDAO
import (
"PersonalMain/internal/model/do"
"PersonalMain/utility/Processing"
"context"
"github.com/gogf/gf/v2/frame/g"
"time"
)
// CreateToken
//
// 创建Token业务
func CreateToken() do.TokenDO {
token := do.TokenDO{
Id: nil,
UserId: nil,
Token: Processing.CreateToken(),
ExpiredAt: time.Now().Add(time.Minute * 10),
CreatedAt: time.Now(),
}
_, err := g.Model("xf_token").Data(token).OmitEmpty().Insert()
if err == nil {
2023-12-25 02:45:48 +08:00
g.Log().Cat("Database").Cat("Token").Notice(context.TODO(), "Token", token.Token, "创建成功")
2023-12-25 02:15:59 +08:00
return token
} else {
g.Log().Cat("Database").Cat("Token").Error(context.TODO(), err.Error())
return do.TokenDO{}
}
}
// GetToken
//
// 获取Token业务
func GetToken(token string) *do.TokenDO {
var tokenDO do.TokenDO
result, err := g.Model("xf_token").Where("token = ?", token).One()
if err == nil {
// 检查数据库是否为空
if !result.IsEmpty() {
err := result.Struct(&tokenDO)
if err != nil {
g.Log().Cat("Database").Cat("Token").Error(context.TODO(), err.Error())
return nil
} else {
2023-12-25 02:45:48 +08:00
g.Log().Cat("Database").Cat("Token").Notice(context.TODO(), "Token", tokenDO.Token, "获取成功")
2023-12-25 02:15:59 +08:00
return &tokenDO
}
} else {
2023-12-25 02:45:48 +08:00
g.Log().Cat("Database").Cat("Token").Notice(context.TODO(), "xf_token 数据表为空")
2023-12-25 02:15:59 +08:00
return nil
}
} else {
g.Log().Cat("Database").Cat("Token").Error(context.TODO(), err.Error())
return nil
}
}
// DeleteToken
//
// 删除Token业务
func DeleteToken(token string) {
_, err := g.Model("xf_token").Where("token = ?", token).Delete()
if err != nil {
g.Log().Cat("Database").Cat("Token").Error(context.TODO(), err.Error())
} else {
2023-12-25 02:45:48 +08:00
g.Log().Cat("Database").Cat("Token").Notice(context.TODO(), "Token", token, "删除成功")
2023-12-25 02:15:59 +08:00
}
}