internal void Update(ReferralLeadProfile referralLeadProfile) { ReferralLeadId = referralLeadProfile.ReferralLeadId; FirstName = referralLeadProfile.FirstName; LastName = referralLeadProfile.LastName; PhoneNumber = referralLeadProfile.PhoneNumber; Email = referralLeadProfile.Email; Note = referralLeadProfile.Note; }
public async Task <ReferralLeadProfileErrorCodes> UpdateAsync(ReferralLeadProfile referralLeadProfile) { var result = await _referralLeadProfileRepository.UpdateAsync(referralLeadProfile); if (result == ReferralLeadProfileErrorCodes.None) { _log.Info("Referral lead profile updated", context: $"referralLeadId: {referralLeadProfile.ReferralLeadId}"); } else { _log.Info("An error occurred while updating referral lead profile", context: $"referralHotelId: {referralLeadProfile.ReferralLeadId}; error: {result}"); } return(result); }
public async Task <ReferralLeadProfileErrorCodes> UpdateAsync(ReferralLeadProfile referralLeadProfile) { using (var context = _contextFactory.CreateDataContext()) { var entity = await context.ReferralLeadProfiles.FindAsync(referralLeadProfile.ReferralLeadId); if (entity == null) { return(ReferralLeadProfileErrorCodes.ReferralLeadProfileDoesNotExist); } _encryptionService.Decrypt(entity); entity.Update(referralLeadProfile); _encryptionService.Encrypt(entity); await context.SaveChangesAsync(); } return(ReferralLeadProfileErrorCodes.None); }
public async Task <ReferralLeadProfileErrorCodes> InsertAsync(ReferralLeadProfile referralLeadProfile) { using (var context = _contextFactory.CreateDataContext()) { var entity = await context.ReferralLeadProfiles.FindAsync(referralLeadProfile.ReferralLeadId); if (entity != null) { return(ReferralLeadProfileErrorCodes.ReferralLeadProfileAlreadyExists); } entity = new ReferralLeadProfileEntity(referralLeadProfile); entity = _encryptionService.Encrypt(entity); context.ReferralLeadProfiles.Add(entity); await context.SaveChangesAsync(); } return(ReferralLeadProfileErrorCodes.None); }
public ReferralLeadProfileEntity(ReferralLeadProfile referralLeadProfile) { Update(referralLeadProfile); }
public ReferralLeadServiceNewTests() { _referralLeadProfile = new ReferralLeadProfile { ReferralLeadId = _referralId, FirstName = "first name", LastName = "last name", PhoneNumber = "+70000000000", Email = "*****@*****.**", Note = "note" }; _referralLeadCreateInfo = new ReferralLead { FirstName = _referralLeadProfile.FirstName, LastName = _referralLeadProfile.LastName, PhoneCountryCodeId = _countryPhoneCode.Id, PhoneNumber = "000 000 00 00", Email = _referralLeadProfile.Email, Note = _referralLeadProfile.Note, AgentId = Guid.Parse(_customerId) }; _agent = new AgentModel { CustomerId = Guid.Parse(_customerId), Status = AgentStatus.ApprovedAgent, SalesforceId = "SalesforceId" }; _customerProfileClientMock.Setup(o => o.CustomerProfiles.GetByCustomerIdAsync( It.Is <string>(customerId => customerId == _customerId), It.IsAny <bool>(), It.IsAny <bool>())) .ReturnsAsync((string customerId, bool includeNonVerified, bool includeDeactivated) => new CustomerProfileResponse { ErrorCode = CustomerProfileErrorCodes.None }); _customerProfileClientMock .Setup(o => o.ReferralLeadProfiles.AddAsync(It.IsAny <ReferralLeadProfileRequest>())) .ReturnsAsync((ReferralLeadProfileRequest request) => new ReferralLeadProfileResponse()); _customerProfileClientMock.Setup(o => o.ReferralLeadProfiles.GetByIdAsync( It.Is <Guid>(referralId => referralId == _referralId))) .ReturnsAsync((Guid referralId) => new ReferralLeadProfileResponse { ErrorCode = ReferralLeadProfileErrorCodes.None, Data = _referralLeadProfile }); _dictionariesClientMock.Setup(o => o.Salesforce.GetCountryPhoneCodeByIdAsync( It.Is <int>(id => id == _countryPhoneCode.Id))) .ReturnsAsync((int id) => _countryPhoneCode); _agentManagementClientMock.Setup(o => o.Agents.GetByCustomerIdAsync( It.Is <Guid>(customerId => customerId == Guid.Parse(_customerId)))) .ReturnsAsync((Guid customerId) => _agent); _referralLeadRepositoryMock.Setup(o => o.CreateAsync(It.IsAny <ReferralLeadEncrypted>())) .ReturnsAsync((ReferralLeadEncrypted referralLeadEncrypted) => { referralLeadEncrypted.Id = _referralId; referralLeadEncrypted.CreationDateTime = DateTime.UtcNow; return(referralLeadEncrypted); }); _referralLeadRepositoryMock.Setup(o => o.GetByEmailHashAsync(It.IsAny <string>())) .ReturnsAsync((string emailHash) => _referralLeadsEncrypted.Where(o => o.EmailHash == emailHash).ToList()); _referralLeadRepositoryMock.Setup(o => o.GetByPhoneNumberHashAsync(It.IsAny <int>(), It.IsAny <string>())) .ReturnsAsync((int countryPhoneCodeId, string phoneNumberHash) => _referralLeadsEncrypted.Where(o => o.PhoneNumberHash == phoneNumberHash && o.PhoneCountryCodeId == countryPhoneCodeId).ToList()); _referralLeadRepositoryMock.Setup(o => o.GetApprovedAsync()) .ReturnsAsync(() => _referralLeadsEncrypted.Where(o => o.State == ReferralLeadState.Approved).ToList()); _hashingManagerMock.Setup(o => o.GenerateBase(It.IsAny <string>())) .Returns((string value) => value); _settingsServiceMock.Setup(o => o.GetLeadConfirmationTokenLength()) .Returns(() => _confirmationTokenLength); _service = new ReferralLeadService( _stakeServiceMock.Object, _propertyIntegrationClientMock.Object, _propertyLeadApprovedReferralPublisherMock.Object, _referralLeadRepositoryMock.Object, _notificationPublisherServiceMock.Object, _settingsServiceMock.Object, _hashingManagerMock.Object, _agentManagementClientMock.Object, _customerProfileClientMock.Object, _dictionariesClientMock.Object, _propertyPurchaseRepositoryMock.Object, _leadStateChangedPublisherMock.Object, MapperHelper.CreateAutoMapper(), EmptyLogFactory.Instance); }