Beispiel #1
0
        public void Handle(PromotionUpdated @event)
        {
            using (var context = _contextFactory.Invoke())
            {
                var promotionDetail = context.Find <PromotionDetail>(@event.SourceId);

                promotionDetail.Name                    = @event.Name;
                promotionDetail.Description             = @event.Description;
                promotionDetail.StartDate               = @event.StartDate;
                promotionDetail.EndDate                 = @event.EndDate;
                promotionDetail.StartTime               = @event.StartTime;
                promotionDetail.EndTime                 = @event.EndTime;
                promotionDetail.DaysOfWeek              = @event.DaysOfWeek.ToJson();
                promotionDetail.AppliesToCurrentBooking = @event.AppliesToCurrentBooking;
                promotionDetail.AppliesToFutureBooking  = @event.AppliesToFutureBooking;
                promotionDetail.DiscountValue           = @event.DiscountValue;
                promotionDetail.DiscountType            = @event.DiscountType;
                promotionDetail.MaxUsagePerUser         = @event.MaxUsagePerUser;
                promotionDetail.MaxUsage                = @event.MaxUsage;
                promotionDetail.Code                    = @event.Code;
                promotionDetail.PublishedStartDate      = @event.PublishedStartDate;
                promotionDetail.PublishedEndDate        = @event.PublishedEndDate;
                promotionDetail.TriggerSettings         = @event.TriggerSettings;

                context.Save(promotionDetail);
            }
        }
Beispiel #2
0
        private void OnPromotionUpdated(PromotionUpdated @event)
        {
            _startDate  = @event.StartDate;
            _endDate    = @event.EndDate;
            _daysOfWeek = @event.DaysOfWeek;
            _appliesToCurrentBooking = @event.AppliesToCurrentBooking;
            _appliesToFutureBooking  = @event.AppliesToFutureBooking;
            _maxUsagesPerUser        = @event.MaxUsagePerUser;
            _maxUsages       = @event.MaxUsage;
            _discountValue   = @event.DiscountValue;
            _discountType    = @event.DiscountType;
            _code            = @event.Code;
            _triggerSettings = @event.TriggerSettings;

            SetInternalStartAndEndTimes(@event.StartTime, @event.EndTime);
        }