Esempio n. 1
0
        private void ValidarString(Usuario user, PropertyInfo prop, List <ErrorField> errors, byte minCaracteres = 3, byte maxCaracteres = 20)
        {
            string valorCampo = user.GetType().GetProperty(prop.Name).GetValue(user) as string;

            if (valorCampo.IsNullOrWhiteSpace())
            {
                errors.Add(new ErrorField(fieldName: prop.Name,
                                          message: MensagensPadrao.CampoNuloMessage(prop.Name)));
                return;
            }
            else if (valorCampo.Length < minCaracteres)
            {
                errors.Add(new ErrorField(fieldName: prop.Name,
                                          message: MensagensPadrao.MinCharsMessage(prop.Name, minCaracteres)));
                return;
            }
            else if (valorCampo.Length > maxCaracteres)
            {
                errors.Add(new ErrorField(fieldName: prop.Name,
                                          message: MensagensPadrao.MaxCharsMessage(prop.Name, maxCaracteres)));
                return;
            }
            string formatado = Utilities.FormatarNome(valorCampo);

            prop.SetValue(user, formatado);
        }
Esempio n. 2
0
        private void ValidarSenha(Usuario item, List <ErrorField> errors, string senhaRepetida, byte minCaracteres = 5, byte maxCaracteres = 12)
        {
            if (item.Senha.IsNullOrWhiteSpace())
            {
                errors.Add(new ErrorField(fieldName: nameof(item.Senha),
                                          message: MensagensPadrao.CampoNuloMessage(nameof(item.Senha))));
                return;
            }
            else if (item.Senha.Length < minCaracteres)
            {
                errors.Add(new ErrorField(fieldName: nameof(item.Senha),
                                          message: MensagensPadrao.MinCharsMessage(nameof(item.Senha), minCaracteres)));
            }
            else if (item.Senha.Length > maxCaracteres)
            {
                errors.Add(new ErrorField(fieldName: nameof(item.Senha),
                                          message: MensagensPadrao.MaxCharsMessage(nameof(item.Senha), maxCaracteres)));
            }

            if (item.Senha != senhaRepetida)
            {
                errors.Add(new ErrorField(fieldName: "SenhasDiferentes",
                                          message: "Senhas digitadas não batem"));
                return;
            }
        }
Esempio n. 3
0
 private void ValidarEmail(Usuario item, List <ErrorField> errors)
 {
     if (item.Email.IsNullOrWhiteSpace())
     {
         errors.Add(new ErrorField(fieldName: nameof(item.Email),
                                   message: MensagensPadrao.CampoNuloMessage(nameof(item.Email))));
     }
     else if (!Utilities.IsEmailValido(item.Email))
     {
         errors.Add(new ErrorField(fieldName: nameof(item.Email),
                                   message: MensagensPadrao.EmailInvalidoMessage()));
     }
     else if (EmailJaExiste(item, errors))
     {
         errors.Add(new ErrorField(fieldName: nameof(item.Email),
                                   message: MensagensPadrao.EmailExistenteMessage()));
     }
 }
Esempio n. 4
0
        private void ValidarGenero(Usuario item, List <ErrorField> errors)
        {
            int  valueDaCmb = (int)item.Genero;
            bool valid      = false;

            Genero[] generos = (Genero[])Enum.GetValues(typeof(Genero));
            foreach (Genero g in generos)
            {
                valid = valueDaCmb == (int)g;
                if (valid)
                {
                    break;
                }
            }
            if (!valid)
            {
                errors.Add(new ErrorField(nameof(item.Genero), MensagensPadrao.EnumInvalidoMessage("Gênero")));
            }
        }
Esempio n. 5
0
        public BLLResponse <Usuario> IsLoginValido(Usuario item)
        {
            BLLResponse <Usuario> response = new BLLResponse <Usuario>();

            response.Erros = new List <ErrorField>();

            using (LTContext ctx = new LTContext())
            {
                Usuario userDoBanco = ctx.Usuarios.FirstOrDefault(u => u.Email == item.Email);
                if (userDoBanco == null)
                {
                    response.Erros.Add(new ErrorField(fieldName: nameof(userDoBanco.Email),
                                                      message: MensagensPadrao.UserOuSenhaInvalidosMessage()));
                    return(response);
                }
                response.Sucesso = Criptografia.Verificar(item.Senha, userDoBanco.Salt, userDoBanco.Hash);
                if (response.Sucesso)
                {
                    response.Data = userDoBanco;
                }
            }
            return(response);
        }
Esempio n. 6
0
        private void ValidarIdade(Usuario user, List <ErrorField> errors, byte idadeMinima = 18, byte idadeMaxima = 80)
        {
            if (user.DataNascimento == DateTime.MinValue)
            {
                errors.Add(new ErrorField(fieldName: nameof(user.DataNascimento),
                                          message: MensagensPadrao.CampoNuloMessage("Data de nascimento")));
                return;
            }

            bool ehMenorIdade  = (DateTime.Now - user.DataNascimento).TotalDays / 365 <= idadeMinima;
            bool idadeExcedida = (DateTime.Now - user.DataNascimento).TotalDays / 365 > idadeMaxima;

            if (ehMenorIdade)
            {
                errors.Add(new ErrorField(fieldName: nameof(user.DataNascimento),
                                          message: MensagensPadrao.IdadeMinimaMessage(idadeMinima)));
            }
            else if (idadeExcedida)
            {
                errors.Add(new ErrorField(fieldName: nameof(user.DataNascimento),
                                          message: MensagensPadrao.IdadeExcedidaMessage(idadeMaxima)));
            }
        }