public async Task AddInvitation(InvitationInformationDto dto)
        {
            try
            {
                var newInvitation = new TeamInvitation
                {
                    SenderProfileId       = dto.SenderId,
                    TeamGuid              = Guid.Parse(dto.TeamGuid),
                    RecipientEmailAddress = dto.EmailAddress,
                    Read = false,
                    RecipientProfileId = dto.RecipientId,
                    InvitationGuid     = Guid.NewGuid()
                };

                _invitationService.Insert(newInvitation);
                await _unitOfWork.SaveChangesAsync();

                dto.InvitationGuid = newInvitation.InvitationGuid.ToString();
                dto.Token          = GenerateKey(dto.SenderId, dto.TeamGuid, dto.InvitationGuid);
                OnInvitationAdded(new AddInvitationArgs(dto));
            }
            catch (Exception e)
            {
                OnInvitationAddFailed(new AddInvitationArgs(dto));
            }
        }
示例#2
0
        private async Task <InvitationInformationDto> MapToDto(int teamId, int?recipientId)
        {
            var loggedInUser = await _signInManager.UserManager.GetUserAsync(User);

            var loggedInUserInfo = await _userInformation.GetUserProfileInformationAsync(loggedInUser.Id);

            var teamInfo = await _teamManager.GetTeamInviteInformation(teamId);

            var dto = new InvitationInformationDto
            {
                TeamId         = teamId,
                EmailAddress   = Input.EmailAddress,
                Message        = Input.Message,
                RecipientName  = Input.RecipientName,
                TeamName       = teamInfo.TeamName,
                TeamGuid       = teamInfo.TeamGuid,
                RecipientId    = recipientId,
                SenderFullName = $"{loggedInUserInfo.Name} {loggedInUserInfo.Surname}",
                SenderId       = loggedInUserInfo.ProfileId
            };

            return(dto);
        }
示例#3
0
 public AddInvitationArgs(InvitationInformationDto info)
 {
     Info = info;
 }