public void insert(GrupoForm model) { using (var transaction = db.Database.BeginTransaction()) { try { grupo grupo = new grupo(); grupo.nombre = model.Grupo; grupo.fecha_registro = DateTime.Now; db.grupoes.Add(grupo); db.SaveChanges(); foreach (string usuario in model.Usuarios) { this.insertarUsuarioGrupo(grupo, usuario); } transaction.Commit(); } catch (Exception) { transaction.Rollback(); throw; } } }
public ActionResult RegistrarGrupo(GrupoForm model) { try { if (ModelState.IsValid) { _repo.insert(model); TempData["Success"] = "Se registro el grupo personalizado satisfactoriamente."; } return RedirectToAction("Index"); } catch (Exception) { TempData["Error"] = "No se pudieron guardar los cambios, intente de nuevo por favor."; return RedirectToAction("Index"); } }
public JsonResult ValidarGrupo(GrupoForm model) { List<string> result = _repo.ValidarGrupo(model); if (result.Count > 0) return Json(result.ToArray(), JsonRequestBehavior.AllowGet); else return Json(true, JsonRequestBehavior.AllowGet); }
public List<string> ValidarGrupo(GrupoForm model) { List<string> result = new List<string>(); int numUsuarios = 0; if (model.Grupo == null) result.Add("Digite el nombre del grupo personalizado"); if (model.Usuarios != null) { foreach (string username in model.Usuarios) { if (username != "") { var usuario = LDAPQuery.getUserByUID(username); if (usuario.CN == null) result.Add("El usuario " + username + " no existe en el directorio activo"); else numUsuarios++; } else { result.Add("Hay un campo de usuario sin diligenciar"); } } } if (numUsuarios <= 0) result.Add("Seleccione al menos un usuario para el grupo personalizado."); return result; }