public ActionResult WasteFactors(int companyID) { var wasteFactors = new List <WasteFactor>(); var model = new List <WasteFactorModel>(); var prodParts = new List <ProductToLine>(); List <Product> products = new List <Product>(); List <ProductLine> partsOfHouse = new List <ProductLine>(); using (var mm = new MaterialsManager()) { prodParts = mm.AllProductToProductLine().ToList(); products = mm.AllProducts().ToList(); partsOfHouse = mm.ActiveProductLines().ToList(); } using (var wfm = new WasteFactorManager()) { wasteFactors = wfm.ByCompany(companyID).ToList(); } foreach (var pph in prodParts) { if (!wasteFactors.Any(wf => wf.ProductID == pph.ProductID && wf.ProductLineID == pph.ProductLineID)) { model.Add(new WasteFactorModel { CompanyID = companyID, CreatedOn = DateTime.Now, ModifiedOn = DateTime.Now, ModifiedBy = User.Identity.Name, ProductLineID = pph.ProductLineID, ProductID = pph.ProductID, ProductName = products.FirstOrDefault(p => p.ID == pph.ProductID).Name, ProductLineName = partsOfHouse.FirstOrDefault(p => p.ID == pph.ProductID).Name }); } else { var fact = wasteFactors.FirstOrDefault( wf => wf.ProductID == pph.ProductID && wf.ProductLineID == pph.ProductLineID); model.Add(new WasteFactorModel { ID = fact.ID, CompanyID = companyID, CreatedOn = fact.CreatedOn, ModifiedOn = fact.CreatedOn, ModifiedBy = fact.ModifiedBy, ProductLineID = pph.ProductLineID, ProductID = pph.ProductID, ProductName = products.FirstOrDefault(p => p.ID == pph.ProductID).Name, ProductLineName = partsOfHouse.FirstOrDefault(p => p.ID == pph.ProductID).Name, Factor = fact.WasteFactor1.GetValueOrDefault() }); } } return(View("WasteFactors", model)); }
public ActionResult AllProducts() { List <Product> products; using (var mm = new MaterialsManager()) { products = mm.AllProducts().ToList(); } ViewBag.Products = products; return(View("ProductList")); }