コード例 #1
0
 public ViewResult Index(Cart cart, string returnUrl)
 {
     CartIndexViewModel model = new CartIndexViewModel();
     model.Cart = cart;
     model.ReturnUrl = returnUrl;
     return View(model);
 }
コード例 #2
0
ファイル: CartController.cs プロジェクト: Shiloff/SportsStore
 public ActionResult Index(Cart cart,string returnUrl)
 {
     CartIndexViewModel result = new CartIndexViewModel();
     result.cart = cart;
     result.returnUrl = returnUrl;
     return View(result);
 }
コード例 #3
0
 public ViewResult Index(Cart cart, string returnUrl)
 {
     CartIndexViewModel cartIndexVM = new CartIndexViewModel();
     cartIndexVM.Cart = cart;
     cartIndexVM.ReturnUrl = returnUrl;
     return View(cartIndexVM);
 }
コード例 #4
0
 /// <summary>
 /// 转向购物车
 /// </summary>
 /// <param name="cart"></param>
 /// <param name="returnUrl"></param>
 /// <returns></returns>
 public ViewResult Index(Cart cart, string returnUrl)
 {
     CartIndexViewModel civm = new CartIndexViewModel()
     {
         Cart = cart,
         ReturnUrl = returnUrl,
     };
     return View(civm);
 }
コード例 #5
0
 public ViewResult Index(string returnUrl, Cart cart)
 {
     var cartIndexModel = new CartIndexViewModel
                              {
                                  Cart = cart,
                                  ReturnUrl = returnUrl
                              };
     return this.View(cartIndexModel);
 }
コード例 #6
0
ファイル: CartController.cs プロジェクト: Peska/SportsStore
        public ActionResult Index(Cart cart, string returnUrl)
        {
            CartIndexViewModel model = new CartIndexViewModel()
            {
                Cart = cart,
                ReturnUrl = returnUrl
            };

            return View(model);
        }
コード例 #7
0
        public void Can_View_Cart_Contents()
        {
            // Arrange - create a Cart
            Cart cart = new Cart();
            // Arrange - create the controller
            CartController target = new CartController(null, null);
            // Act - call the Index action method
            CartIndexViewModel result
                = (CartIndexViewModel)target.Index(cart, "myUrl").ViewData.Model;

            // Assert
            Assert.AreSame(result.Cart, cart);
            Assert.AreEqual(result.ReturnUrl, "myUrl");
        }
コード例 #8
0
        public void Can_View_Cart_Contents()
        {
            // Arrange
            Cart cart = new Cart();

            CartController controller = new CartController(null, null);

            // Act
            CartIndexViewModel model = (CartIndexViewModel)controller.Index(cart, "myUrl").Model;

            // Assert
            Assert.AreEqual(model.Cart, cart);
            Assert.AreEqual(model.ReturnUrl, "myUrl");
        }
コード例 #9
0
ファイル: CartTest.cs プロジェクト: jvvpabalan/SportsStore
        public void Can_View_Cart_Contents()
        {
            // arrange
            Cart cart = new Cart();

            CartController target = new CartController(null, null);

            //act
            CartIndexViewModel result = (CartIndexViewModel)target.Index(cart, "myUrl").ViewData.Model;

            //assert
            Assert.AreSame(result.Cart, cart);
            Assert.AreEqual(result.ReturnUrl, "myUrl");
        }
コード例 #10
0
        public void Can_View_Cart_Contents()
        {
            // przygotowanie — utworzenie koszyka
            Cart cart = new Cart();
            // przygotowanie — utworzenie kontrolera
            CartController target = new CartController(null);
            // działanie — wywołanie metody akcji Index
            CartIndexViewModel result
                = (CartIndexViewModel)target.Index(cart, "myUrl").ViewData.Model;

            // asercje
            Assert.AreSame(result.Cart, cart);
            Assert.AreEqual(result.ReturnUrl, "myUrl");
        }
コード例 #11
0
ファイル: CartTests.cs プロジェクト: Aydarbek/ViVenty_Aqua
        public void Can_View_Cart_Contents()
        {
            //Setup - create Cart and CartController
            Cart           cart       = new Cart();
            CartController controller = new CartController(repo.Object, orderProcessor.Object, mailService.Object);

            //Action - call of Index method

            CartIndexViewModel result =
                (CartIndexViewModel)controller.Index(cart, "backToShop").ViewData.Model;

            //Assert
            Assert.AreSame(result.Cart, cart);
            Assert.AreEqual(result.ReturnUrl, "backToShop");
        }
