sys_user.go 2.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. package system
  2. import (
  3. "github.com/flipped-aurora/gin-vue-admin/server/global"
  4. "github.com/flipped-aurora/gin-vue-admin/server/model/common"
  5. "github.com/google/uuid"
  6. )
  7. type Login interface {
  8. GetUsername() string
  9. GetNickname() string
  10. GetUUID() uuid.UUID
  11. GetUserId() uint
  12. GetAuthorityId() uint
  13. GetUserInfo() any
  14. }
  15. var _ Login = new(SysUser)
  16. type SysUser struct {
  17. global.GVA_MODEL
  18. UUID uuid.UUID `json:"uuid" gorm:"index;comment:用户UUID"` // 用户UUID
  19. Username string `json:"userName" gorm:"index;comment:用户登录名"` // 用户登录名
  20. Password string `json:"-" gorm:"comment:用户登录密码"` // 用户登录密码
  21. NickName string `json:"nickName" gorm:"default:系统用户;comment:用户昵称"` // 用户昵称
  22. HeaderImg string `json:"headerImg" gorm:"default:https://qmplusimg.henrongyi.top/gva_header.jpg;comment:用户头像"` // 用户头像
  23. AuthorityId uint `json:"authorityId" gorm:"default:888;comment:用户角色ID"` // 用户角色ID
  24. Authority SysAuthority `json:"authority" gorm:"foreignKey:AuthorityId;references:AuthorityId;comment:用户角色"` // 用户角色
  25. Authorities []SysAuthority `json:"authorities" gorm:"many2many:sys_user_authority;"` // 多用户角色
  26. Phone string `json:"phone" gorm:"comment:用户手机号"` // 用户手机号
  27. Email string `json:"email" gorm:"comment:用户邮箱"` // 用户邮箱
  28. Enable int `json:"enable" gorm:"default:1;comment:用户是否被冻结 1正常 2冻结"` //用户是否被冻结 1正常 2冻结
  29. OriginSetting common.JSONMap `json:"originSetting" form:"originSetting" gorm:"type:text;default:null;column:origin_setting;comment:配置;"` //配置
  30. }
  31. func (SysUser) TableName() string {
  32. return "sys_users"
  33. }
  34. func (s *SysUser) GetUsername() string {
  35. return s.Username
  36. }
  37. func (s *SysUser) GetNickname() string {
  38. return s.NickName
  39. }
  40. func (s *SysUser) GetUUID() uuid.UUID {
  41. return s.UUID
  42. }
  43. func (s *SysUser) GetUserId() uint {
  44. return s.ID
  45. }
  46. func (s *SysUser) GetAuthorityId() uint {
  47. return s.AuthorityId
  48. }
  49. func (s *SysUser) GetUserInfo() any {
  50. return *s
  51. }