public async Task <bool> Handle(AssociateEpaOrganisationWithEpaContactRequest request, CancellationToken cancellationToken)
        {
            var success = false;

            var contact = await _registerQueryRepository.GetContactByContactId(request.ContactId);

            var organisation = await _registerQueryRepository.GetEpaOrganisationByOrganisationId(request.OrganisationId);

            if (contact != null && organisation != null)
            {
                await _registerRepository.AssociateOrganisationWithContact(contact.Id, organisation, request.ContactStatus, request.MakePrimaryContact? "MakePrimaryContact" : string.Empty);

                if (request.AddDefaultRoles)
                {
                    await _registerRepository.AssociateDefaultRoleWithContact(contact);
                }

                if (request.AddDefaultPrivileges)
                {
                    await _registerRepository.AssociateDefaultPrivilegesWithContact(contact);
                }

                success = true;
            }

            return(success);
        }