public async Task HandleAsync(RegisterNewPaymentCommand command) { var payment = _factory.CreatePayment(command.OrderId, command.PaymentOptionId); await _paymentRepository.Save(payment); var paymentEvent = new PaymentStarted(payment.Id, payment.Order.Id, CurrentDateTime.Local); await EventBus.Current.PublishAsync(paymentEvent); }
private void RaiseStartPayment(string cashGivenStr) { PaymentStarted?.Invoke(this, new PaymentEventArgs(cashGivenStr)); }