コード例 #1
0
        public void Handle(OrderPriced order)
        {
            var message = new TakePayment {
                Order = order.Order
            };

            message.ReplyTo(order);

            _publisher.Publish(message);
        }
コード例 #2
0
        public void Handle(PriceOrder baseOrder)
        {
            var order = new ManagersOrder(baseOrder.Order);

            var totalWithoutTax = order.Items.Sum(item => item.Quantity * item.Price);
            var tax             = (int)(totalWithoutTax * 0.2);

            order.Tax   = tax;
            order.Total = totalWithoutTax + tax;

            var orderPriced = new OrderPriced {
                Order = order.InnerItem
            };

            orderPriced.ReplyTo(baseOrder);
            _publisher.Publish(orderPriced);
        }