示例#1
0
 public ViewResult Checkout(Cart cart, ShippingDetails shippingDetails)
 {
     if (!cart.Lines.Any())
     {
         ModelState.AddModelError("", "Sorry, your cart is empty");
     }
     if (ModelState.IsValid)
     {
         orderProcessor.ProcessOrder(cart, shippingDetails);
         cart.Clear();
         return View("Completed");
     }
     return View(shippingDetails);
 }
示例#2
0
 public ViewResult Checkout(Cart cart, ShippingDetails shippingDetails)
 {
     if (!cart.Lines.Any())
     {
         ModelState.AddModelError("","Извините, ваша корзина пустая!");
     }
     if(ModelState.IsValid)
     {
         orderProcessor.ProcessOrder(cart,shippingDetails);
         cart.Clear();
         return View("Completed");
     }
     return View(shippingDetails);
 }
示例#3
0
 public ViewResult Checkout(Cart cart, ShippingDetails shippingDetails)
 {
     if (cart.Lines.Count() == 0)
     {
         ModelState.AddModelError("", "Twój koszyk jest pusty :(");
     }
     if (ModelState.IsValid)
     {
         orderProcessor.ProcessOrder(cart, shippingDetails);
         cart.Clear();
         return View("Completed");
     }
     else
     {
         return View(shippingDetails);
     }
 }
示例#4
0
        public ViewResult Checkout(Cart cart, ShippingDetails shippingDetails)
        {
            if (cart.Lines.Count() == 0)
            {
                ModelState.AddModelError("", "Извините, ваша корзина пуста!");
            }

            if (ModelState.IsValid)
            {
                cart.Clear();
                return View("OrderCompleted");
            }
            else
            {
                return View(shippingDetails);
            }
        }
示例#5
0
 public void Can_Clear_Contents()
 {
     var p1 = new Product { ProductID = 1, Name = "P1", StandardCost = 100M };
     var p2 = new Product { ProductID = 2, Name = "P2", StandardCost = 50M };
     var target = new Cart();
     target.AddItem(p1, 1);
     target.AddItem(p2, 1);
     target.Clear();
     Assert.AreEqual(target.Lines.Count(), 0);
 }
示例#6
0
        public Order ReceiveOrder(Cart cart, string username)
        {
            var order = new Order{
                Username = username,
                OrderDate = DateTime.Now,
                Status = "Received",
                Total = cart.ComputeTotal(),
                //CompleteDate = new DateTime(1900,1,1)
            };

               db.Orders.Add(order);

               AddOrderDetails(order, cart);
               db.SaveChanges();

               cart.Clear();

               return order;
        }
示例#7
0
 public ViewResult Checkout(Cart cart, Address address, bool mainAddress, string shipMethod)
 {
     if(!cart.Lines.Any()) ModelState.AddModelError("","Sorry, your cart is empty!");
     var user = AuthHelper.GetUser(HttpContext, new EfUserRepository());
     if (mainAddress) //если основной, то перезаписываем
     {
         if (address.AddressID == 0) //на случай, если пользователь не заполнил свой адрес в профиле
         {
             address.ModifiedDate = DateTime.Now;
             address.rowguid = Guid.NewGuid();
             _addressRepository.SaveToAddress(address);
             _addressCustomerRepository.SaveToCustomerAddress(_addressCustomerRepository.BindCustomerAddress(
                user, address));
         }
         else
         {
             _addressRepository.SaveToAddress(address);
         }
     }
     else // иначе добавляем новый
     {
         address.AddressID = 0;
         address.ModifiedDate = DateTime.Now;
         address.rowguid = Guid.NewGuid();
         _addressRepository.SaveToAddress(address);
     }
     if (ModelState.IsValid)
     {
        _orderProcessor.Processor(cart, user,address, shipMethod);
         cart.Clear();
         return View("Completed");
     }
     return View("Checkout");
 }