示例#1
0
        private void SaveData <M>(M data, long respId)
        {
            try
            {
                var  target   = _respondentsRepository.FindById(respId);
                Type itemType = typeof(T);
                if (itemType == typeof(SocialNetworkDataVkontakte))
                {
                    target.DataVkontakte = data as SocialNetworkDataVkontakte;
                    _log.Information($"Save VK {respId}");
                }
                if (itemType == typeof(SocialNetworkDataFacebook))
                {
                    target.DataFacebook = data as SocialNetworkDataFacebook;
                    _log.Information($"Save FB {respId}");
                }

                target.Activity.Add(new ActivityData {
                    Code = ActivityCode.SocialNetworkDataLoaded
                });
                _respondentsRepository.Save(target);
            }
            catch (Exception ex)
            {
                _log.Error(ex, ex.Message);
            }
        }
        public void UpsertRespondentVkontakte_CorrectRoutinesCalled()
        {
            var service = Create();

            _userValidation.ValidateToken(Arg.Is <string>(z => z == "A")).Returns(true);
            RespondentUser respondentUser = new RespondentUser();

            _respondentsRepository.CreateNew().Returns(respondentUser);
            _respondentsRepository.FindById(Arg.Is(respondentUser.Id)).Returns(respondentUser);

            service.UpsertRespondentVkontakte("A", 120, "25081d7553e5fab");

            Thread.Sleep(10);
            _respondentsRepository.Received().FindByVkontakteId(Arg.Is(120));
            _vksocialNetworkGrabber.Received().Enqueue(Arg.Any <int>(), Arg.Is <string>("25081d7553e5fab"));
            _respondentsRepository.Received().Save(Arg.Any <RespondentUser>());
        }
示例#3
0
 public List <string> GetRespondentHistory(string token, long respondentId)
 {
     if (!_userValidation.ValidateToken(token))
     {
         throw new AddressAccessDeniedException();
     }
     _log.Information($"{GetCurrentMethod()} called.");
     try
     {
         var target = _respondentsRepository.FindById(respondentId);
         if (target != null)
         {
             return(target.AttendedQuestionnairies.Select(z => z.PublicToken).ToList());
         }
     }
     catch (Exception ex)
     {
         _log.Error(ex, ex.Message);
     }
     return(new List <string>());
 }