private void ReserveSeat(ReservationCreated reservation)
 {
     _state.Reservations.Add(new Reservation
     {
         OrderId    = reservation.OrderId,
         CustomerId = reservation.CustomerId,
         EventId    = reservation.EventId
     });
 }
Esempio n. 2
0
        public void Handle(ReservationCreated domainEvent)
        {
            var reservation = Reservations.SingleOrDefault(r => r.Id == domainEvent.Id);

            if (reservation == null)
            {
                reservation = new ReservationViewModel();
                Reservations.Add(reservation);
            }

            reservation.Id = domainEvent.Id;
        }
        protected override void OnCommand(object message)
        {
            switch (message)
            {
            case ReserveSeat m:
            {
                var reservationCreated = new ReservationCreated(m.CustomerId, m.OrderId, m.EventId, m.ReservationId, m.SceneSeatId);
                Persist(reservationCreated, @event =>
                    {
                        ReserveSeat(@event);
                        SaveSnapshotIfNeeded();
                        Context.PublishEvent(@event);
                    });
            }
            break;

            case DiscardSeat m:
            {
                var reservationCreated = new ReservationDiscarded(m.OrderId, m.EventId, m.ReservationId);
                Persist(reservationCreated, @event =>
                    {
                        DiscarReservation(@event);
                        SaveSnapshotIfNeeded();
                        Context.PublishEvent(@event);
                    });
            }
            break;

            case Terminated m:
            {
            }
            break;

            default:
                Unhandled(message);
                break;
            }
        }
 public void Handle(ReservationCreated domainEvent)
 {
     _getAllReservationsView.Handle(domainEvent);
     _context.Value.Clients.All.reservationCreated(_getAllReservationsView.Reservations);
 }
Esempio n. 5
0
 private void Handle(ReservationCreated @event)
 {
     _state.Reservations.Add(new SeatReservationReadModel(@event.ReservationId, @event.SceneSeatId, @event.EventId, @event.OrderId));
 }
 public void Apply(ReservationCreated aggregateEvent)
 {
     _state = State.Reserved;
 }