public void TestGetProductById()
        {
            //Arrange and Act
            CompanyProduct product = testservice.GetProductById(3);

            //Assert
            Assert.IsNotNull(product.Name);
            Assert.IsNotNull(product.Description);
            Assert.IsNotNull(product.StyleNumber);
            Assert.IsNotNull(product.ProductVersions);
            Assert.IsNotNull(product.Price);
        }
        public ActionResult Index()
        {
            ServiceProduct service = new ServiceProduct();
            CompanyProduct model   = service.GetProductById(3);

            return(View(model));
        }
        public ActionResult Index(CompanyProduct product, FormCollection form)
        {
            if (Session["ShoppingCart"] == null)
            {
                ShoppingCart            = new List <SalesLineItem>();
                Session["ShoppingCart"] = ShoppingCart;
            }

            // add productversions to product
            ServiceProduct service = new ServiceProduct();

            product = service.GetProductById(product.StyleNumber);

            var selectedColor  = form.Get("colors");
            var selectedSize   = form.Get("sizes");
            int selectedAmount = Int32.Parse(form.Get("amount"));

            CompanyProductVersion prodVer = product.GetProductVersion(selectedSize, selectedColor);

            ConvertDataModel converter = new ConvertDataModel();

            if (prodVer != null)
            {
                SalesLineItem lineitem = new SalesLineItem()
                {
                    amount         = selectedAmount,
                    Product        = converter.ConvertFromCompanyProduct(product),
                    ProductVersion = converter.ConvertFromCompanyProductVersion(prodVer),
                    Price          = (selectedAmount * product.Price)
                };
                ShoppingCart = (List <SalesLineItem>)Session["ShoppingCart"];
                // check if item is already in cart
                if (ItemAlreadyExists(lineitem))
                {
                    foreach (var item in ShoppingCart)
                    {
                        if (item.Product.StyleNumber == lineitem.Product.StyleNumber && item.ProductVersion.SizeCode.Equals(lineitem.ProductVersion.SizeCode) && item.ProductVersion.ColorCode.Equals(lineitem.ProductVersion.ColorCode))
                        {
                            item.amount += lineitem.amount;
                        }
                    }
                }
                else
                {
                    ShoppingCart.Add(lineitem);
                }
            }
            else
            {
                return(RedirectToAction("NotInStock", "Product", new { id = product.StyleNumber }));
            }

            Session["ShoppingCart"] = ShoppingCart;

            return(RedirectToAction("index", "Cart"));
        }
 public ActionResult Details(int?id)
 {
     if (id != null && id > -1)
     {
         ServiceProduct service = new ServiceProduct();
         CompanyProduct product = service.GetProductById((int)id);
         return(View(product));
     }
     else
     {
         return(RedirectToAction("List"));
     }
 }
 public ActionResult NotinStock(int?id)
 {
     if (id != null && id > -1)
     {
         ServiceProduct service = new ServiceProduct();
         CompanyProduct product = service.GetProductById((int)id);
         ViewBag.Message = "Den valgte kombination af farve og størrelse er ikke på lager";
         return(View("Details", product));
     }
     else
     {
         return(RedirectToAction("List"));
     }
 }
        public CompanyProduct GetProductById(int id)
        {
            ServiceProduct service = new ServiceProduct();

            return(service.GetProductById(id));
        }