Exemplo n.º 1
0
        public static Passenger ToReadModel(this Domain.Booking.Passenger.Passenger passenger)
        {
            var model = new Passenger
            {
                Id            = passenger.PassengerKey,
                PassengerKey  = passenger.PassengerKey,
                Name          = passenger.Name,
                PassengerType = (PassengerType)passenger.PassengerType,
                Age           = passenger.Age,
                Email         = passenger.Email,
            };

            return(model);
        }
        public override Task ExecuteAsync(Booking aggregate, AddPassengerCommand command,
                                          CancellationToken cancellationToken)
        {
            var passenger = new Domain.Booking.Passenger.Passenger
            {
                Age           = command.Age,
                Name          = command.Name,
                Email         = command.Email,
                PassengerType = command.PassengerType,
                PassengerKey  = (aggregate.Passengers.Count + 1).ToString()
            };

            aggregate.AddPassenger(passenger);

            return(Task.FromResult(0));
        }