diff --git a/http/controller/api/login.go b/http/controller/api/login.go index 6c0b95d..f8be2e3 100644 --- a/http/controller/api/login.go +++ b/http/controller/api/login.go @@ -60,6 +60,7 @@ func (l *Login) Login(c *gin.Context) { ut := service.AllService.UserService.Login(u, &model.LoginLog{ UserId: u.Id, Client: f.DeviceInfo.Type, + DeviceId: f.Id, Uuid: f.Uuid, Ip: c.ClientIP(), Type: model.LoginLogTypeAccount, diff --git a/http/controller/api/ouath.go b/http/controller/api/ouath.go index 5f2867f..b3a3ba3 100644 --- a/http/controller/api/ouath.go +++ b/http/controller/api/ouath.go @@ -94,6 +94,7 @@ func (o *Oauth) OidcAuthQueryPre(c *gin.Context) (*model.User, *model.UserToken) ut = service.AllService.UserService.Login(u, &model.LoginLog{ UserId: u.Id, Client: v.DeviceType, + DeviceId: v.Id, Uuid: v.Uuid, Ip: c.ClientIP(), Type: model.LoginLogTypeOauth, diff --git a/model/loginLog.go b/model/loginLog.go index 51fd97f..0dbb5f4 100644 --- a/model/loginLog.go +++ b/model/loginLog.go @@ -4,6 +4,7 @@ type LoginLog struct { IdModel UserId uint `json:"user_id" gorm:"default:0;not null;"` Client string `json:"client"` //webadmin,webclient,app, + DeviceId string `json:"device_id"` Uuid string `json:"uuid"` Ip string `json:"ip"` Type string `json:"type"` //account,oauth diff --git a/model/userToken.go b/model/userToken.go index a359eef..fce216e 100644 --- a/model/userToken.go +++ b/model/userToken.go @@ -3,7 +3,8 @@ package model type UserToken struct { IdModel UserId uint `json:"user_id" gorm:"default:0;not null;index"` - DeviceUuid string `json:"device_uuid"` + DeviceUuid string `json:"device_uuid" gorm:"default:'';omitempty;"` + DeviceId string `json:"device_id" gorm:"default:'';omitempty;"` Token string `json:"token" gorm:"default:'';not null;index"` ExpiredAt int64 `json:"expired_at" gorm:"default:0;not null;"` TimeModel diff --git a/service/user.go b/service/user.go index c7f29ce..4074bd1 100644 --- a/service/user.go +++ b/service/user.go @@ -76,6 +76,7 @@ func (us *UserService) Login(u *model.User, llog *model.LoginLog) *model.UserTok UserId: u.Id, Token: token, DeviceUuid: llog.Uuid, + DeviceId: llog.DeviceId, ExpiredAt: time.Now().Add(time.Hour * 24 * 7).Unix(), } global.DB.Create(ut)