Ejemplo n.º 1
0
        /// <summary>
        /// Makes the payment, and if successful, completes the order.
        /// </summary>
        /// <param name="Payment"></param>
        /// <param name="Order"></param>
        internal void Checkout(Payment Payment, Order Order)
        {
            Order.MoneyTransfers.Add(Payment);

            Order.Status = Globals.ORDERSTATUS_COMPLETE;
            Order.Statuses.Add(new OrderStatus { State = Globals.ORDERSTATUS_COMPLETE, Date = DateTime.Now });
            Order.Carts.ToList().AsParallel().ForAll(c => c.OrderCompleted = true);
            SaveChanges();
        }
Ejemplo n.º 2
0
        internal void CreateOrder(string UserKey, List<Cart> Carts, Shipping Shipping)
        {
            var order = new Order
            {
                Carts = Carts,
                Status = Globals.ORDERSTATUS_INCOMPLETE,
                Statuses = new List<OrderStatus> { new OrderStatus { State = Globals.ORDERSTATUS_INCOMPLETE, Date = DateTime.Now } },
                UserKey = UserKey,
                Shipping = Shipping
            };

            var outdatedOrder = GetIncompleteOrder(UserKey);
            if(outdatedOrder != null)
            {
                Order.Remove(outdatedOrder);
            }

            Order.Add(order);
            SaveChanges();
        }
Ejemplo n.º 3
0
 public ActionResult CheckoutComplete(Order order)
 {
     return View("OrderDetails", order);
 }
Ejemplo n.º 4
0
 internal void CalculateOrderSummary(out decimal ItemsTotal, out decimal ShippingPrice, out decimal OrderTotal, Order currentOrder)
 {
     ItemsTotal = CartBusiness.CalculateGrandTotal(currentOrder.Carts.AsQueryable());
     ShippingPrice = currentOrder.Shipping.ShippingPrice;
     OrderTotal = ItemsTotal + ShippingPrice;
 }