Пример #1
0
 public void Handle(PromotionUnapplied @event)
 {
     using (var context = _contextFactory.Invoke())
     {
         var promotionUsageDetail = context.Find <PromotionUsageDetail>(@event.OrderId);
         if (promotionUsageDetail != null)
         {
             context.Set <PromotionUsageDetail>().Remove(promotionUsageDetail);
             context.Save(promotionUsageDetail);
         }
     }
 }
Пример #2
0
        private void OnPromotionUnapplied(PromotionUnapplied @event)
        {
            Interlocked.Decrement(ref _usages);

            int usagesForThisUser;

            _usagesPerUser.TryGetValue(@event.AccountId, out usagesForThisUser);
            _usagesPerUser[@event.AccountId] = Interlocked.Decrement(ref usagesForThisUser);

            _orderIds.Remove(@event.OrderId);

            _usersWhiteList.Add(@event.AccountId);
        }