private async Task FillCombos(CodificacionViewModel codificacion) { ViewData["NivelId"] = new SelectList(_context.Nivel, "NivelId", "NivelDemandaCognitiva", codificacion.NivelId); ViewData["CursoId"] = new SelectList(_context.Curso, "CursoId", "NombreCurso", codificacion.CursoId); ViewData["EjeId"] = new SelectList(_context.Eje, "EjeId", "DescripcionEje", codificacion.EjeId); bool cursoEje = codificacion.CursoId != null && codificacion.EjeId != null; if (cursoEje) { var objetivos = await _context.Objetivo.Where(o => o.CursoId == codificacion.CursoId && o.EjeId == codificacion.EjeId).ToListAsync(); ViewData["ObjetivoId"] = new SelectList(objetivos, "ObjetivoId", "ObjetivoAprendizaje", codificacion.ObjetivoId); } ViewData["HabilidadId"] = new SelectList(_context.Habilidad, "HabilidadId", "NombreHabilidad", codificacion.HabilidadId); ViewData["TipoTareaId"] = new SelectList(_context.TipoTarea, "TipoTareaId", "NombreTipoTarea", codificacion.TipoTareaId); if ((bool)codificacion.TieneDuplicado) { var duplicados = await _context.Material.Where(d => d.Original == codificacion.MaterialId).ToListAsync(); ViewData["Duplicados"] = new SelectList(duplicados, "MaterialId", "FileName"); } }
// GET: Codificacion/Edit/5 public async Task <IActionResult> Edit(int?fase, int materialId, int filter = -1) { await getFaseCodificador(); var codificacion = await _context.Codificacion.Where(c => c.CodificadorId == _codificador && c.FaseId == (fase ?? _fase) && c.MaterialId == materialId).Include(m => m.Material).SingleOrDefaultAsync(); if (codificacion == null) { return(NotFound()); } _baseVM.FaseSel = fase ?? _fase; CodificacionViewModel model = new CodificacionViewModel(_baseVM, codificacion, filter); Navigation item = await GetItem(_codificador, (fase ?? _fase), materialId, filter); model.NextItem = item.Next; model.PrevItem = item.Previous; model.Total = item.Total; model.Pos = item.Pos; await FillCombos(model); return(View(model)); }
public async Task <IActionResult> Edit([Bind("CodificadorId,FaseId,MaterialId,FileName,TieneDuplicado,NivelId,NivelComentario,CursoId,EjeId,ObjetivoId,ObjetivoComentario,HabilidadId,HabilidadComentario,TipoTareaId,TipoTareaComentario,CorreccionProfesor,ErrorEjecucion,TrabajaDinero,ErrorDiseno,Observaciones,Filtro,Perfil")] CodificacionViewModel codificacion) { if (codificacion == null) { return(NotFound()); } setFaseActual(); if (ModelState.IsValid && (codificacion.FaseId == _fase || codificacion.Perfil == 1)) { try { codificacion.UpdateEstado(); Codificacion cd = codificacion.getCodificacion(); cd.LastUpdated = DateTime.Now; _context.Update(cd); _context.Entry(cd).State = EntityState.Modified; _context.Entry(cd).Property(o => o.RowIndex).IsModified = false; await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!CodificacionExists(codificacion.CodificadorId, codificacion.FaseId, codificacion.MaterialId)) { return(NotFound()); } else { throw; } } return(RedirectToAction(nameof(Edit), new { @materialId = codificacion.MaterialId, @fase = codificacion.FaseId, @filter = codificacion.Filtro })); } await FillCombos(codificacion); return(View(codificacion)); }