示例#1
0
        //LOGICA NEGOCIO
        public List <Idiomas> GetIdiomasDisponibles()
        {
            int usuario_id = SesionHelper.GetUser();
            var lista      = new List <Idiomas>();

            try
            {
                using (var bbdd = new ProyectoContexto())
                {
                    lista = (from ii in bbdd.Idiomas
                             .Except(
                                 from ii in bbdd.Idiomas
                                 join i in bbdd.Idioma
                                 on ii.id equals i.Idiomas_id
                                 where i.Usuario_id == usuario_id
                                 select(ii)
                                 )
                             select(ii)).ToList();
                    return(lista);
                }
            }
            catch (Exception ex)
            {
                return(lista);
            }
        }
示例#2
0
        public Mensaje LeerMensaje(int id)
        {
            Mensaje mensaje    = null;
            int     usuario_id = SesionHelper.GetUser();

            try
            {
                using (var bbdd = new ProyectoContexto())
                {
                    mensaje = bbdd.Mensaje
                              .Where(m => m.id == id)
                              .Where(m => m.Usuario_id == usuario_id)
                              .SingleOrDefault();
                    // si mensaje es null, salta un excepcion y devuelve null  y es evaluada por el controlador
                    //Origen.... Intento de leer mensajes de otros usuarios.
                    if (mensaje.Estado_id == 1)
                    {
                        //marcar como leido
                        mensaje.Estado_id = 2;
                        bbdd.Entry(mensaje).Property(m => m.Estado_id).IsModified = true;
                        bbdd.SaveChanges();
                    }

                    return(mensaje);
                }
            }
            catch (Exception)
            {
                return(mensaje);
            }
        }
示例#3
0
        public OfertaEmpleo GetOferta(int id)
        {
            int usuario_id = SesionHelper.GetUser();
            var oferta     = new OfertaEmpleo();

            try
            {
                using (var bbdd = new ProyectoContexto())
                {
                    oferta = bbdd.OfertaEmpleo.Where(oe => oe.id == id).Where(oe => oe.Usuario_id == usuario_id).SingleOrDefault();
                    //registrar la ultma vez que se entra a ver la oferta por parte de la empresa
                    if (oferta != null)
                    {
                        oferta.FechaGestion      = DateTime.Now;
                        bbdd.Entry(oferta).State = EntityState.Modified;
                        bbdd.SaveChanges();
                    }
                }
                return(oferta);
            }
            catch (Exception)
            {
                return(oferta);
            }
        }
示例#4
0
        //LOGICA NEGOCIO PARA ROL USUARIO
        public List <Inscritos> GetMisCandidaturas()
        {
            var lista      = new List <Inscritos>();
            int usuario_id = SesionHelper.GetUser();

            try
            {
                using (var bbdd = new ProyectoContexto())
                {
                    lista = bbdd.Inscritos
                            .Include("OfertaEmpleo")
                            .Include("OfertaEmpleo.Inscritos")
                            .Include("OfertaEmpleo.Categoria")
                            .Include("Usuario1")
                            .Include("Estado")
                            .Where(c => c.Usuario_id_D == usuario_id)
                            .OrderByDescending(c => c.Fecha).ToList();
                }
                return(lista);
            }
            catch (Exception)
            {
                return(lista);
            }
        }
示例#5
0
        //LOGICA NEGOCIO ROL EMPRESA
        public List <Inscritos> GetInscritos(int oferta_id, int estado = 0)
        {
            var lista      = new List <Inscritos>();
            var empresa_id = SesionHelper.GetUser();

            try
            {
                using (var bbdd = new ProyectoContexto())
                {
                    lista = bbdd.Inscritos.Include("Usuario")
                            .Where(i => i.Oferta_id == oferta_id)
                            .Where(i => i.Usuario_id_E == empresa_id)
                            .ToList();
                    if (estado > 0)
                    {
                        lista = lista.Where(i => i.estado_id == estado).ToList();
                    }
                }
                return(lista);
            }
            catch (Exception)
            {
                return(lista);
            }
        }
 public ActionResult Acciones(byte tipo, int id = 0)
 {
     if (id == 0) //nuevo registro
     {
         mExperiencia.Tipo       = tipo;
         mExperiencia.Usuario_id = SesionHelper.GetUser();
     }
     else // modificacion
     {
         mExperiencia = mExperiencia.ObtenerExperiencia(id);
     }
     return(View(mExperiencia));
 }
