Plug back organization members

Signed-off-by: Émile Ré <nemile.re@gmail.com>
This commit is contained in:
Émile Ré
2025-12-26 22:57:56 +01:00
committed by Bryan Frimin
parent ac85d6b84d
commit e0f6bbd204
22 changed files with 2555 additions and 23 deletions

View File

@@ -302,6 +302,14 @@ func (r *membershipConnectionResolver) TotalCount(ctx context.Context, obj *type
return nil, gqlutils.InternalServerError(ctx)
}
return &count, nil
case *organizationResolver:
count, err := r.iam.OrganizationService.CountMemberships(ctx, obj.ParentID)
if err != nil {
r.logger.ErrorCtx(ctx, "cannot count memberships", log.Error(err))
return nil, gqlutils.InternalServerError(ctx)
}
return &count, nil
}
@@ -864,6 +872,19 @@ func (r *mutationResolver) DeleteInvitation(ctx context.Context, input types.Del
return &types.DeleteInvitationPayload{DeletedInvitationID: input.InvitationID}, nil
}
// UpdateMembership is the resolver for the updateMembership field.
func (r *mutationResolver) UpdateMembership(ctx context.Context, input types.UpdateMembershipInput) (*types.UpdateMembershipPayload, error) {
membership, err := r.iam.OrganizationService.UpdateMempership(ctx, input.OrganizationID, input.MembershipID, input.Role)
if err != nil {
r.logger.ErrorCtx(ctx, "cannot update membership", log.Error(err))
return nil, gqlutils.InternalServerError(ctx)
}
return &types.UpdateMembershipPayload{
Membership: types.NewMembership(membership),
}, nil
}
// RemoveMember is the resolver for the removeMember field.
func (r *mutationResolver) RemoveMember(ctx context.Context, input types.RemoveMemberInput) (*types.RemoveMemberPayload, error) {
err := r.iam.OrganizationService.RemoveMember(ctx, input.OrganizationID, input.MembershipID)