public async Task <Order> CreateOrderAsync(Guid customerId, IEnumerable <OrderItem> orderItems) { var order = orderService.CreateOrder(customerId, orderItems); var processOrderCommand = new ProcessOrderCommand(order); await bus.EnqueueAsync(processOrderCommand, ProcessOrderCommand.CommandQueueName); return(order); }
public async Task CreateAdotarAsync(Guid clientId, Guid animalId, DateTime dataAdocao) { var adotar = adotarService.CreateAdotar(clientId, animalId, dataAdocao); var command = new ProcessAdotarCommand(adotar); //var serializedCommand = serializerService.Serialize(command); await bus.EnqueueAsync(command, command.QueueName); }
public async Task <bool> ProcessPostAsync(ProcessPostCommand command) { var isSuccess = await postCommandHandler.HandleAsync(command); //Create The Event var postProcessedEvent = new PostProcessedEvent(command.Post); postProcessedEvent.Success = isSuccess; await bus.EnqueueAsync(postProcessedEvent, postProcessedEvent.QueueName); return(isSuccess); }
public async Task ProcessOrderAsync(ProcessOrderCommand processOrderCommand) { var commandHandlerSuccess = await orderCommandHandler.HandleAsync(processOrderCommand); var orderProcessedEvent = new OrderProcessedEvent(processOrderCommand.Order); orderProcessedEvent.Success = true; if (!commandHandlerSuccess) { orderProcessedEvent.Success = false; } await bus.EnqueueAsync(orderProcessedEvent, OrderProcessedEvent.EventQueueName); }
public async Task ProcessOrderAsync(ProcessOrderCommand processOrderCommand) { var commandHandlerSuccess = await _orderCommandHandler.HandleAsync(processOrderCommand); var orderProcessedEvent = new OrderProcessedEvent(processOrderCommand.Order); orderProcessedEvent.Success = true; if (!commandHandlerSuccess) { Console.WriteLine("Falha no tratamento da mensagem"); orderProcessedEvent.Success = false; } await _bus.EnqueueAsync(orderProcessedEvent, OrderProcessedEvent.EventQueueName); }
public async Task <Order> CreateOrderAsync(Guid customerId, Guid tableId, CreateOrderViewModel orderViewModel) { ICollection <OrderItem> orderItems = new List <OrderItem>(); foreach (var item in orderViewModel.OrderItems) { orderItems.Add(new OrderItem { Id = Guid.NewGuid(), ProductId = item.ProductId, Amount = item.Amount }); } var order = _orderService.CreateOrder(customerId, tableId, orderItems); var processOrderCommand = new ProcessOrderCommand(order); await _bus.EnqueueAsync(processOrderCommand, ProcessOrderCommand.CommandQueueName); return(order); }
public async Task CreatePostAsync(Guid profileId, string message, string photoUrl) { var post = postService.CreatePost(profileId, message, photoUrl); var command = new ProcessPostCommand(post); await bus.EnqueueAsync(command, command.QueueName); }