Example #1
0
        public void Handle(WalletTemplateCreated @event)
        {
            var bonusRepository = _container.Resolve <IBonusRepository>();

            var brand = bonusRepository.Brands.SingleOrDefault(b => b.Id == @event.BrandId);

            if (brand == null)
            {
                throw new RegoException(string.Format(NoBrandFormat, @event.BrandId));
            }

            foreach (var walletTemplate in @event.WalletTemplates)
            {
                brand.WalletTemplates.Add(new WalletTemplate
                {
                    Id       = walletTemplate.Id,
                    IsMain   = walletTemplate.IsMain,
                    Products = walletTemplate.ProductIds.Select(id => new Product {
                        ProductId = id
                    }).ToList()
                });
            }

            bonusRepository.SaveChanges();
        }
Example #2
0
 public void Consume(WalletTemplateCreated message)
 {
     _brandSubscriber.Handle(message);
 }
 public void Consume(WalletTemplateCreated message)
 {
     _eventHandlers.Handle(message);
 }
Example #4
0
 public void Handle(WalletTemplateCreated @event)
 {
     AddActivityLog(AdminActivityLogCategory.Brand, "Wallet Created", @event, @event.EventCreatedBy, null);
 }