コード例 #12
0
        public void Can_View_Cart_Contents()
        {
            Cart cart = new Cart();


            CartController target = new CartController(null, null);

            // Виклид метода Index()
            CartIndexViewModel result
                = (CartIndexViewModel)target.Index(cart, "myUrl").ViewData.Model;

            // Ствердження
            Assert.AreSame(result.Cart, cart);
            Assert.AreEqual(result.ReturnUrl, "myUrl");
        }
コード例 #13
0
        public void Can_View_Cart_Contents()
        {
            // 准备-创建Cart
            Cart cart = new Cart();

            // 准备-创建Cart控制器
            CartController target = new CartController(null);

            // 动作--调用Index动作方法
            CartIndexViewModel result = (CartIndexViewModel)target.Index(cart, "myUrl").ViewData.Model;

            // 断言
            Assert.AreEqual(result.Cart, cart);
            Assert.AreEqual(result.ReturnUrl, "myUrl");
        }
コード例 #14
0
        public void Can_View_Cart_Contents()
        {
            //Arrange - create a Cart
            Cart cart = new Cart();

            //Arrange - create the controller
            CartController cartController = new CartController(null, null);

            //Act - call the Index action method
            CartIndexViewModel cartIndexViewModel = (CartIndexViewModel)cartController.Index(cart, "myUrl").Model;

            //Assert
            Assert.AreSame(cartIndexViewModel.Cart, cart);
            Assert.AreEqual(cartIndexViewModel.ReturnUrl, "myUrl");
        }
コード例 #15
0
        public void Can_View_Cart_Contents()
        {
            // Организация - создание корзины
            Cart cart = new Cart();

            // Организация - создание контроллера
            CartController target = new CartController(null);

            // Действие - вызов метода действия Index()
            CartIndexViewModel result = (CartIndexViewModel)target.Index(cart, "myUrl").ViewData.Model;

            // Утверждение
            Assert.AreSame(result.Cart, cart);
            Assert.AreEqual(result.ReturnUrl, "myUrl");
        }
コード例 #16
0
        public async Task <ActionResult> Index(string returnUrl)
        {
            CartIndexViewModel cartViewModel = new CartIndexViewModel
            {
                LoggedInUser = await cartService.GetCurrentUser(),
                //CartEntries = await cartService.GetShoppingCartEntries(),
                ReturnUrl = returnUrl
            };

            cartViewModel.CartEntries = cartService.GetShoppingCartEntries(cartViewModel.LoggedInUser.Id).OrderBy(e => e.Listing.ListingName).AsEnumerable();

            cartViewModel.FullNavList = CreateCartViewModelNavList();

            return(View(cartViewModel));
        }
コード例 #17
0
        public void Can_View_Cart_Contents()
        {
            // Arrange
            Cart cart = new Cart();

            _controller = new CartController(null, _orderProcessor);

            // Act - call the Index action method
            CartIndexViewModel result = (CartIndexViewModel)_controller.Index(cart, "myUrl").ViewData.Model;

            //Assert

            Assert.AreSame(result.Cart, cart);
            Assert.AreEqual(result.ReturnUrl, "myUrl");
        }
コード例 #18
0
ファイル: CartTests.cs プロジェクト: idear1203/SportsStore
        public void TestCanViewCartContent()
        {
            // Preparation - create cart
            Cart cart = new Cart();

            // Preparation - create controller
            CartController target = new CartController(null, null);

            // Action - call `Index` action method
            CartIndexViewModel result = (CartIndexViewModel)target.Index(cart, "myUrl").ViewData.Model;

            // Assertions
            Assert.AreSame(result.Cart, cart);
            Assert.AreEqual(result.ReturnUrl, "myUrl");
        }
コード例 #19
0
        public ActionResult RemoveFromCart(Cart cart, int id, string returnUrl)
        {
            Good good = db.Goods.GetList().FirstOrDefault(g => g.ID == id);

            if (good != null)
            {
                cart.RemoveItem(good);
            }

            CartIndexViewModel viewModel = new CartIndexViewModel {
                Cart = cart, ReturnUrl = returnUrl
            };

            //return RedirectToAction("Index", new { returnUrl });
            return(View("Index", viewModel));
        }
コード例 #20
0
        public ActionResult Checkout(Cart cartline)
        {
            var selectedDate         = DateTime.Now;
            CartIndexViewModel model = new CartIndexViewModel();

            model.Cart = cartline;
            foreach (var item in model.Cart.Lines)
            {
                foreach (var date in item.Product.ErtekesitesReszletek)
                {
                    date.Ertekesites.ErtekesitesDatum = selectedDate;
                }
            }

            return(View(model));
        }
