Exemplo n.º 1
0
        public Ecommerce.Entities.Orders.Order GetOrder(AmazonOrder amazonOrder)
        {
            Ecommerce.Entities.Orders.Order order = amazonOrder.Order ?? new Ecommerce.Entities.Orders.Order();

            if (order.Id == 0)
            {
                order = GetOrderDetails(amazonOrder);
                Ecommerce.Entities.Orders.Order order1 = order;
                _session.Transact(session => session.Save(order1));
                GetOrderLines(amazonOrder, ref order);

                _setTax.SetTax(ref order, amazonOrder.Tax);
            }

            order.ShippingStatus = amazonOrder.Status.GetEnumByValue <ShippingStatus>();

            return(order);
        }
Exemplo n.º 2
0
 private void GetOrderLines(AmazonOrder amazonOrder, ref Ecommerce.Entities.Orders.Order order)
 {
     foreach (AmazonOrderItem amazonOrderItem in amazonOrder.Items)
     {
         var orderLine = new OrderLine
         {
             Order     = order,
             UnitPrice =
                 amazonOrderItem.QuantityOrdered > 0
                     ? (amazonOrderItem.ItemPriceAmount / amazonOrderItem.QuantityOrdered)
                     : 0,
             Price    = amazonOrderItem.ItemPriceAmount,
             Name     = amazonOrderItem.Title,
             Tax      = amazonOrderItem.ItemTaxAmount,
             Discount = amazonOrderItem.PromotionDiscountAmount,
             Quantity = Decimal.ToInt32(amazonOrderItem.QuantityOrdered),
             SKU      = amazonOrderItem.SellerSKU
         };
         order.OrderLines.Add(orderLine);
         _session.Transact(session => session.Save(orderLine));
     }
 }