mirror of
https://github.com/khairul169/vaulterm.git
synced 2025-04-28 16:49:39 +07:00
30 lines
707 B
Go
30 lines
707 B
Go
package models
|
|
|
|
import "time"
|
|
|
|
const (
|
|
TeamRoleOwner = "owner"
|
|
TeamRoleAdmin = "admin"
|
|
TeamRoleMember = "member"
|
|
)
|
|
|
|
type Team struct {
|
|
Model
|
|
|
|
Name string `json:"name" gorm:"type:varchar(32)"`
|
|
Icon string `json:"icon" gorm:"type:varchar(2)"`
|
|
Members []*TeamMembers `json:"members" gorm:"foreignKey:TeamID"`
|
|
|
|
Timestamps
|
|
SoftDeletes
|
|
}
|
|
|
|
type TeamMembers struct {
|
|
TeamID string `json:"teamId" gorm:"primarykey;type:varchar(26)"`
|
|
Team Team `json:"team"`
|
|
UserID string `json:"userId" gorm:"primarykey;type:varchar(26)"`
|
|
User User `json:"user"`
|
|
Role string `json:"role" gorm:"type:varchar(16)"`
|
|
CreatedAt time.Time `json:"createdAt"`
|
|
}
|