コード例 #21
0
        public ViewResult Index(Cart Cart, string ReturnUrl, int CurrentPage = 1)
        {
            CartIndexViewModel CartModel = new CartIndexViewModel
            {
                CartList  = Cart.Lines.OrderBy(x => x.ID).Skip((CurrentPage - 1) * CartPageSize).Take(CartPageSize).ToList(),
                ReturnUrl = ReturnUrl,
                TotalBill = Cart.CompleteTotalValue(),
                PagesData = new PagingInfo
                {
                    CurrentPage  = CurrentPage,
                    TotalItems   = Cart.Lines.Count(),
                    ItemsPerPage = CartPageSize
                }
            };

            return(View(CartModel));
        }
コード例 #22
0
        public ActionResult Index(Cart cart, string returnUrl)
        {
            var cartIndexViewModel = new CartIndexViewModel
            {
                Cart      = cart,
                ReturnUrl = returnUrl
            };

            var client = _clientLogic.Get(User.Identity.GetUserId());

            if (client != null)
            {
                ViewBag.userBlocked = client.IsBlocked;
            }


            return(View(cartIndexViewModel));
        }
コード例 #23
0
ファイル: CartController.cs プロジェクト: 1andy/plcdev
        public ActionResult Index()
        {
            var model = new CartIndexViewModel { Form = new CartForm() };

            var cookieItems = GetCookieCart();
            model.Form.CartItems = (from ci in cookieItems
                                    where ci.Quantity > 0
                                    let variant = _session.Get<ProductVariant>(ci.VariantId)
                                    where variant != null
                                    select new CartFormItem
                                           {
                                               VariantId = variant.Id,
                                               Quantity = ci.Quantity,
                                               Variant = variant
                                           }).ToList();

            return View(model);
        }
コード例 #24
0
ファイル: CartController.cs プロジェクト: borozky/cineplex
        // The cart page
        public async Task <IActionResult> Index()
        {
            var cart = HttpContext.Session.Get <Cart>("Cart");
            List <PricingType> pricingTypes = await _db.PricingTypes.ToListAsync();

            var viewModel = new CartIndexViewModel
            {
                Cart         = cart,
                PricingTypes = pricingTypes
            };

            if (cart != null && cart.Bookings != null)
            {
                var movieIds = cart.Bookings.Select(i => i.Show.MovieId).Distinct().ToArray();

                var movies = await _db.Movies
                             .Include(m => m.Shows)
                             .Include(m => m.Images)
                             .Where(m => movieIds.Contains(m.Id))
                             .ToListAsync();


                foreach (Movie m in movies)
                {
                    foreach (Show s in m.Shows)
                    {
                        var found = cart.Bookings.FirstOrDefault(b => b.ShowId == s.Id);
                        if (found != null)
                        {
                            if (s.Bookings == null)
                            {
                                s.Bookings = new List <Booking>();
                            }
                            s.Bookings.Add(found);
                        }
                    }
                }

                viewModel.Movies = movies;
            }

            return(View(viewModel));
        }
コード例 #25
0
        public void Can_View_Cart_Contents()
        {
            //准备-创建模仿存储库
            Mock <IProductRepository> mock = new Mock <IProductRepository>();

            mock.Setup(m => m.Products).Returns(new Product[] { new Product {
                                                                    ProductID = 1, Name = "P1", Category = "Apples"
                                                                } }.AsQueryable());
            //准备-创建Cart
            Cart cart = new Cart();
            //准备-创建控制器
            CartController target = new CartController(mock.Object, null);
            //动作-调用Index动作方法
            CartIndexViewModel index = (CartIndexViewModel)target.Index(cart, "myUrl").ViewData.Model;

            //断言
            Assert.AreSame(index.Cart, cart);
            Assert.AreEqual(index.ReturnUrl, "myUrl");
        }
コード例 #26
0
        public void Index_ValidCart_ReturnsView()
        {
            Cart cart = new Cart();

            CartController controller = new CartController(
                null,
                null,
                null,
                null,
                null,
                null,
                null,
                null);

            CartIndexViewModel result = (CartIndexViewModel)controller.Index(cart, "returnUrl").Model;

            Assert.AreEqual(result.Cart, cart);
            Assert.AreEqual(result.ReturnUrl, "returnUrl");
        }
コード例 #27
0
        public void ViewCartContentTest()
        {
            Toy t1 = new Toy {
                ToyID = 1, Name = "Misio", Price = 20M
            };
            Toy t2 = new Toy {
                ToyID = 2, Name = "Lalka", Price = 50M
            };

            Cart cart = new Cart();

            cart.AddItem(t1, 1);
            cart.AddItem(t2, 1);

            CartController controller = new CartController(null, null);

            CartIndexViewModel result = (CartIndexViewModel)controller.Index(cart, "myUrl").ViewData.Model;

            Assert.AreEqual(result.Cart, cart);
            Assert.AreEqual(result.ReturnUrl, "myUrl");
        }
