コード例 #1
0
        public ActionResult Details(int id)
        {
            BOM_Header      bomHeader = _context.BOM_Headers.Find(id);
            List <BOM_Item> bomItems  = _context.BOM_Items.Where(i => i.BOM_HeaderID == bomHeader.ID).ToList();

            // Initialize viewModel object
            var viewModel = new BOMFormViewModel()
            {
                BOM_Header   = bomHeader,
                BOM_Items    = bomItems,
                Products     = _context.Materials.Where(m => m.MaterialTypeID == MaterialType.FinishedProduct).ToList(),
                RawMaterials = _context.Materials.Where(m => m.MaterialTypeID == MaterialType.RawMaterial).ToList()
            };

            return(View(viewModel));
        }
コード例 #2
0
        public ActionResult Save(BOMFormViewModel viewModel)
        {
            // Server side validation
            if (!ModelState.IsValid)
            {
                // The form is not valid -> Return the same form to the user
                return(View("BOMForm", viewModel));
            }


            // IF FORM IS VALID

            // Add new BOM
            if (viewModel.BOM_Header.ID == 0)
            {
                BOM_Header bomHeader = viewModel.BOM_Header;

                List <BOM_Item> bomItems = new List <BOM_Item>();

                foreach (var item in viewModel.BOM_Items)
                {
                    if (item.MaterialID == 0)
                    {
                        break;
                    }
                    else
                    {
                        bomItems.Add(item);
                    }
                }


                bomHeader.BOM_Items = bomItems;


                _context.BOM_Headers.Add(bomHeader);
            }
            // Update existing device
            else
            {
                // Will implement
            }

            _context.SaveChanges();

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