public JsonResult eliminar() { string token = Request.Headers["X-AUTH-TOKEN"]; string resultado = ""; if (Request.HttpMethod == "POST") { if (token != null) { Sesion sesionActual = getSesionByToken(token); if (sesionActual != null) { string error = ""; Proyecto proyectoAux = new Proyecto(); Request.InputStream.Seek(0, SeekOrigin.Begin); string jsonData = new StreamReader(Request.InputStream).ReadToEnd(); dynamic objProyecto = JsonConvert.DeserializeObject(jsonData, typeof(object)); proyectoAux.id_proyecto = objProyecto.id_proyecto; Proyecto proyecto = serviceProyecto.getById(proyectoAux.id_proyecto, ref error); if (proyecto.usuario_creador.id_usuario != sesionActual.usuario_logueado.id_usuario) { List <Rol> rolesUsuarioLogueado = serviceRol.getByIdUser(sesionActual.usuario_logueado.id_usuario, ref resultado); bool esAdministrador = false; foreach (var rol in rolesUsuarioLogueado) { if (rol.id_rol == 1) { esAdministrador = true; break; } } if (!esAdministrador) { error = "Usted no tiene permiso sobre este proyecto."; } } if (!string.IsNullOrEmpty(error)) { return(Json(new { Error = true, Mensaje = error }, JsonRequestBehavior.AllowGet)); } if (proyecto.id_proyecto > 0) { proyecto.fecha_baja = DateTime.Now; serviceProyecto.eliminar(proyecto, ref resultado); return(Json(proyecto, JsonRequestBehavior.AllowGet)); } else { return(Json(new { Error = true, Mensaje = "El proyecto no existe o no tiene permiso a él." }, JsonRequestBehavior.AllowGet)); } } else { return(Json(new { Error = true, Mensaje = "Token no válido." }, JsonRequestBehavior.AllowGet)); } } else { return(Json(new { Error = true, Mensaje = "Token ausente." }, JsonRequestBehavior.AllowGet)); } } else { return(Json(new { Error = true, Mensaje = "" }, JsonRequestBehavior.AllowGet)); } }