コード例 #28
0
        public ActionResult Index()
        {
            var model = new CartIndexViewModel {
                Form = new CartForm()
            };

            var cookieItems = GetCookieCart();

            model.Form.CartItems = (from ci in cookieItems
                                    where ci.Quantity > 0
                                    let variant = _session.Get <ProductVariant>(ci.VariantId)
                                                  where variant != null
                                                  select new CartFormItem
            {
                VariantId = variant.Id,
                Quantity = ci.Quantity,
                Variant = variant
            }).ToList();

            return(View(model));
        }
コード例 #29
0
        public PartialViewResult AddToCart(int productId, string returnUrl)
        {
            var product = _productRepository.GetSingleProduct(productId);

            var order = GetCart();

            // Check if product exist in cart => add qty 1
            if (order.BestallningMatratt.Any(x => x.MatrattId == productId))
            {
                order.BestallningMatratt.Single(x => x.MatrattId == productId).Antal += 1;
            }
            else
            {
                var newProd = new BestallningMatratt()
                {
                    Antal   = 1,
                    Matratt = new Matratt()
                    {
                        MatrattNamn = product.MatrattNamn,
                        Pris        = product.Pris
                    }, // Selfreference without this line
                    MatrattId = productId
                };
                order.BestallningMatratt.Add(newProd);
            }

            var points = _customerRepository.GetSingleCustomer(_userManager.GetUserName(User)).Poang;

            order.Totalbelopp = order.ComputeTotalValue(GetUserRole(), points, order.BestallningMatratt.Sum(p => p.Antal));

            SetCart(order);

            var model = new CartIndexViewModel()
            {
                Cart           = order,
                CartTotalValue = order.Totalbelopp
            };

            return(PartialView("_CartSumPartial", model));
        }
コード例 #30
0
        public ActionResult PrintPdf(ShoppingCart cart)
        {
            //var pdfView = new ActionAsPdf("Index", new { cartService = cart,  returnUrl = ""});
            var civm = new CartIndexViewModel
            {
                Cart      = cart,
                ReturnUrl = ""
            };


            //var pdfView = new ViewAsPdf("Index", civm);

            var pdfView = new ViewAsPdf("Index", civm)
            {
                FileName    = "File.pdf",
                PageSize    = Rotativa.Options.Size.A4,
                PageMargins = { Left = 0, Right = 0 }
            };


            return(pdfView);
        }
コード例 #31
0
        public CartIndexViewModel GetUserOrder(int orderId)
        {
            IList <OrderedOutfit> orderedOutfits = orderedOutfitRepository.GetOrderedOutfits(orderId);
            CartIndexViewModel    cart           = new CartIndexViewModel();

            cart.OrderId   = orderId;
            cart.ReturnUrl = "null";

            List <CartLine> Lines = new List <CartLine>();

            foreach (OrderedOutfit ob in orderedOutfits)
            {
                CartLine ct = new CartLine
                {
                    Outfit   = OutfitRepository.Get(ob.OutfitId),
                    Quantity = ob.Quantity
                };
                Lines.Add(ct);
            }
            cart.Cart.Lines = Lines;
            return(cart);
        }
コード例 #32
0
ファイル: CartController.cs プロジェクト: WatchingOn9/RStore
        public async Task <IActionResult> Checkout(CartIndexViewModel model)
        {
            if (cart.Lines.Count() == 0)
            {
                ModelState.AddModelError("", "Sorry, your cart is empty!");
            }
            if (ModelState.IsValid)
            {
                model.Order.Lines    = cart.Lines.ToArray();
                model.Order.Currency = model.Order.Lines.FirstOrDefault().Product.Currency;
                oRepo.SaveOrder(model.Order);
                bool isSent = await SendMail();

                return(RedirectToAction(nameof(Completed)));
            }
            else
            {
                TempData["error"] = "Some Fields is invalid.";
                model.Cart        = cart;
                return(View("Index", model));
            }
        }
コード例 #33
0
        public void TestCartStatePersistence()
        {
            // Arrange
            Mock <IProductRepository> mockBuilder = new Mock <IProductRepository>();

            mockBuilder.Setup(m => m.Products).Returns(new Product[] {
                new Product {
                    ProductId = 1, Name = "P1", Category = "Apples"
                }
            });

            Cart cart = new Cart();

            CartController cartController = new CartController(null, null);

            // Act
            CartIndexViewModel viewModel = (CartIndexViewModel)cartController.Index(cart, "myUrl").ViewData.Model;

            // Assert
            Assert.AreEqual(viewModel.Cart, cart);
            Assert.AreEqual(viewModel.ReturnUrl, "myUrl");
        }
