예제 #1
0
        private bool Handle(OrderOntvangen pakketOntvangen)
        {
            // logica
            var factuur = new Core.Models.Factuur {
                orderId = pakketOntvangen.orderId
            };

            this.facturen.Add(factuur);

            return(true);
        }
    public bool HandleEvent(string eventType, string eventData)
    {
        bool handled = true;

        switch (eventType)
        {
        case "OrderOntvangen":
            OrderOntvangen orderOntvangen = JsonConvert.DeserializeObject <OrderOntvangen>(eventData);
            handled = Handle(orderOntvangen);
            break;
        }
        return(handled);
    }
    private bool Handle(OrderOntvangen orderOntvangen)
    {
        var order = new OrderIngepakt()
        {
            routingKey = "Order.Ingepakt",
            orderId    = orderOntvangen.orderId,
            afmetingen = null,
            gewicht    = null,
        };

        orders.Add(order);

        return(true);
    }
예제 #4
0
        private static bool Handle(OrderOntvangen orderOntvangen)
        {
            Console.WriteLine("Order Ontvangen: {0}\n   Klant:\n     {1}\n     {2} {3}\n     {4} {5}\n     {6}\n     {7}",
                              orderOntvangen.orderId, orderOntvangen.klant.naam,
                              orderOntvangen.klant.adres.straat, orderOntvangen.klant.adres.huisnummer,
                              orderOntvangen.klant.adres.postcode, orderOntvangen.klant.adres.plaats,
                              orderOntvangen.klant.adres.land, orderOntvangen.klant.emailadres);
            Console.WriteLine("   Order Items:");

            foreach (OrderItem item in orderOntvangen.items)
            {
                Console.WriteLine("     {0}x {1}", item.aantal, item.artikelId);
            }
            return(true);
        }
예제 #5
0
 private static bool Handle(OrderOntvangen orderOntvangen)
 {
     using (var connection = new SqlConnection(ConfigurationManager.ConnectionStrings["PostorderCompany"].ConnectionString))
     {
         string            commandText = @"
             INSERT INTO [dbo].[OrderStatus] ([orderId],[klant],[betaald],[ingepakt],[gewicht],[afmetingen])
             VALUES (@orderId, @klant, @betaald, @ingepakt, @gewicht, @afmetingen)";
         CommandDefinition cmd         = new CommandDefinition(commandText, new OrderStatus()
         {
             orderId = orderOntvangen.orderId,
             klant   = JsonConvert.SerializeObject(orderOntvangen.klant)
         });
         connection.Execute(cmd);
     }
     return(true);
 }
예제 #6
0
        private static bool HandleEvent(string eventType, string eventData)
        {
            bool handled = true;

            switch (eventType)
            {
            case "OrderOntvangen":
                OrderOntvangen orderOntvangen = JsonConvert.DeserializeObject <OrderOntvangen>(eventData);
                handled = Handle(orderOntvangen);
                break;

            case "OrderIngepakt":
                OrderIngepakt orderIngepakt = JsonConvert.DeserializeObject <OrderIngepakt>(eventData);
                handled = Handle(orderIngepakt);
                break;

            case "OrderBetaald":
                OrderBetaald orderBetaald = JsonConvert.DeserializeObject <OrderBetaald>(eventData);
                handled = Handle(orderBetaald);
                break;

            case "OrderVerzonden":
                OrderVerzonden orderVerzonden = JsonConvert.DeserializeObject <OrderVerzonden>(eventData);
                handled = Handle(orderVerzonden);
                break;

            case "PakketGereed":
                PakketGereed pakketGereed = JsonConvert.DeserializeObject <PakketGereed>(eventData);
                handled = Handle(pakketGereed);
                break;

            case "PakketOnderweg":
                PakketOnderweg pakketOnderweg = JsonConvert.DeserializeObject <PakketOnderweg>(eventData);
                handled = Handle(pakketOnderweg);
                break;

            case "PakketAfgeleverd":
                PakketAfgeleverd pakketAfgeleverd = JsonConvert.DeserializeObject <PakketAfgeleverd>(eventData);
                handled = Handle(pakketAfgeleverd);
                break;
            }
            Console.WriteLine("\n");
            return(handled);
        }
예제 #7
0
        public Module()
        {
            Get["/"] = _ => "Postorder Company Order Service Running...";

            Post["/api/order"] = _ =>
            {
                var order = this.Bind <Core.Models.Order>();

                var orderId = GenerateNewOrderId();

                var orderOntvangen = new OrderOntvangen()
                {
                    routingKey = "Order.Ontvangen",
                    orderId    = orderId,
                    klant      = order.klant,
                    items      = order.items
                };

                new RabbitMQEventPublisher().PublishEvent(orderOntvangen);

                return(Response.AsJson(new { orderId = orderId }));
            };
        }
예제 #8
0
        private static bool HandleEvent(string eventType, string eventData)
        {
            bool handled = true;

            switch (eventType)
            {
            case "OrderOntvangen":
                OrderOntvangen orderOntvangen = JsonConvert.DeserializeObject <OrderOntvangen>(eventData);
                handled = Handle(orderOntvangen);
                break;

            case "OrderIngepakt":
                OrderIngepakt orderIngepakt = JsonConvert.DeserializeObject <OrderIngepakt>(eventData);
                handled = Handle(orderIngepakt);
                break;

            case "OrderBetaald":
                OrderBetaald orderBetaald = JsonConvert.DeserializeObject <OrderBetaald>(eventData);
                handled = Handle(orderBetaald);
                break;
            }

            return(handled);
        }