Exemple #1
0
        public void AddToOrder([FromBody] OrderItemManagementData data)
        {
            Dal.Order order = this.ordersDataProvider.GetById(data.OrderId);
            OrderItem item  = order.Items.Where(x => x.ProductId == data.ProductId).FirstOrDefault();

            if (item == null)
            {
                Product product = MessageQueue.SendMessage <Product>("GetProduct", new
                {
                    ProductId = data.ProductId
                }).Result;

                order.Items.Add(new OrderItem
                {
                    ProductId    = data.ProductId,
                    Price        = product.Price,
                    ProductTitle = product.Title,
                    Quantity     = data.Quantity
                });
            }
            else
            {
                item.Quantity = data.Quantity;
            }

            this.ordersDataProvider.Update(order.ToDalOrderUpdatingData());
        }
Exemple #2
0
        public void DeleteFromOrder([FromBody] OrderItemManagementData data)
        {
            Dal.Order order = this.ordersDataProvider.GetById(data.OrderId);
            OrderItem item  = order.Items.Where(x => x.ProductId == data.ProductId).FirstOrDefault();

            if (item != null)
            {
                order.Items.Remove(item);
                this.ordersDataProvider.Update(order.ToDalOrderUpdatingData());
            }
        }