示例#7
0
        public ActionResult Detalle(int id)
        {
            var oferta = mOferta.GetOfertaDetalle(id);

            // solo ofertas abiertas
            if (oferta.Abierta == false)
            {
                return(RedirectToAction("Index", "Home"));
            }

            ViewBag.UsuarioActivo       = SesionHelper.GetUser();
            ViewBag.OfertasRelacionadas = mOferta.GetOfertasRelacionadas(3, oferta.id, oferta.Categoria_id);
            return(View(oferta));
        }
 public ActionResult Acciones(int id = 0)
 {
     if (id == 0)
     {
         ViewBag.Title            = "Nuevo Conocimiento";
         mConocimiento.id         = id;
         mConocimiento.Usuario_id = SesionHelper.GetUser();
     }
     else
     {
         ViewBag.Title = "Editar Conocimiento";
         mConocimiento = mConocimiento.ObtenerConocimiento(id);
     }
     return(View(mConocimiento));
 }
        public ActionResult _Listado(Filtro filtro, int[] idEliminar, int?displayNum, int?pagina)
        {
            if (filtro.Eliminar == 1)
            {
                bool result = true;
                for (int i = 0; i < idEliminar.Count() && result == true; i++)
                {
                    result = mConocimiento.EliminarConocimiento(idEliminar[i]);
                }
            }
            int maxPag = displayNum ?? 5;
            int numPag = pagina ?? 1;

            ViewBag.Listado = mConocimiento.ListaConocimientos(SesionHelper.GetUser(), filtro)
                              .ToPagedList(numPag, maxPag);
            return(PartialView());
        }
示例#10
0
        public Usuario UsuarioActivo()
        {
            Usuario activo = null;

            try
            {
                using (var bbdd = new ProyectoContexto())
                {
                    int id = SesionHelper.GetUser();
                    activo = bbdd.Usuario.Where(u => u.id == id).SingleOrDefault();
                }
            }
            catch (Exception)
            {
                return(activo);
            }
            return(activo);
        }
示例#11
0
        public ActionResult Acciones(int id = 0)
        {
            if (id == 0)
            {
                ViewBag.Title      = "Nuevo idioma";
                mIdioma.id         = 0;
                mIdioma.Usuario_id = SesionHelper.GetUser();
                //Todos los idiomas menos los que ya tiene el usuario
                ViewBag.IdiomasDisponibles = mIdiomas.GetIdiomasDisponibles();
            }
            else
            {
                ViewBag.Title = "Modificar Idioma";
                mIdioma       = mIdioma.GetIdioma(id, SesionHelper.GetUser());
            }

            ViewBag.Nivel = mEstado.GetNiveles();
            return(View(mIdioma));
        }
示例#12
0
        public ActionResult Index(int id)
        {
            var usuario = mUsuario.GetDatosPersonales(id);

            if (Convert.ToInt16(Session["Rol"]) == 1)
            {
                //Un Candidato solo puede ver su perfil o un perfil de empresa;
                if (id != SesionHelper.GetUser() && usuario.Rol_id == 1)
                {
                    return(Content("<script>window.close();</script>"));
                }
            }

            //Si no estas autenticado solo se puede ver el perfil de las empresas
            if (SesionHelper.GetUser() == 0 && usuario.Rol_id == 1)
            {
                return(Content("<script>window.close();</script>"));
            }
            ViewBag.UsuarioActual = SesionHelper.GetUser();
            return(View(usuario));
        }
示例#13
0
 public ActionResult Acciones(int id = 0)
 {
     if (id == 0)
     {
         mOferta.id         = 0;
         mOferta.Usuario_id = SesionHelper.GetUser();
         ViewBag.Title      = "Nueva Oferta de empleo";
     }
     else
     {
         ViewBag.Title = "Modificar Oferta";
         mOferta       = mOferta.GetOferta(id);
         // Solo puedo leer mis ofertas
         if (mOferta == null)
         {
             return(RedirectToAction("Index"));
         }
     }
     ViewBag.LPago      = mEstado.GetPago();
     ViewBag.LModoPago  = mEstado.GetModoPago();
     ViewBag.LCategoria = mCategoria.GetListado();
     return(View(mOferta));
 }
        public ActionResult _Listado(int tipo, int[] idEliminar, Filtro filtro,
                                     int?displayNum, int?pagina, int?btnEliminar)
        {
            // ////////////opcion eliminar registros
            if (filtro.Eliminar == 1)
            {
                bool result = true;
                for (int i = 0; i < idEliminar.Count() && result == true; i++)
                {
                    result = mExperiencia.EliminaExperiencia(idEliminar[i]);
                }
                ViewBag.Eliminar = 0;
            }
            // //////////////////paginacion
            int maxPag = displayNum ?? 5;
            int numPag = pagina ?? 1;

            ViewBag.Tipo    = tipo;
            ViewBag.Listado = mExperiencia.Listado(tipo, SesionHelper.GetUser(), filtro)
                              .ToPagedList(numPag, maxPag);

            return(PartialView());
        }
