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:"-"` 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"` }