Пример #1
0
        private bool IsValidPerson(IInvitedPersonForCommand invitedPerson)
        {
            if (invitedPerson.Email == null && (invitedPerson.AzureOid == Guid.Empty || invitedPerson.AzureOid == null))
            {
                return(false);
            }

            return(invitedPerson.AzureOid != Guid.Empty && invitedPerson.AzureOid != null ||
                   new EmailAddressAttribute().IsValid(invitedPerson.Email));
        }
Пример #2
0
 public ParticipantsForCommand(
     Organization organization,
     IInvitedExternalEmailForCommand invitedExternalEmail,
     IInvitedPersonForCommand invitedPerson,
     IInvitedFunctionalRoleForCommand invitedFunctionalRole,
     int sortKey)
 {
     Organization          = organization;
     InvitedFunctionalRole = invitedFunctionalRole;
     InvitedPerson         = invitedPerson;
     InvitedExternalEmail  = invitedExternalEmail;
     SortKey = sortKey;
 }
        private async Task <List <BuilderParticipant> > AddSigner(
            Invitation invitation,
            List <BuilderParticipant> meetingParticipants,
            IInvitedPersonForCommand invitedSigner,
            int sortKey,
            Organization organization)
        {
            var person = await _personApiService.GetPersonByOidWithPrivilegesAsync(
                _plantProvider.Plant,
                invitedSigner.AzureOid.ToString(),
                _objectName,
                _signerPrivileges);

            if (person != null)
            {
                invitation.AddParticipant(new Participant(
                                              _plantProvider.Plant,
                                              organization,
                                              IpoParticipantType.Person,
                                              null,
                                              person.FirstName,
                                              person.LastName,
                                              person.UserName,
                                              person.Email,
                                              new Guid(person.AzureOid),
                                              sortKey));
                meetingParticipants = InvitationHelper.AddPersonToOutlookParticipantList(person, meetingParticipants);
            }
            else
            {
                throw new IpoValidationException(
                          $"Person does not have required privileges to be the {organization} participant.");
            }

            return(meetingParticipants);
        }