示例#15
0
        public PartialViewResult _Listado(Filtro filtro, int[] idEliminar, int?pagina, int?estado_id)
        {
            if (filtro.Eliminar == 1)
            {
                int  queBorro = Convert.ToInt16(Session["EstadoMensajes"]);
                bool result   = true;
                for (int i = 0; i < idEliminar.Count() && result == true; i++)
                {
                    result = mMensajes.EliminarMensaje(idEliminar[i]);
                    if (result && queBorro == 1)
                    {
                        RestarMensajeSinLeer();
                    }
                }
            }

            int numPag = pagina ?? 1;
            int maxReg = 5;
            int estado = estado_id ?? 1;

            //para saber si leo algun mensaje a donde tengo que volver, si a 'sin leer' o a leidos'
            //en las vista LeerMensajes leo esta variable de sesion antes de regresar
            Session["EstadoMensajes"] = estado;

            var mensajes = mMensajes.ListaMensajes(SesionHelper.GetUser(), estado).ToPagedList(numPag, maxReg);

            if (estado == 1)
            {
                ViewBag.Estado = "Sin Leer";
            }
            else
            {
                ViewBag.Estado = "Leidos";
            }

            return(PartialView(mensajes));
        }
示例#16
0
        public List <InscritosHistorial> GetHistorial(int oferta_id)
        {
            int usuario_id = SesionHelper.GetUser();
            var lista      = new List <InscritosHistorial>();

            try
            {
                using (var bbdd = new ProyectoContexto())
                {
                    lista = bbdd.InscritosHistorial
                            .Include("Estado")
                            .Include("Inscritos.OfertaEmpleo")
                            .Where(h => h.Oferta_id == oferta_id)
                            .Where(h => h.Usuario_id_D == usuario_id)
                            .OrderByDescending(h => h.Fecha)
                            .ToList();
                    return(lista);
                }
            }
            catch (Exception ex)
            {
                return(lista);
            }
        }
示例#17
0
        // LOGICA DE NEGOCIO BACK-END

        public List <OfertaEmpleo> GetLista(Filtro filtro)
        {
            int usuario_id = SesionHelper.GetUser();
            var lista      = new List <OfertaEmpleo>();

            try
            {
                using (var bbdd = new ProyectoContexto())
                {
                    lista = bbdd.OfertaEmpleo.Include("Inscritos").Where(oe => oe.Usuario_id == usuario_id)
                            .OrderByDescending(oe => oe.Fecha).ToList();

                    if (filtro.numeroOrderBy == "Desc")
                    {
                        lista = lista.OrderByDescending(x => x.id).ToList();
                    }
                    if (filtro.numeroOrderBy == "Asc")
                    {
                        lista = lista.OrderBy(x => x.id).ToList();
                    }
                    if (filtro.nombreOrderBy == "Desc")
                    {
                        lista = lista.OrderByDescending(x => x.Nombre).ToList();
                    }
                    if (filtro.nombreOrderBy == "Asc")
                    {
                        lista = lista.OrderBy(x => x.Nombre).ToList();
                    }
                    if (filtro.desdeOrderBy == "Desc")
                    {
                        lista = lista.OrderByDescending(x => x.Fecha).ToList();
                    }
                    if (filtro.desdeOrderBy == "Asc")
                    {
                        lista = lista.OrderBy(x => x.Fecha).ToList();
                    }
                    if (filtro.inscritosOrderBy == "Desc")
                    {
                        lista = lista.OrderByDescending(x => x.Inscritos.Count()).ToList();
                    }
                    if (filtro.inscritosOrderBy == "Asc")
                    {
                        lista = lista.OrderBy(x => x.Inscritos.Count()).ToList();
                    }
                    if (filtro.Estado == "false")
                    {
                        lista = lista.Where(x => x.Abierta == false).ToList();
                    }
                    else
                    {
                        lista = lista.Where(x => x.Abierta == true).ToList();
                    }
                    if (filtro.porNombre != null)
                    {
                        lista = lista.Where(x => x.Nombre.ToLower().Contains(filtro.porNombre.ToLower().Trim())).ToList();
                    }
                    if (filtro.porTitulo != null)
                    {
                        int num;
                        int.TryParse(filtro.porTitulo, out num);
                        lista = lista.Where(x => x.id.Equals(num)).ToList();
                    }
                }
                return(lista);
            }
            catch (Exception ex)
            {
                return(lista);
            }
        }
示例#18
0
 public PartialViewResult _Listado()
 {
     return(PartialView(mIdioma.GetIdiomas(SesionHelper.GetUser())));
 }
示例#19
0
 public PartialViewResult _Listado()
 {
     ViewBag.RutaAdjunta = SubirArchivos.GetRutaAdjuntos();
     return(PartialView(mAdjunto.Listado(SesionHelper.GetUser())));
 }
示例#20
0
 public ActionResult CambioDePass()
 {
     // var usuarioActual = mUsuario.UsuarioActivo();
     ViewBag.ID = SesionHelper.GetUser();
     return(View());
 }
示例#21
0
 public ActionResult Index()
 {
     Session["menuActivo"] = 5;
     mAdjunto.Usuario_id   = SesionHelper.GetUser();
     return(View(mAdjunto));
 }