Esempio n. 1
0
        public ActionResult Products()
        {
            ProductHouseModel model = new ProductHouseModel();
            List <ProductToProductLineModel> phModel = new List <ProductToProductLineModel>();

            using (var mm = new MaterialsManager())
            {
                List <Product>       products     = mm.ActiveProducts().ToList();
                List <ProductLine>   partsOfHouse = mm.ActiveProductLines().ToList();
                List <ProductToLine> prodHouses   = mm.AllProductToProductLine().ToList();

                model.Products     = products.AsEnumerable();
                model.PartsOfHouse = partsOfHouse.AsEnumerable();

                // create the list based on our product and part list
                foreach (var partOfHouse in partsOfHouse)
                {
                    foreach (var product in products)
                    {
                        phModel.Add(new ProductToProductLineModel
                        {
                            IsActive        = prodHouses.Any(ph => ph.ProductID == product.ID && ph.ProductLineID == partOfHouse.ID) && prodHouses.First(ph => ph.ProductID == product.ID && ph.ProductLineID == partOfHouse.ID).IsActive,
                            ProductID       = product.ID,
                            ProductLineID   = partOfHouse.ID,
                            ProductName     = product.Name,
                            ProductLineName = partOfHouse.Name
                        });
                    }
                }
                model.ProductPartHouse = phModel.AsEnumerable();
            }
            return(View("Products", model));
        }
Esempio n. 2
0
        public ActionResult Products(ProductHouseModel model)
        {
            List <ProductToLine> parts = new List <ProductToLine>();

            // loop through to create a list and then save
            foreach (var part in model.ProductPartHouse.Where(m => m.IsActive))
            {
                parts.Add(new ProductToLine {
                    IsActive = true, ProductLineID = part.ProductLineID, ProductID = part.ProductID
                });
            }

            // first delete all of the existing ones
            using (var mm = new MaterialsManager())
            {
                mm.DeleteProductToProductLine();
                mm.CreateProductToProductLine(parts);
            }

            return(RedirectToAction("Index", "Home"));
        }