This commit is contained in:
@@ -4,6 +4,7 @@ import (
|
||||
"time"
|
||||
|
||||
"github.com/flipped-aurora/gin-vue-admin/server/global"
|
||||
"github.com/google/uuid"
|
||||
)
|
||||
|
||||
// MiniUser 微信小程序用户表
|
||||
@@ -11,7 +12,6 @@ type MiniUser struct {
|
||||
global.GVA_MODEL
|
||||
OpenID string `json:"openid" gorm:"type:varchar(100);not null;uniqueIndex;comment:用户openid"`
|
||||
UnionID *string `json:"unionid" gorm:"type:varchar(64);index;comment:微信开放平台统一标识"`
|
||||
UserID *uint `json:"userId" gorm:"index;comment:关联系统用户ID"`
|
||||
SessionKey *string `json:"sessionKey" gorm:"type:varchar(255);comment:会话密钥"`
|
||||
Nickname *string `json:"nickname" gorm:"type:varchar(50);comment:用户昵称"`
|
||||
AvatarURL *string `json:"avatarUrl" gorm:"type:varchar(1024);comment:用户头像"`
|
||||
@@ -26,12 +26,78 @@ type MiniUser struct {
|
||||
|
||||
// TableName 指定表名
|
||||
func (MiniUser) TableName() string {
|
||||
return "wechat_mini_users"
|
||||
return "mini_users"
|
||||
}
|
||||
|
||||
// IsLinkedToSystemUser 检查是否已关联系统用户
|
||||
func (w *MiniUser) IsLinkedToSystemUser() bool {
|
||||
return w.UserID != nil && *w.UserID > 0
|
||||
// 实现AppUserLogin接口
|
||||
func (u *MiniUser) GetUUID() uuid.UUID {
|
||||
// 将uint ID转换为UUID,这里使用一个简单的方法
|
||||
// 在实际项目中,你可能需要为用户添加一个专门的UUID字段
|
||||
return uuid.New()
|
||||
}
|
||||
|
||||
func (u *MiniUser) GetUserId() uint {
|
||||
return u.ID
|
||||
}
|
||||
|
||||
func (u *MiniUser) GetOpenID() string {
|
||||
return u.OpenID
|
||||
}
|
||||
|
||||
func (u *MiniUser) GetUnionID() string {
|
||||
if u.UnionID != nil {
|
||||
return *u.UnionID
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
||||
func (u *MiniUser) GetNickname() string {
|
||||
if u.Nickname != nil {
|
||||
return *u.Nickname
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
||||
func (u *MiniUser) GetAvatar() string {
|
||||
if u.AvatarURL != nil {
|
||||
return *u.AvatarURL
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
||||
func (u *MiniUser) GetPhone() string {
|
||||
if u.Phone != nil {
|
||||
return *u.Phone
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
||||
func (u *MiniUser) GetGender() int {
|
||||
if u.Gender != nil {
|
||||
return *u.Gender
|
||||
}
|
||||
return 0
|
||||
}
|
||||
|
||||
func (u *MiniUser) GetCity() string {
|
||||
if u.City != nil {
|
||||
return *u.City
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
||||
func (u *MiniUser) GetProvince() string {
|
||||
if u.Province != nil {
|
||||
return *u.Province
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
||||
func (u *MiniUser) GetCountry() string {
|
||||
if u.Country != nil {
|
||||
return *u.Country
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
||||
// HasUnionID 检查是否有 UnionID
|
||||
|
||||
@@ -2,9 +2,9 @@ package response
|
||||
|
||||
// MiniLoginResponse 小程序登录响应
|
||||
type MiniLoginResponse struct {
|
||||
OpenID string `json:"openid"` // 用户openid
|
||||
UnionID *string `json:"unionid"` // 用户unionid
|
||||
UserID *uint `json:"userId,omitempty"` // 关联的系统用户ID
|
||||
OpenID string `json:"openid"` // 用户openid
|
||||
UnionID *string `json:"unionid"` // 用户unionid
|
||||
Token string `json:"token"` // JWT token
|
||||
}
|
||||
|
||||
// PageResult 分页结果
|
||||
|
||||
Reference in New Issue
Block a user