public async Task <IActionResult> Edit(long id, [Bind("Id")] Rúbrica rúbrica) { if (id != rúbrica.Id) { return(NotFound()); } if (ModelState.IsValid) { try { _context.Update(rúbrica); await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!RúbricaExists(rúbrica.Id)) { return(NotFound()); } else { throw; } } return(RedirectToAction(nameof(Index))); } return(View(rúbrica)); }
public async Task <IActionResult> Create([Bind("Descripción,Id,Porcentaje,IdRúbrica")] Criterio criterio) { if (ModelState.IsValid) { Rúbrica rúbrica = (from r in _context.Rúbrica where r.Id == criterio.IdRúbrica select r) .Include("Criterios") .FirstOrDefault(); rúbrica.CalcularPorcentajeRestante(); if (rúbrica == null) { ViewBag.MensajeDeError = "La rúbrica no se encuentra registrada"; return(View(criterio)); } if (rúbrica.PorcentajeRestante < criterio.Porcentaje) { ViewBag.MensajeDeError = "La rúbrica no tiene el porcentaje restante suficiente"; ViewBag.Rúbrica = rúbrica; return(View(criterio)); } criterio.Rúbrica = rúbrica; _context.Add(criterio); criterio.Rúbrica.Criterios.Add(criterio); _context.Update(criterio.Rúbrica); await _context.SaveChangesAsync(); criterio.Rúbrica.CalcularPorcentajeRestante(); return(RedirectToAction("Details", "Rúbrica", new { id = rúbrica.Id })); } return(View(criterio)); }
public async Task <IActionResult> Create([Bind("Id")] Rúbrica rúbrica) { if (ModelState.IsValid) { _context.Add(rúbrica); await _context.SaveChangesAsync(); return(RedirectToAction(nameof(Index))); } return(View(rúbrica)); }
public async Task <IActionResult> Create([Bind("Nombre,Id")] Rúbrica rúbrica) { if (ModelState.IsValid) { rúbrica.FechaDeRegistro = DateTime.Now; rúbrica.Estado = Rúbrica.RúbricaState.ACTIVA; _context.Add(rúbrica); await _context.SaveChangesAsync(); return(RedirectToAction(nameof(Index))); } return(View(rúbrica)); }
public async Task <IActionResult> Create([Bind("Código,Nombre,Id,Descripción,IdAsignatura,IdDirector,IdCalificado1,IdCalificado2,IdRúbrica")] Proyecto proyecto) { ViewBag.Asignaturas = new SelectList(_context.Asignatura, "Código", "Nombre"); ViewBag.Rúbricas = new SelectList(_context.Rúbrica, "Id", "Nombre"); if (ModelState.IsValid) { if (_context.Asignatura.Count() == 0) { ViewBag.ErrorNoHayAsignaturasRegistradas = "No hay asignaturas registradas"; return(View(proyecto)); } if (_context.Director.Count() == 0) { ViewBag.ErrorConDirector = "No hay directores registrados"; return(View(proyecto)); } if (_context.Calificador.Count() == 0) { ViewBag.ErrorConCalificador1 = "No hay calificadores registrados"; ViewBag.ErrorConCalificador2 = "No hay calificadores registrados"; return(View(proyecto)); } if (_context.Rúbrica.Count() == 0) { ViewBag.ErrorNoHayRúbricasRegistradas = "No hay rúbricas registradas"; return(View(proyecto)); } Asignatura a = _context.Asignatura.Where(a => a.Código == proyecto.IdAsignatura).FirstOrDefault(); Director d = _context.Director.Where(d => d.Identificación == proyecto.IdDirector).FirstOrDefault(); Calificador c1 = _context.Calificador.Where(c => c.Identificación == proyecto.IdCalificado1).FirstOrDefault(); Calificador c2 = _context.Calificador.Where(c => c.Identificación == proyecto.IdCalificado2).FirstOrDefault(); Rúbrica r = _context.Rúbrica.Where(r => r.Id == proyecto.IdRúbrica).FirstOrDefault(); if (d == null) { ViewBag.ErrorConDirector = "Este director no está registrado"; return(View(proyecto)); } if (c1 == null) { ViewBag.ErrorConCalificador1 = "Este calificador no está registrado"; return(View(proyecto)); } if (c2 == null) { ViewBag.ErrorConCalificador2 = "Este calificador no está registrado"; return(View(proyecto)); } ViewBag.ErrorConDirector = d.NombreCompleto(); proyecto.Asignatura = a; proyecto.Director = d; proyecto.Calificador1 = c1; proyecto.Calificador2 = c2; proyecto.Rúbrica = r; proyecto.Calificación = 0; _context.Add(proyecto); await _context.SaveChangesAsync(); return(RedirectToAction(nameof(Index))); } return(View(proyecto)); }