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);
        }
Ejemplo n.º 4
0
        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);
        }
Ejemplo n.º 5
0
        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);
        }
Ejemplo n.º 6
0
        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);
 }