检查session是否存在返回信息

This commit is contained in:
TsMask
2023-08-29 16:12:04 +08:00
parent 3f33f7a825
commit bb343355bd

View File

@@ -10,6 +10,7 @@ import (
"strings"
"ems.agt/features/sys_role/model"
"ems.agt/lib/log"
"ems.agt/lib/oauth"
@@ -681,6 +682,9 @@ type User struct {
Phone string `json:"phone" xorm:"phone"`
CreateTime string `json:"createTime" xorm:"create_time"`
UpdateTime string `json:"updateTime" xorm:"update_time"`
// 角色对象组
Roles []model.SysRole `json:"roles" xorm:"-"`
}
// 记录密码登录错误次数
@@ -1006,7 +1010,7 @@ func XormInsertSession(name, host, token string, expires uint32, sessionFlag str
}
// XormUpdateSession update session
func XormLogoutUpdateSession(token string) (int64, error) {
func XormLogoutUpdateSession(token string) (Session, error) {
log.Info("XormLogoutUpdateSession processing... ")
session := Session{Status: "offline", AccessToken: token}
@@ -1015,13 +1019,19 @@ func XormLogoutUpdateSession(token string) (int64, error) {
xSession := xEngine.NewSession()
defer xSession.Close()
affected, err := xSession.Table("session").Where("access_token = ?", token).Update(session)
_, err := xSession.Table("session").Where("access_token = ?", token).Update(session)
xSession.Commit()
return affected, err
// 查询记录返回
if err == nil {
session := Session{}
_, err = xSession.Table("session").Where("access_token = ?", token).Get(&session)
return session, err
}
return session, err
}
// XormUpdateSessionShakeTime create session
func XormUpdateSessionShakeTime(token string) (int64, error) {
func XormUpdateSessionShakeTime(token string) (Session, error) {
log.Debug("XormUpdateSessionShakeTime processing... ")
session := Session{AccessToken: token}
@@ -1029,9 +1039,15 @@ func XormUpdateSessionShakeTime(token string) (int64, error) {
session.ShakeTime.Time = time.Now()
xSession := xEngine.NewSession()
defer xSession.Close()
affected, err := xSession.Table("session").Where("access_token = ?", token).Update(session)
_, err := xSession.Table("session").Where("access_token = ?", token).Update(session)
xSession.Commit()
return affected, err
// 查询记录返回
if err == nil {
session := Session{}
_, err = xSession.Table("session").Where("access_token = ?", token).Get(&session)
return session, err
}
return session, err
}
func XormExistValidToken(token string, expires uint32) bool {