public MarketingModulePromotionController( IPromotionService promotionService, ICouponService couponService, IMarketingPromoEvaluator promoEvaluator, IPromotionSearchService promoSearchService, IUserNameResolver userNameResolver, IPushNotificationManager notifier, IBlobStorageProvider blobStorageProvider, CsvCouponImporter csvCouponImporter, ISecurityService securityService, IPermissionScopeService permissionScopeService, Func <IMarketingRepository> repositoryFactory ) { _securityService = securityService; _promotionService = promotionService; _couponService = couponService; _promoEvaluator = promoEvaluator; _promoSearchService = promoSearchService; _userNameResolver = userNameResolver; _notifier = notifier; _blobStorageProvider = blobStorageProvider; _csvCouponImporter = csvCouponImporter; _permissionScopeService = permissionScopeService; _repositoryFactory = repositoryFactory; }
public MarketingModulePromotionController( IPromotionService promotionService, ICouponService couponService, IMarketingExtensionManager promotionManager, IMarketingPromoEvaluator promoEvaluator, IExpressionSerializer expressionSerializer, IPromotionSearchService promoSearchService, IUserNameResolver userNameResolver, IPushNotificationManager notifier, IBlobStorageProvider blobStorageProvider, CsvCouponImporter csvCouponImporter, ISecurityService securityService, IPermissionScopeService permissionScopeService) { _securityService = securityService; _marketingExtensionManager = promotionManager; _promotionService = promotionService; _couponService = couponService; _promoEvaluator = promoEvaluator; _expressionSerializer = expressionSerializer; _promoSearchService = promoSearchService; _userNameResolver = userNameResolver; _notifier = notifier; _blobStorageProvider = blobStorageProvider; _csvCouponImporter = csvCouponImporter; _permissionScopeService = permissionScopeService; }
public MarketingModulePromotionController( IPromotionService promotionService, ICouponService couponService, IMarketingPromoEvaluator promoEvaluator, IPromotionSearchService promoSearchService, IUserNameResolver userNameResolver, IPushNotificationManager notifier, IBlobStorageProvider blobStorageProvider, CsvCouponImporter csvCouponImporter, Func <IMarketingRepository> repositoryFactory, ICouponSearchService couponSearchService, IAuthorizationService authorizationService) { _promotionService = promotionService; _couponService = couponService; _promoEvaluator = promoEvaluator; _promoSearchService = promoSearchService; _userNameResolver = userNameResolver; _notifier = notifier; _blobStorageProvider = blobStorageProvider; _csvCouponImporter = csvCouponImporter; _repositoryFactory = repositoryFactory; _couponSearchService = couponSearchService; _authorizationService = authorizationService; }
public EvalProductsDiscountsMiddleware( IMapper mapper , IMarketingPromoEvaluator marketingEvaluator , IGenericPipelineLauncher pipeline) { _mapper = mapper; _marketingEvaluator = marketingEvaluator; _pipeline = pipeline; }
public CartAggregate( IMarketingPromoEvaluator marketingEvaluator, IShoppingCartTotalsCalculator cartTotalsCalculator, ITaxProviderSearchService taxProviderSearchService, IMapper mapper ) { _cartTotalsCalculator = cartTotalsCalculator; _marketingEvaluator = marketingEvaluator; _taxProviderSearchService = taxProviderSearchService; _mapper = mapper; }
public CartAggregate( IMarketingPromoEvaluator marketingEvaluator, IShoppingCartTotalsCalculator cartTotalsCalculator, ITaxProviderSearchService taxProviderSearchService, ICartProductService cartProductService, IDynamicPropertyUpdaterService dynamicPropertyUpdaterService, IMapper mapper ) { _cartTotalsCalculator = cartTotalsCalculator; _marketingEvaluator = marketingEvaluator; _taxProviderSearchService = taxProviderSearchService; _cartProductService = cartProductService; _dynamicPropertyUpdaterService = dynamicPropertyUpdaterService; _mapper = mapper; }
public PolicyBenchmark() { // Register discriminators for promotion rewards to allow custom jsonconverters work correctly PolymorphJsonConverter.RegisterTypeForDiscriminator(typeof(PromotionReward), nameof(PromotionReward.Id)); // Register the resulting trees expressions into the AbstractFactory<IConditionTree> to allow custom jsonconverters work correctly foreach (var conditionTree in AbstractTypeFactory <PromotionConditionAndRewardTreePrototype> .TryCreateInstance().Traverse <IConditionTree>(x => x.AvailableChildren)) { AbstractTypeFactory <IConditionTree> .RegisterType(conditionTree.GetType()); } foreach (var conditionTree in AbstractTypeFactory <DynamicContentConditionTreePrototype> .TryCreateInstance().Traverse <IConditionTree>(x => x.AvailableChildren)) { AbstractTypeFactory <IConditionTree> .RegisterType(conditionTree.GetType()); } // Create disabled memory cache to test full calculations every policy call var memoryCache = new MemoryCache(Options.Create(new MemoryCacheOptions())); disabledPlatformMemoryCache = new PlatformMemoryCache(memoryCache, Options.Create(new CachingOptions() { CacheEnabled = false }), new Mock <ILogger <PlatformMemoryCache> >().Object); // Mock evaluation context from pctx_mock.json file pCtx = MockPromotionEvaluationContext(); // Mock promotions from promotions_mock.json file // If you want to have jsons like this from live system to benchmark different promotions combination, just call // in marketing module debug: // JsonConvert.SerializeObject(dynamicPromotion.DynamicExpression, new ConditionJsonConverter(doNotSerializeAvailCondition: true)) // in immediate or watch promoSearchServiceMock = new Moq.Mock <IPromotionSearchService>(); promoSearchServiceMock.Setup(x => x.SearchPromotionsAsync(It.IsAny <PromotionSearchCriteria>())).ReturnsAsync(MockPromotionSearchResult()); _bestRewardPolicy = GetBestRewardPromotionPolicy(); _stackablePolicy = GetCombineStackablePromotionPolicy(); }
public MerchandisingModuleMarketingController(IMarketingPromoEvaluator promotionEvaluator, IMarketingDynamicContentEvaluator contentEvaluator, CacheManager cacheManager) { _promotionEvaluator = promotionEvaluator; _contentEvaluator = contentEvaluator; _cacheManager = cacheManager; }
public MarketingModulePromotionController(IPromotionService promotionService, IMarketingExtensionManager promotionManager, IMarketingPromoEvaluator promoEvaluator) { _marketingExtensionManager = promotionManager; _promotionService = promotionService; _promoEvaluator = promoEvaluator; }