mirror of
https://github.com/zitadel/zitadel.git
synced 2024-12-13 11:34:26 +00:00
29 lines
600 B
Go
29 lines
600 B
Go
|
package domain
|
||
|
|
||
|
import (
|
||
|
es_models "github.com/caos/zitadel/internal/eventstore/models"
|
||
|
)
|
||
|
|
||
|
type ProjectGrantMember struct {
|
||
|
es_models.ObjectRoot
|
||
|
|
||
|
GrantID string
|
||
|
UserID string
|
||
|
Roles []string
|
||
|
}
|
||
|
|
||
|
func NewProjectGrantMember(aggregateID, userID, grantID string, roles ...string) *ProjectGrantMember {
|
||
|
return &ProjectGrantMember{
|
||
|
ObjectRoot: es_models.ObjectRoot{
|
||
|
AggregateID: aggregateID,
|
||
|
},
|
||
|
GrantID: grantID,
|
||
|
UserID: userID,
|
||
|
Roles: roles,
|
||
|
}
|
||
|
}
|
||
|
|
||
|
func (i *ProjectGrantMember) IsValid() bool {
|
||
|
return i.AggregateID != "" && i.GrantID != "" && i.UserID != "" && len(i.Roles) != 0
|
||
|
}
|