Example #1
0
        public void CheckoutCart()
        {
            var customerController = _container.Resolve<CustomerController>();
            var controller = _container.Resolve<CartController>();

            var customersViewResult = customerController.Index() as ViewResult;

            var model = new CheckoutViewModel()
            {
                CustomerId = ((List<Customer>)customersViewResult.Model)[0].Id,
                Phone = "123456",
                City = "Varna",
                Address = "Varna"
            };
            var result = controller.Checkout(model) as RedirectToRouteResult;
        }
Example #2
0
        public ActionResult Checkout(CheckoutViewModel model)
        {
            if (!ModelState.IsValid)
                return View(model);

            using (ITransaction transaction = _session.BeginTransaction())
            {
                var cart = _cartRepository.GetCartByCustomerId(model.CustomerId);
                var address = new DeliveryAddress(model.City, model.Address);
                var phone = new Phone(model.Phone);

                var purchase = cart.Checkout(address, phone);

                _purchaseRepository.Add(purchase);

                transaction.Commit();
            }

            return RedirectToAction("Index");
        }