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); }
public ActionResult AvailableProducts(int materialID) { List<Product> products; List<MaterialToProduct> materialProducts; using (var mm = new MaterialsManager()) { products = mm.ActiveProducts().OrderBy(p => p.Name).ToList(); materialProducts = mm.ByMaterialID(materialID).ToList(); } ViewBag.Products = products; ViewBag.MaterialToProducts = materialProducts; return View("AvailableProducts"); }
public ActionResult Products() { List<Product> products; using (var mm = new MaterialsManager()) { products = mm.ActiveProducts().ToList(); } ViewBag.Products = products; return View("ProductList"); }
public ActionResult MaterialProductsGrid(int? supplierID) { using (var um = new UserManager()) { var currentUser = um.ByUsername(User.Identity.Name); if (currentUser.SupplierID != null) { supplierID = currentUser.SupplierID.GetValueOrDefault(); } } var model = new MaterialProductGridModel(); var materialToProductModels = new List<MaterialToProductModel>(); using (var mm = new MaterialsManager()) { var products = mm.ActiveProducts().ToList(); var materials = mm.BySupplier(supplierID.GetValueOrDefault()).ToList(); var materialToProducts = mm.ByManufacturerID(supplierID.GetValueOrDefault()).ToList(); model.Products = products.AsEnumerable(); model.Materials = materials.AsEnumerable(); // create the list based on our product and material list foreach (var material in materials) { foreach (var product in products) { materialToProductModels.Add(new MaterialToProductModel { IsActive = materialToProducts.Any(mp => mp.ProductID == product.ID && mp.MaterialID == material.ID), ProductID = product.ID, MaterialID = material.ID, ProductName = product.Name, MaterialName = material.Name, MaterialToProductID = materialToProducts.Any(mp => mp.ProductID == product.ID && mp.MaterialID == material.ID) ? materialToProducts.First(mp => mp.ProductID == product.ID && mp.MaterialID == material.ID).ID : 0 }); } } model.MaterialProducts = materialToProductModels.AsEnumerable(); } return View("MaterialProductsGrid", model); }
public ActionResult Edit(int id) { Quote quote; using (var qm = new QuoteManager()) { quote = qm.Single(id); ViewBag.Quote = quote; } // determine the supplier and materials available List<CompanyToSupplier> companySuppliers; using (var sm = new SupplierManager()) { companySuppliers = sm.ByCompanyID(quote.CompanyID.GetValueOrDefault()).ToList(); } List<Product> products; using (var mm = new MaterialsManager()) { List<Material> allMaterials = new List<Material>(); foreach (var companyToSupplier in companySuppliers) { allMaterials.AddRange(mm.BySupplier(companyToSupplier.SupplierID)); } ViewBag.AvailableMaterials = allMaterials; products = mm.ActiveProducts(quote.CompanyID.GetValueOrDefault()).ToList(); var productLines = mm.ActiveProductLines().ToList(); ViewBag.ProductLines = productLines.AsEnumerable(); ViewBag.ProductToProductLine = mm.AllProductToProductLine().ToList(); ViewBag.MaterialToProducts = mm.AllMaterialToProducts().ToList(); } ViewBag.Products = products; return View("Edit"); }