public async Task <List <BonusCustomerResponseModel> > TriggerBonusToCustomers(BonusCustomersRequestModel model) { var responseContracts = await _bonusService.TriggerBonusToCustomersAsync( _mapper.Map <List <BonusCustomerRequest> >(model.BonusCustomers)); return(_mapper.Map <List <BonusCustomerResponseModel> >(responseContracts)); }
public async Task <List <BonusCustomerResponseModel> > TriggerBonusToCustomersAsync( [FromBody] BonusCustomersRequestModel model) { var partnerId = _requestContext.UserId; model.BonusCustomers.ForEach(x => x.SetPartnerId(partnerId)); var sanitizedModel = model.BonusCustomers.Select(x => new { x.CustomerId, Email = x.Email.SanitizeEmail(), x.Currency, x.FiatAmount, x.LocationId, PartnerId = x.GetPartnerId(), x.PaymentTimestamp, x.PosId }).ToList(); _log.Info("Trigger bonus to customers started", sanitizedModel); var result = await _bonusService.TriggerBonusToCustomersAsync(model); _log.Info("Trigger bonus to customers finished", sanitizedModel); return(result); }
public async Task When_Trigger_Bonus_To_Customers_Async_Is_Executed_Then_Partners_Integration_Client_Is_Called() { _partnersIntegrationClientMock.Setup(x => x.BonusApi.TriggerBonusToCustomers(It .IsAny <PartnersIntegration.Client.Models.BonusCustomersRequestModel>())); await _bonusService.TriggerBonusToCustomersAsync( It.IsAny <Domain.Models.Bonus.BonusCustomersRequestModel>()); _partnersIntegrationClientMock.Verify( x => x.BonusApi.TriggerBonusToCustomers( It.IsAny <PartnersIntegration.Client.Models.BonusCustomersRequestModel>()), Times.Once); }