public async Task <IActionResult> Create([Bind("IdInstanciaPlantilla,Nombre,AspNetUser,Estado,Iniciada,Descripcion,Fecha")] InstanciasPlantillas instanciasPlantillas) { if (ModelState.IsValid) { _context.Add(instanciasPlantillas); await _context.SaveChangesAsync(); return(RedirectToAction(nameof(Index))); } ViewData["AspNetUser"] = new SelectList(_context.Users, "Id", "Id", instanciasPlantillas.AspNetUser); return(View(instanciasPlantillas)); }
public async Task <IActionResult> ManageUserSteps(int id, PasosUsuariosDetalle step) { if (ModelState.IsValid) { var stepInDb = await _context.PasosUsuariosDetalle .Include(p => p.PlantillaPasoDetalleNavigation) .ThenInclude(p => p.PasoNavigation) .ThenInclude(p => p.PasosInstanciasDatosDetalle) .ThenInclude(p => p.InstanciaPlantillaDatoNavigation) .ThenInclude(p => p.IdDatoTipoNavigation) .Where(p => p.IdPasosUsuarios == id) .FirstOrDefaultAsync(); stepInDb.PlantillaPasoDetalleNavigation.Estado = step.PlantillaPasoDetalleNavigation.Estado; if (step.PlantillaPasoDetalleNavigation.Estado == 3) { stepInDb.PlantillaPasoDetalleNavigation.PasoNavigation.FechaFin = DateTime.Now; } foreach (var i in step.PlantillaPasoDetalleNavigation.PasoNavigation.PasosInstanciasDatosDetalle) { foreach (var j in stepInDb.PlantillaPasoDetalleNavigation.PasoNavigation.PasosInstanciasDatosDetalle) { if (i.IdPasosInstanciasDatos == j.IdPasosInstanciasDatos) { j.InstanciaPlantillaDatoNavigation.DatoTexto = i.InstanciaPlantillaDatoNavigation.DatoTexto; j.InstanciaPlantillaDatoNavigation.DatoFecha = i.InstanciaPlantillaDatoNavigation.DatoFecha; j.InstanciaPlantillaDatoNavigation.DatoNumerico = i.InstanciaPlantillaDatoNavigation.DatoNumerico; j.InstanciaPlantillaDatoNavigation.DatoDecimal = i.InstanciaPlantillaDatoNavigation.DatoDecimal; } } } _context.PasosUsuariosDetalle.Update(stepInDb); await _context.SaveChangesAsync(); TempData["Success"] = "Actualizacion de paso exitoso."; return(RedirectToAction(nameof(Steps))); } else { ViewData["Status"] = new SelectList(_context.Acciones, "IdAccion", "Nombre"); return(View(step)); } }
public async Task <IActionResult> Create(Plantillas plantillas) { if (ModelState.IsValid) { _context.Add(plantillas); var counter = 0; foreach (var item in plantillas.PlantillasPasosDetalle) { counter++; item.PasoNavigation.Numero = counter; } await _context.SaveChangesAsync(); var stepsAndFieldsLinks = plantillas.PasosPlantillasCamposDetalle; foreach (var link in stepsAndFieldsLinks) { link.Paso = plantillas.PlantillasPasosDetalle[link.Paso].PasoNavigation.IdPaso; link.PlantillaCampo = plantillas.PlantillasCamposDetalle[link.PlantillaCampo].IdPlantillaCampo; } _context.AddRange(stepsAndFieldsLinks); await _context.SaveChangesAsync(); TempData["Success"] = "Plantilla creada exitosamente"; return(RedirectToAction(nameof(Index))); } SetupCreateViewBag(plantillas); return(View(plantillas)); }