Пример #1
0
        public Models.TbLogin AlterarFuncionario(int idFunc, Models.TbLogin tb)
        {
            Models.TbLogin login = db.ConsultarID(idFunc);
            if (login == null)
            {
                throw new ArgumentException("Funcionario não encontrado");
            }

            if (string.IsNullOrEmpty(tb.DsEmail))
            {
                throw new ArgumentException("Email está vazio");
            }
            Console.WriteLine("Validar email");

            if (new Database.ClienteDatabase().ConsultarTodos().FirstOrDefault(x => x.IdLoginNavigation.DsEmail == tb.DsEmail) != null)
            {
                throw new ArgumentException("Email já existe. Tente outro");
            }
            Console.WriteLine("Termino de Validar email");

            if (string.IsNullOrEmpty(tb.DsSenha))
            {
                throw new ArgumentException("Senha está vazio");
            }

            if (!(tb.DsEmail.ToLower().Contains(".com")))
            {
                throw new ArgumentException("Email inválido");
            }

            if (!(tb.DsEmail.ToLower().Contains("@gmail") ||
                  tb.DsEmail.ToLower().Contains("@outlook") ||
                  tb.DsEmail.ToLower().Contains("@hotmail")))
            {
                throw new ArgumentException("Email inválido");
            }

            Func <string, bool> senhaForte = OutrasValidacoes.SenhaForte();

            if (!(senhaForte(tb.DsSenha) && tb.DsSenha.Length >= 8))
            {
                throw new ArgumentException("Senha fraca. Tente outra senha");
            }

            return(db.AlterarFuncionario(login, tb));
        }