private void CheckAllChildrens(PlantillaPlanaItem item, bool checkValue, bool checkTodos) { PlantillaPlanaItem.PlantillaPlanaItemTipo targetType = ((item.Tipo == PlantillaPlanaItem.PlantillaPlanaItemTipo.Plantilla) ? (PlantillaPlanaItem.PlantillaPlanaItemTipo.Modulo) : ((item.Tipo == PlantillaPlanaItem.PlantillaPlanaItemTipo.Modulo) ? (PlantillaPlanaItem.PlantillaPlanaItemTipo.Agrupador) : (PlantillaPlanaItem.PlantillaPlanaItemTipo.Variable))); PlantillaViewModel model = (PlantillaViewModel)this.DataContext; if (checkTodos) { model.PlantillaPlana.Items.Where(x => x.ParentId == item.Id && x.Tipo == targetType).ToList().ForEach(p => p.Todo = checkValue); if (checkValue) { model.PlantillaPlana.Items.Where(x => x.ParentId == item.Id && x.Tipo == targetType).ToList().ForEach(p => p.UltimoResultado = false); } } else { model.PlantillaPlana.Items.Where(x => x.ParentId == item.Id && x.Tipo == targetType).ToList().ForEach(p => p.UltimoResultado = checkValue); if (checkValue) { model.PlantillaPlana.Items.Where(x => x.ParentId == item.Id && x.Tipo == targetType).ToList().ForEach(p => p.Todo = false); } } }
public async Task <ActionResult> Create(PlantillaViewModel model) { if (ModelState.IsValid) { model.Plantilla.PlantillaItems = model.PlantillaItems; db.Plantilla.Add(model.Plantilla); await db.SaveChangesAsync(); AddLog("", model.Plantilla.Id, model); return(RedirectToAction("Index", GetReturnSearch())); } return(View(model)); }
public async Task <ActionResult> Edit(PlantillaViewModel model) { if (ModelState.IsValid) { if (model.PlantillaItems == null) { model.PlantillaItems = new List <PlantillaItem>(); } foreach (var pi in model.PlantillaItems) { pi.PlantillaId = model.Plantilla.Id; } var currentItems = await db.PlantillaItem .Where(pi => pi.PlantillaId == model.Plantilla.Id) .ToListAsync(); var currentItemsId = currentItems.Select(pi => pi.ItemId).ToArray(); var itemsId = model.PlantillaItems.Select(pi => pi.ItemId).ToArray(); var itemsToAdd = model.PlantillaItems.Where(pi => !currentItemsId.Contains(pi.ItemId)).ToList(); var itemsToDelete = currentItems.Where(pi => !itemsId.Contains(pi.ItemId)).ToList(); if (itemsToDelete.Count > 0) { db.PlantillaItem.RemoveRange(itemsToDelete); } if (itemsToAdd.Count > 0) { db.PlantillaItem.AddRange(itemsToAdd); } db.Entry(model.Plantilla).State = EntityState.Modified; await db.SaveChangesAsync(); AddLog("", model.Plantilla.Id, model); return(RedirectToAction("Index", GetReturnSearch())); } return(View(model)); }
public Plantilla(PlantillaViewModel model) { this.DataContext = model; InitializeComponent(); }
public static PlantillaViewModel CreateInstance() { var plantilla = new PlantillaViewModel(); plantilla.Titulo = "Evaluacíón de Desempeño"; plantilla.Mensaje = "Complete el siguiente formulario"; plantilla.IdEvaluacion = "Proceso de Evaluacion de Desempeño"; plantilla.Periodo = " "; plantilla.TodosPeriodos = true; //plantilla.SeccionList = new SeccionListViewModel(); plantilla.SeccionList.Container = plantilla; plantilla.Variables = new ObservableCollection <VariableViewModel> { new VariableViewModel { Codigo = "1", Nombre = "Desempeño" }, new VariableViewModel { Codigo = "2", Nombre = "Efectividad" }, new VariableViewModel { Codigo = "3", Nombre = "Cumplimiento" } }; var seccion1 = new SeccionViewModel { Orden = 1, Nombre = "Sección 9", Container = plantilla.SeccionList, PreguntaList = new PreguntaListViewModel { Items = new ObservableCollection <PreguntaViewModel>(), } }; seccion1.PreguntaList.Container = seccion1; seccion1.PreguntaList.Items.Add(new PreguntaViewModel { Container = seccion1.PreguntaList, Pregunta = "Como te llamas?", Seccion = seccion1, Variable = "Desempeño", OpcionList = new OpcionListViewModel { Items = new ObservableCollection <OpcionViewModel>() } }); seccion1.PreguntaList.Items.Add(new PreguntaViewModel { Container = seccion1.PreguntaList, Pregunta = "Cual es tu puesto?", Seccion = seccion1, Variable = "Desempeño", OpcionList = new OpcionListViewModel { Items = new ObservableCollection <OpcionViewModel>() } }); seccion1.PreguntaList.Items.Add(new PreguntaViewModel { Container = seccion1.PreguntaList, Pregunta = "Pregunta 3?", Seccion = seccion1, Variable = "Desempeño", OpcionList = new OpcionListViewModel { Items = new ObservableCollection <OpcionViewModel>() } }); plantilla.SelectedSeccionPregunta = seccion1; //Agragando a la Collecion plantilla.SeccionList.Items = new ObservableCollection <SeccionViewModel>() { seccion1, new SeccionViewModel { Orden = 2, Nombre = "Sección 3", Container = plantilla.SeccionList, PreguntaList = new PreguntaListViewModel { Items = new ObservableCollection <PreguntaViewModel>() } } }; return(plantilla); }
public PlantillaEvaluacionView() { InitializeComponent(); this.DataContext = PlantillaViewModel.Instance(); }