public async Task <Data.Shared.Models.UserContact> AddUserContactAsync(Data.Shared.Models.UserContactRequest request) { var userContactRequest = await _userContactRequestRepository.GetAsync(ucr => ucr.Id == request.Id); if (userContactRequest == null) { throw new NotFoundException(); } var newContact = request.AsUserContact(DateTime.UtcNow).AsStore(); var userContactResult = await _userContactRepository.AddOrUpdateAsync(uc => uc.UserId == request.UserId && uc.ContactUserId == request.ContactUserId, newContact); if (userContactResult != null) { await _userContactRequestRepository.RemoveAsync(userContactRequest); return(userContactResult.AsModel()); } return(null); }
public async Task <Data.Shared.Models.UserContactRequest> AddUserContactRequestAsync(Data.Shared.Models.UserContactRequest request) { var userContactResult = await _userContactRequestRepository.AddOrUpdateAsync(uc => uc.UserId == request.UserId && uc.ContactUserId == request.ContactUserId, request.AsStore()); return(userContactResult.AsModel()); }