public ActionResult Home(string necesidad)
        {
            List <Necesidades> todasLasNecesidades;
            int idSession = int.Parse(Session["UserId"].ToString());

            if (!string.IsNullOrEmpty(Request["buscar"]))
            {
                ViewBag.ResultadoBusqueda = true;
                todasLasNecesidades       = servicioNecesidad.Buscar(Request["buscar"]);
                if (todasLasNecesidades.Count == 0)
                {
                    ViewBag.ResultadoBusqueda = false;
                }
            }
            else
            {
                todasLasNecesidades = servicioNecesidad.TraerNecesidadesQueNoSonDelUsuario(idSession);
            }
            List <Necesidades> necesidadesDelUser = servicioNecesidad.TraerNecesidadesDelUsuario(idSession, necesidad);

            //Mantener el checkbox seleccionado o no, dependiendo lo que haya elegido
            TempData["estadoCheckbox"] = necesidad;

            ViewBag.necesidadesDelUser = necesidadesDelUser;
            return(View(todasLasNecesidades));
        }
        public ActionResult Crear()
        {
            int idUsuario = int.Parse(Session["UserId"].ToString());

            if (servicioUsuario.VerificarPerfilCompleto(idUsuario))
            {
                TempData["Mensaje"] = "Debe Completar su perfil para crear una necesidad.";
                return(View("AvisosNecesidad"));
            }
            else if (servicioNecesidad.TraerNecesidadesDelUsuario(idUsuario, "on").Count >= 3)
            {
                TempData["Mensaje"] = "Usted ya alcanzó el límite (3) de necesidades activas.";
                return(View("AvisosNecesidad"));
            }
            NecesidadesMetadata necesidadesMetadata = new NecesidadesMetadata();

            return(View(necesidadesMetadata));
        }
        public ActionResult MisNecesidades(string necesidad)
        {
            int idSession = int.Parse(Session["UserId"].ToString());
            List <Necesidades>            necesidadesObtenidas      = servicioNecesidad.TraerNecesidadesDelUsuario(idSession, necesidad);
            ServicioNecesidadValoraciones servNecesidadValoraciones = new ServicioNecesidadValoraciones();

            //Mantener el checkbox seleccionado o no, dependiendo lo que haya elegido
            TempData["estadoCheckbox"] = necesidad;
            List <NecesidadesValoraciones> valoracionesObtenidas = servNecesidadValoraciones.obtenerValoracionesDelUsuario(idSession);
            VMPublicacion vMPublicacion = new VMPublicacion()
            {
                listaNecesidades        = necesidadesObtenidas,
                necesidadesValoraciones = valoracionesObtenidas
            };

            return(View(vMPublicacion));
        }