Exemple #1
0
        /// <summary>
        /// Metodo que Obtiene un Usuario por el atributo NombreUsuario
        /// </summary>
        /// <param name="Entidad">Obeto Usuario</param>
        /// <returns>Resultado con el objeto Usuario en su atributo "Objeto"</returns>
        public Resultado <UsuarioInfo> ObtenerUsuario(UsuarioInfo Entidad)
        {
            var ObjetoResultado = new Resultado <UsuarioInfo>();
            var ObjetoUsuario   = new UsuarioInfo();
            var NegUsuario      = new NegUsuarios();

            try
            {
                ObjetoUsuario.NombreUsuario = Entidad.NombreUsuario;
                ObjetoResultado             = NegUsuario.Buscar(ObjetoUsuario);
                if (ObjetoResultado.ResultadoGeneral)
                {
                    ObjetoUsuario          = ObjetoResultado.Lista.FirstOrDefault();
                    ObjetoResultado.Objeto = ObjetoUsuario;
                }
                return(ObjetoResultado);
            }
            catch (Exception Ex)
            {
                ObjetoResultado.ResultadoGeneral = false;
                if (Constantes.ModoDebug == true)
                {
                    ObjetoResultado.Mensaje = Ex.Message;
                }
                else
                {
                    ObjetoResultado.Mensaje = ArchivoRecursos.ObtenerValorNodo(Constantes.MensajesUsuario.ErrorListar.ToString()) + " Usuario";
                }
                return(ObjetoResultado);
            }
        }
Exemple #2
0
        /// <summary>
        /// Método que valida los datos de un Usuario al Ingresar al Sistema
        /// </summary>
        /// <param name="Entidad">Objeto Usuario con el Nombre de Usuario y la Clave a validar</param>
        /// <returns>Objeto Resultado con el mensaje y el Objeto Usuario validado.</returns>
        public Resultado <UsuarioInfo> Validar(UsuarioInfo Entidad)
        {
            var ObjetoResultado = new Resultado <UsuarioInfo>();
            var ObjetoUsuario   = new UsuarioInfo();
            var NegUsuario      = new NegUsuarios();
            int?EstadoInactivo  = new int();

            try
            {
                var ObjetoConfiguracion = new ConfiguracionGeneralInfo();
                ObjetoConfiguracion = NegConfiguracionGeneral.Obtener();
                if (ObjetoConfiguracion == null)
                {
                    ObjetoResultado.Mensaje          = ArchivoRecursos.ObtenerValorNodo(Constantes.MensajesUsuario.ErrorConfiguracionNoEncontrada.ToString());
                    ObjetoResultado.ResultadoGeneral = false;
                    return(ObjetoResultado);
                }
                EstadoInactivo = NegTablas.IdentificadorMaestro(ConfigBase.TablaEstado, ConfigBase.CodigoInactivo);
                if (EstadoInactivo == null)
                {
                    ObjetoResultado.Mensaje          = ArchivoRecursos.ObtenerValorNodo(Constantes.MensajesUsuario.ErrorCodigoInactivoNoEncontrado.ToString());
                    ObjetoResultado.ResultadoGeneral = false;
                    return(ObjetoResultado);
                }
                ObjetoUsuario.NombreUsuario = Entidad.NombreUsuario;
                ObjetoResultado             = NegUsuario.Buscar(ObjetoUsuario);
                if (ObjetoResultado.ResultadoGeneral)
                {
                    ObjetoUsuario = ObjetoResultado.Lista.FirstOrDefault();
                    //Usuario no Encontrado
                    if (ObjetoUsuario == null)
                    {
                        ObjetoResultado.ValorString = ConfigUsuario.ValidacionNoEncontrado;
                    }
                    //Usuario Inactivo
                    else if (ObjetoUsuario.Estado_Id == EstadoInactivo)
                    {
                        ObjetoResultado.ValorString = ConfigUsuario.ValidacionInactivo;
                    }
                    //Clave Incorrecta
                    else if (ObjetoUsuario.Clave != Seguridad.Encriptar(Entidad.Clave))
                    {
                        ObjetoResultado.ValorString = ConfigUsuario.ValidacionErrorClave; ObjetoResultado.Objeto = ObjetoUsuario;
                    }
                    // Cambio de Clave
                    else if (Funciones.DateDiff(DateInterval.Day, (DateTime)ObjetoUsuario.UltimoCambioClave, DateTime.Now) >= ObjetoConfiguracion.PlazoValidez)
                    {
                        ObjetoResultado.ValorString = ConfigUsuario.ValidacionCambioClave;
                        ObjetoResultado.Objeto      = ObjetoUsuario;
                    }
                    //Primer Inicio
                    else if (ObjetoUsuario.PrimerInicio == true)
                    {
                        ObjetoResultado.ValorString = ConfigUsuario.ValidacionPrimerInicio;
                        ObjetoResultado.Objeto      = ObjetoUsuario;
                    }
                    //Aviso Cambio Clave
                    else if (ObjetoConfiguracion.PlazoValidez - Funciones.DateDiff(DateInterval.Day, (DateTime)ObjetoUsuario.UltimoCambioClave, DateTime.Now) <= ObjetoConfiguracion.Notificacion)
                    {
                        ObjetoResultado.ValorString = ConfigUsuario.ValidacionAvisoCambioClave;
                        ObjetoResultado.ValorInt    = int.Parse((ObjetoConfiguracion.PlazoValidez - Funciones.DateDiff(DateInterval.Day, (DateTime)ObjetoUsuario.UltimoCambioClave, DateTime.Now)).ToString());
                        ObjetoResultado.Objeto      = ObjetoUsuario;
                    }
                    //Aprobado
                    else
                    {
                        ObjetoResultado.ValorString = ConfigUsuario.ValidacionAprobado;
                        ObjetoResultado.Objeto      = ObjetoUsuario;
                    }
                    ObjetoResultado.Objeto = ObjetoUsuario;
                }
                return(ObjetoResultado);
            }
            catch (Exception Ex)
            {
                ObjetoResultado.ResultadoGeneral = false;
                if (Constantes.ModoDebug == true)
                {
                    ObjetoResultado.Mensaje = Ex.Message;
                }
                else
                {
                    ObjetoResultado.Mensaje = ArchivoRecursos.ObtenerValorNodo(Constantes.MensajesUsuario.ErrorListar.ToString()) + " Usuario";
                }
                return(ObjetoResultado);
            }
        }