package entity import ( "time" ) // LoginRequest 登录请求参数 type LoginRequest struct { UserName string `form:"username" binding:"required"` Password string `form:"password" binding:"required"` } // Login 登录返回数据结构 type Login struct { Uid int64 `json:"uid"` Username string `json:"username"` Type int `json:"type"` Avatar string `json:"avatar"` Status int8 `json:"status"` Token string `json:"token"` Expire int64 `json:"expire"` ExpiresAt time.Time `json:"expires_at"` } // RegisterRequest 注册请求参数 type RegisterRequest struct { UserName string `form:"username" binding:"required"` Password string `form:"password" binding:"required"` Email string `form:"email" binding:"email"` } // UserInfo 返回给接口的用户信息,带Code和Msg type UserInfo struct { Code ResCode Msg string Body User } type UserInfoAPI struct { Code ResCode `json:"code"` Msg string `json:"msg"` Body UserInfoAPIData `json:"data"` } type UserInfoAPIData struct { Uid int64 `json:"uid"` Username string `json:"username"` Type int `json:"type"` Status int8 `json:"status"` Token string `json:"token"` Avatar string `json:"avatar"` } // User 用户信息 type User struct { Uid int64 `gorm:"column:uid" json:"uid"` Username string `gorm:"column:nickname" json:"username"` Email string `gorm:"column:email" json:"email"` Password string `gorm:"column:password" json:"password"` Avatar string `gorm:"column:avatar" json:"avatar"` Salt string `gorm:"column:salt" json:"salt"` Status int8 `gorm:"column:status;default:1" json:"status"` CreateAt time.Time `gorm:"column:create_at" json:"create_at"` UpdateAt time.Time `gorm:"column:update_at;default:CURRENT_TIMESTAMP" json:"update_at"` } // ChangePasswordRequest 修改密码提交的数据,用户id从jwt的中间件中获取 type ChangePasswordRequest struct { Password string `form:"password" binding:"required"` } type ChangeEmailRequest struct { Email string `form:"email" binding:"required"` }