public void Handle(OrderPriced order) { var message = new TakePayment { Order = order.Order }; message.ReplyTo(order); _publisher.Publish(message); }
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); }