/// <summary> /// Método que valida la clave del Usuario /// </summary> /// <param name="Clave">Clave a Validar</param> /// <returns>Resultado de la validacion</returns> public static bool ValidarClave(string Clave) { var ObjetoConfiguracion = NegConfiguracionGeneral.Obtener(); int Numeros = 0; int x = 0; Clave.ToArray(); for (x = 0; x <= Clave.Length - 1; x++) { if (char.IsNumber(Clave[x])) { Numeros++; } } if (Numeros == 0) { return(false); } else if (Numeros == Clave.Length) { return(false); } else if (Clave.Length < ObjetoConfiguracion.TamanioClave) { return(false); } else { return(true); } }
/// <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); } }