implementation done

This commit is contained in:
adlerhurst
2025-07-29 17:59:02 +02:00
parent 432295ba76
commit ef74f5ee40
13 changed files with 820 additions and 169 deletions

View File

@@ -0,0 +1,45 @@
package domain
import "context"
var _ Commander = (*AddOrgMemberCommand)(nil)
// AddOrgMemberCommand adds an existing user as an organization member.
type AddOrgMemberCommand struct {
InstanceID string `json:"instanceId"`
OrgID string `json:"orgId"`
UserID string `json:"userId"`
Roles []string `json:"roles"`
}
// Execute implements [Commander].
func (a *AddOrgMemberCommand) Execute(ctx context.Context, opts *CommandOpts) (err error) {
panic("unimplemented")
}
// String implements [Commander].
func (a *AddOrgMemberCommand) String() string {
return "AddOrgMemberCommand"
}
var _ Commander = (*CreateOrgMemberCommand)(nil)
// CreateOrgMemberCommand creates a new user and adds them as an organization member.
type CreateOrgMemberCommand struct{}
// Execute implements [Commander].
func (c *CreateOrgMemberCommand) Execute(ctx context.Context, opts *CommandOpts) (err error) {
panic("unimplemented")
}
// String implements [Commander].
func (c *CreateOrgMemberCommand) String() string {
panic("unimplemented")
}
// MemberRepository is a sub repository of the org repository and maybe the instance repository.
type MemberRepository interface {
AddMember(ctx context.Context, orgID, userID string, roles []string) error
SetMemberRoles(ctx context.Context, orgID, userID string, roles []string) error
RemoveMember(ctx context.Context, orgID, userID string) error
}