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)); } }
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); }
public AddInvitationArgs(InvitationInformationDto info) { Info = info; }