Ejemplo n.º 1
0
        /// <summary>
        /// Devuelve el estado de la sesion de un usuario: Si existe una sesion abierta, si no existe o si existe pero no le pertenece al ID de la sesion determinado
        /// </summary>
        /// <param name="id_usuario"></param>
        /// <param name="id_sesion_current"></param>
        /// <returns> 0:Sesion no existe porque está cerrada. 1:Sesion ya existente con el ID de sesion actual. 2:Sesion existente pero no equivalente con el ID actual</returns>
        public int getEstadoSesion(int id_usuario, string id_sesion_current)
        {
            A_USUARIO u = new A_USUARIO();

            Modelos.TB_USUARIO usuario = u.getUsuarioById(id_usuario);

            string id_sesion_old = _context.FN_TB_USUARIO_GetIdSesion(usuario.ID_USUARIO); //Obteniendo id de la sesion activa

            if (!string.IsNullOrEmpty(id_sesion_old))                                      //Si el usuario ya posee un id de sesion anterior
            {
                //Si no esta vacio, entonces se procede a comprobar si la sesion le pertenece al usuario actual o no
                if (id_sesion_old.Equals(id_sesion_current))
                {
                    //Si el ID de la sesion actual y la almacenada es la misma, se notifica
                    return(SESION_EXISTENTE);
                }
                else
                {
                    //Si los ID de la sesion no coinciden, se notifica
                    return(SESION_EXISTENTE_NO_EQUIVALENTE);
                }
            }
            //Sesion no existente
            return(SESION_NO_EXISTENTE);
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Método encargado de comprobar las credenciales
        /// </summary>
        /// <param name="CORREO">Correo en formato [email protected]</param>
        /// <param name="CONTRASENA">La contraseña en texto plano</param>
        /// <param name="id_sesion_current">El ID de la sesion asignada por ASP.NET</param>
        /// <returns>-1: Sesion no iniciada.</returns>
        public bool Autenticar(string CORREO, string CONTRASENA)
        {
            A_PERSONA      p = new A_PERSONA();
            A_USUARIO      u = new A_USUARIO();
            A_BENEFICIARIO a_BENEFICIARIO = new A_BENEFICIARIO();

            Modelos.TB_PERSONA persona = p.getPersonaByCorreoE(CORREO);
            Modelos.TB_USUARIO usuario = u.getUsuarioByPersona(persona.ID_PERSONA);

            string hash = Helpers.H_Objetos.Encriptar(CONTRASENA);

            var result = _context.FN_AUTENTICAR(CORREO, hash);      //COMPROBANDO CREDENCIALES

            Modelos.TB_BENEFICIARIO beneficiario = null;
            if (usuario.ID_ROL == 2)
            {
                beneficiario = a_BENEFICIARIO.BuscarBeneficiarioXIdPersona(persona.ID_PERSONA);
                // beneficiario =A_BENEFICIARIO.ObtenerBeneficiario(usuario.ID_USUARIO) ?? null;
            }
            Modelos.TB_FORMULADOR formulador = A_FORMULADOR.ObtenerFormuladorPorIdPersona(persona.ID_PERSONA) ?? null;
            if (beneficiario != null)
            {
                if (beneficiario.ID_ESTADO_PROCESO != A_ESTADO_PROCESO.ObtenerPorCodigo("B06").ID_ESTADO_PROCESO)
                {
                    return(false);
                }
            }
            //if(formulador != null)
            //{
            //    if (formulador.ACTIVO == false)
            //        return false;
            //}
            return(result == 1);
        }
Ejemplo n.º 3
0
        public static List <TB_ACTIVIDAD> ConsultarCitas(int consultor, int beneficiario)
        {
            List <TB_ACTIVIDAD> citas = new List <TB_ACTIVIDAD>();
            var resultado             = _context.SP_TB_ACTIVIDAD_ConsultarCitaConsultorBeneficiario(beneficiario, consultor);

            foreach (var a in resultado)
            {
                var User      = new A_USUARIO().getUsuarioById((int)a.ID_USUARIO_BENEFICIARIO);
                var perso     = new A_PERSONA().getPersonaById(User.ID_PERSONA);
                var actividad = new TB_ACTIVIDAD();
                actividad.ID_ACTIVIDAD            = a.ID_ACTIVIDAD;
                actividad.HORA                    = a.HORA;
                actividad.ID_USUARIO_BENEFICIARIO = (int)a.ID_USUARIO_BENEFICIARIO;
                actividad.ID_USUARIO_CONSULTOR    = (int)a.ID_USUARIO_CONSULTOR;
                actividad.FECHA                   = a.FECHA;
                actividad.DIRECCION               = a.DIRECCION;
                actividad.NOMBRE_BENEFICIARIO     = perso.NOMBRES + ' ' + perso.APELLIDOS;
                citas.Add(actividad);
            }
            return(citas);
        }