feat:完善信息
This commit is contained in:
@ -51,6 +51,26 @@ func (m *Images) AnalysisSlice(domain string) []string {
|
||||
return images
|
||||
}
|
||||
|
||||
// AccountStatus 账号状态
|
||||
type AccountStatus struct {
|
||||
Status AccountStatusKind `gorm:"column:status;type:tinyint(1);default:1;comment:状态(1:启用,2:禁用)" json:"-"`
|
||||
}
|
||||
|
||||
// AccountStatusKind 状态
|
||||
type AccountStatusKind int
|
||||
|
||||
const (
|
||||
// AccountStatusForEnable 启用
|
||||
AccountStatusForEnable AccountStatusKind = iota + 1
|
||||
// AccountStatusForDisable 禁用
|
||||
AccountStatusForDisable
|
||||
)
|
||||
|
||||
// Format 格式化
|
||||
func (m *AccountStatus) Format() string {
|
||||
return utils.AnyToJSON(m)
|
||||
}
|
||||
|
||||
// Position 坐标信息
|
||||
type Position struct {
|
||||
Longitude float64 `json:"longitude"` // 经度
|
||||
@ -61,14 +81,3 @@ type Position struct {
|
||||
func (m *Position) Format() string {
|
||||
return utils.AnyToJSON(m)
|
||||
}
|
||||
|
||||
// Tags 标签
|
||||
type Tags struct {
|
||||
Key string `json:"key"`
|
||||
Value string `json:"value"`
|
||||
}
|
||||
|
||||
// Format 格式化
|
||||
func (m *Tags) Format() string {
|
||||
return utils.AnyToJSON(m)
|
||||
}
|
||||
|
@ -7,7 +7,7 @@ type SysUserTenant struct {
|
||||
Department string `gorm:"column:department;type:varchar(100);default:null;comment:部门信息" json:"department"`
|
||||
Role string `gorm:"column:role;type:varchar(100);default:null;comment:角色信息" json:"role"`
|
||||
Identity SysUserTenantIdentity `gorm:"column:identity;type:tinyint(1);default:0;comment:用户身份(1:管理员,2:用户)" json:"-"`
|
||||
Status SysUserTenantStatus `gorm:"column:status;type:tinyint(1);default:1;comment:状态(1:启用,2:禁用)" json:"-"`
|
||||
AccountStatus
|
||||
ModelDeleted
|
||||
ModelAt
|
||||
}
|
||||
@ -21,16 +21,6 @@ const (
|
||||
SysUserTenantIdentityForSystemUser
|
||||
)
|
||||
|
||||
// SysUserTenantStatus 状态
|
||||
type SysUserTenantStatus int
|
||||
|
||||
const (
|
||||
// SysUserTenantStatusForEnable 启用
|
||||
SysUserTenantStatusForEnable SysUserTenantStatus = iota + 1
|
||||
// SysUserTenantStatusForDisable 禁用
|
||||
SysUserTenantStatusForDisable
|
||||
)
|
||||
|
||||
func (m *SysUserTenant) TableName() string {
|
||||
return m.NewTableName("sys_user_tenant")
|
||||
}
|
||||
|
@ -1,13 +1,26 @@
|
||||
package model
|
||||
|
||||
import (
|
||||
"SciencesServer/utils"
|
||||
"gorm.io/gorm"
|
||||
"time"
|
||||
)
|
||||
|
||||
type TenantUser struct {
|
||||
Model
|
||||
ModelTenant
|
||||
UUID uint64 `gorm:"column:uuid;uniqueIndex:idx_sys_user_uuid;type:int;default:0;comment:用户唯一UUID" json:"-"`
|
||||
Avatar string `gorm:"column:avatar;type:varchar(255);default:null;comment:头像" json:"avatar"`
|
||||
Name string `gorm:"column:name;type:varchar(20);default:null;comment:真实姓名" json:"name"`
|
||||
Mobile string `gorm:"column:mobile;index:idx_sys_user_mobile;type:varchar(15);default:null;comment:联系方式" json:"mobile"`
|
||||
Email string `gorm:"column:email;type:varchar(50);default:null;comment:邮箱" json:"email"`
|
||||
UUID uint64 `gorm:"column:uuid;uniqueIndex:idx_tenant_user_uuid;type:int;default:0;comment:用户唯一UUID" json:"-"`
|
||||
Avatar string `gorm:"column:avatar;type:varchar(255);default:null;comment:头像" json:"avatar"`
|
||||
Name string `gorm:"column:name;type:varchar(20);default:null;comment:真实姓名" json:"name"`
|
||||
Mobile string `gorm:"column:mobile;index:idx_tenant_user_mobile;type:varchar(15);default:null;comment:联系方式" json:"mobile"`
|
||||
Email string `gorm:"column:email;type:varchar(50);default:null;comment:邮箱" json:"email"`
|
||||
Identity int `gorm:"column:identity;type:int(8);default:0;comment:身份信息" json:"-"`
|
||||
Password string `gorm:"column:password;type:varchar(100);default:null;comment:密码" json:"-"`
|
||||
Salt string `gorm:"column:salt;type:varchar(10);default:null;comment:盐值" json:"-"`
|
||||
Province uint64 `gorm:"column:province;type:int;default:0;comment:所在省" json:"province"`
|
||||
City uint64 `gorm:"column:city;type:int;default:0;comment:所在市" json:"city"`
|
||||
District uint64 `gorm:"column:district;type:int;default:0;comment:所在区/县" json:"district"`
|
||||
Address string `gorm:"column:address;type:varchar(255);default:null;comment:详细地址" json:"address"`
|
||||
AccountStatus
|
||||
ModelDeleted
|
||||
ModelAt
|
||||
}
|
||||
@ -16,6 +29,20 @@ func (m *TenantUser) TableName() string {
|
||||
return m.NewTableName("tenant_user")
|
||||
}
|
||||
|
||||
func (m *TenantUser) BeforeCreate(db *gorm.DB) error {
|
||||
m.NewPassword()
|
||||
snowflake, _ := utils.NewSnowflake(1)
|
||||
m.UUID = uint64(snowflake.GetID())
|
||||
m.Status = AccountStatusForEnable
|
||||
m.CreatedAt = time.Now()
|
||||
return nil
|
||||
}
|
||||
|
||||
func (m *TenantUser) NewPassword() {
|
||||
m.Salt = utils.GetRandomString(8)
|
||||
m.Password = utils.HashString([]byte(utils.Md5String(m.Password, m.Salt)))
|
||||
}
|
||||
|
||||
func NewTenantUser() *TenantUser {
|
||||
return &TenantUser{}
|
||||
}
|
||||
|
Reference in New Issue
Block a user