public static Boolean CreateKitFromTemplate(this ApplicationContext db, KitTemplateModel model) { //This function allows the user to build a kit from a template. //Grab out template from the database var dataTemplate = db.TPL_KitTemplates.Where(x => x.TemplateId == model.Id).FirstOrDefault(); //Grab out list of attached processes var dataTemplateProcessList = db.TPL_ProcessTemplates.Where(x => x.KitTemplateId == model.Id).ToList(); //Do work Kit newKitFromTemplate = new Kit { StartQty = model.StartQty, Opened = true, DateAdded = DateTime.Now, WorkOrder = model.WorkOrder, PartNumber = model.PartNumber //Save part number as template name }; //Define a list to add to List <Process> newProcessList = new List <Process>(); //Now we add to our new process list foreach (var process in dataTemplateProcessList) { newProcessList.Add(new Process { In = newKitFromTemplate.StartQty, PartNumber = newKitFromTemplate.PartNumber, StepOrder = process.StepOrder, ProcessName = process.ProcessName, KitId = newKitFromTemplate.Id, WorkOrder = newKitFromTemplate.WorkOrder }); } //Now we set the KitProcesses equal to our new list newKitFromTemplate.Processes = newProcessList; //Add our object & save db.Add(newKitFromTemplate); db.SaveChanges(); return(true); }
public Boolean BuildKitFromTemplate([FromForm] KitTemplateModel model) { db.CreateKitFromTemplate(model); return(true); }