コード例 #34
0
        public ActionResult Index(CartIndexViewModel model)
        {
            var qtys    = Request.Form["Stock_Qtys"];
            var qty_arr = qtys.Split(',').Select(sValue => int.Parse(sValue.Trim())).ToArray() as int[];

            if (qty_arr is null)
            {
                qty_arr = new int[] { }
            }
            ;

            var cart = GetCart();

            if (cart.CartItems is null || cart.CartItems.Count != qty_arr.Count())
            {
                return(View("Error"));
            }

            for (int i = 0; i < qty_arr.Count(); i++)
            {
                cart.CartItems.ElementAt(i).Qty = qty_arr[i];
            }

            if (User.Identity.IsAuthenticated)
            {
                db.Entry(cart).State = EntityState.Modified;
                db.SaveChanges();
            }
            else if (HttpContext.Request.Cookies["guestCart"] is HttpCookie cookie)
            {
                var cartCookie = JsonConvert.SerializeObject(cart);
                cookie.Value   = cartCookie;
                cookie.Expires = DateTime.Now.AddMinutes(60);
                Response.Cookies.Add(cookie);
            }

            return(RedirectToAction("Index"));
        }
コード例 #35
0
        public ViewResult Checkout(Cart cart, ShippingDetails shippingDetails)
        {
            CartIndexViewModel indexViewModel = new CartIndexViewModel();
            decimal            Subtotal       = 0;

            indexViewModel.PigeonsInCart = cart.Lines.Select(x => new PigeonInCartDTO(x, repository.GetPigeon(x.PigeonId))).ToList();
            foreach (var pig in indexViewModel.PigeonsInCart)
            {
                pig.Price = priceCalcFactory.Create(configuration.ChosenStrategyName).CalculatePrice(cart, cart.Lines.Find(x => x.PigeonId == pig.Pigeon.PigeonId));
                Subtotal += pig.Price;
            }
            if (cart.Lines.Count() == 0)
            {
                ModelState.AddModelError("", "Sorry, your cart is empty!");
            }

            if (ModelState.IsValid)
            {
                Order order = new Order();
                cart.FillOrder(order);
                order.City         = shippingDetails.City;
                order.Country      = shippingDetails.Country;
                order.GiftWrap     = shippingDetails.GiftWrap;
                order.Line1        = shippingDetails.Line1;
                order.Line2        = shippingDetails.Line2;
                order.Line3        = shippingDetails.Line3;
                order.Name         = shippingDetails.Name;
                order.SummaryPrice = Subtotal;
                orderRepository.SaveOrder(order);
                orderProcessor.ProcessOrder(order);
                cart.Clear();
                return(View("Completed"));
            }
            else
            {
                return(View(shippingDetails));
            }
        }
コード例 #36
0
        public void Adding_Products_To_CarT_Goes_To_Cart_Screen()
        {
            //arrange
            Mock <IProductRepository> mock = new Mock <IProductRepository>();

            mock.Setup(m => m.Products).Returns(new Product[]
            {
                new Product {
                    ProductId = 1, Name = "P1", Category = "Jabłka"
                }
            }.AsQueryable());

            Cart cart = new Cart();

            CartController target = new CartController(mock.Object, null);

            //act
            CartIndexViewModel result = (CartIndexViewModel)target.Index(cart, "myUrl").ViewData.Model;

            //assert
            Assert.AreSame(result.Cart, cart);
            Assert.AreEqual(result.ReturnUrl, "myUrl");
        }
コード例 #37
0
        public ActionResult UpdateQuantity(Cart cart, CartLine line)
        {
            CartLine lineItem = cart.Lines.First(p => p.Product.ProductID == line.Product.ProductID);

            lineItem.Quantity = line.Quantity;

            CartIndexViewModel model = new CartIndexViewModel
                                           {
                                               Cart = cart,
                                               ReturnUrl = "",
                                               Total = cart.ComputeTotalValue()
                                           };

            //return Json(new { success = true, lineTotal = lineItem.LineTotal, total = cart.ComputeTotalValue() });

            return Json(new {success = true, model});
        }
コード例 #38
0
        public ActionResult Search(CartIndexSearchCriteria criteria)
        {
            CartIndexViewModel model = GetCartIndexModel(criteria);

            return(Json(model, JsonRequestBehavior.AllowGet));
        }