public IActionResult EditarEncuesta(DAEncuestasViewModel vm) { //ViewBag.Admin = 1; if (ModelState.IsValid) { //try //{ EncuestasRepository RepositorioEncuestas = new EncuestasRepository(); var resultTitulo = RepositorioEncuestas.GetEncuestasByTitulo(vm.Titulo); Regex regexTitulo = new Regex(@"^[a-zA-ZáéíóúÁÉÍÓÚñÑ0-9 ]{6,}$"); bool resultadoRegexTitulo = regexTitulo.IsMatch(vm.Titulo); if (!resultadoRegexTitulo) { ModelState.AddModelError("", "El titulo debe contener 6 o más caracteres, no puede iniciar con un número y no puede contener caracteres especiales."); return(View(vm)); } Regex regexIniciaNum = new Regex(@"[0-9]| $"); string expresion = vm.Titulo.Substring(0, 1); bool resultRegexIniciaNum = regexIniciaNum.IsMatch(expresion); if (resultRegexIniciaNum) { ModelState.AddModelError("", "El titulo de la encuesta no puede iniciar con un número."); return(View(vm)); } if (resultTitulo == null) { RepositorioEncuestas.Update(vm); return(RedirectToAction("Index")); } else if (resultTitulo.Id == vm.Id) { resultTitulo.Titulo = vm.Titulo; RepositorioEncuestas.Update(vm); return(RedirectToAction("Index")); } else { ModelState.AddModelError("", "Ya existe una encuesta con este nombre."); if (RepositorioEncuestas.GetEncuestasByTitulo(vm.Titulo).Estatus == false) { ViewBag.Recuperacion = true; ViewBag.IdEncRec = RepositorioEncuestas.GetEncuestasByTitulo(vm.Titulo).Id; } return(View(vm)); } //} //catch (Exception ex) //{ // ModelState.AddModelError("", ex.Message); // return View(vm); //} } else { return(View(vm)); } }
public void Update(DAEncuestasViewModel vm) { var c = Context.Encuesta.FirstOrDefault(x => x.Id == vm.Id); if (c != null) { c.Id = vm.Id; c.Titulo = vm.Titulo; c.Descripcion = vm.Descripcion; c.Estado = vm.Estado; c.IdCategoria = vm.IdCategoria; c.IdAdministrador = vm.IdAdministrador; c.FechaCreacion = vm.FechaCreacion; Update(c); } }
public void Insert(DAEncuestasViewModel vm) { Encuesta encuesta = new Encuesta { Id = vm.Id, Titulo = vm.Titulo, Descripcion = vm.Descripcion, Estado = vm.Estado, IdCategoria = vm.IdCategoria, IdAdministrador = vm.IdAdministrador, FechaCreacion = vm.FechaCreacion, Estatus = true }; Insert(encuesta); vm.Id = encuesta.Id; }