internal void TelefonePreenchido(ContatoModeloNegocio contato)
 {
     if (string.IsNullOrEmpty(contato.Telefone))
     {
         throw new OrganogramaRequisicaoInvalidaException("Telefone não preenchido.");
     }
 }
 internal void TipoContatoPreenchido(ContatoModeloNegocio contato)
 {
     if (contato.TipoContato.Id <= 0)
     {
         throw new OrganogramaRequisicaoInvalidaException("Tipo do Contato não informado.");
     }
 }
 internal void NaoEncontrado(ContatoModeloNegocio contato)
 {
     if (repositorioContatos.Where(c => c.Id == contato.Id).SingleOrDefault() == null)
     {
         throw new OrganogramaNaoEncontradoException("Contato não encontrado");
     }
 }
 internal void Valido(ContatoModeloNegocio contato)
 {
     if (contato != null)
     {
         TipoContatoExiste(contato);
         TelefoneValido(contato);
     }
 }
 internal void Preenchido(ContatoModeloNegocio contato)
 {
     if (contato != null)
     {
         TelefonePreenchido(contato);
         TipoContatoPreenchido(contato);
     }
 }
        internal void TipoContatoExiste(ContatoModeloNegocio contato)
        {
            TipoContato tipoContato = repositorioTiposContato.Where(t => t.Id == contato.TipoContato.Id).SingleOrDefault();

            if (tipoContato == null)
            {
                throw new OrganogramaRequisicaoInvalidaException("Tipo do Contato não existe.");
            }
        }
        private void NumeroDigitosValido(ContatoModeloNegocio contato)
        {
            TipoContato tipoContato = repositorioTiposContato.Where(t => t.Id == contato.TipoContato.Id).Single();

            if (contato.Telefone.Length != tipoContato.QuantidadeDigitos)
            {
                throw new OrganogramaRequisicaoInvalidaException("Telefone do tipo " + tipoContato.Descricao + " devem possuir " + tipoContato.QuantidadeDigitos + " dígitos.");
            }
        }
 private void ApenasNumeros(ContatoModeloNegocio contato)
 {
     try
     {
         long.Parse(contato.Telefone);
     }
     catch (Exception)
     {
         throw new OrganogramaRequisicaoInvalidaException("O Telefone deve possuir apenas números.");
     }
 }
 private void TelefoneValido(ContatoModeloNegocio contato)
 {
     ApenasNumeros(contato);
     NumeroDigitosValido(contato);
 }