public bool CopiarDadosCredenciado(Dependencia dependencia, int empreendimentoInternoId, BancoDeDados banco, BancoDeDados bancoCredenciado)
        {
            if (banco == null)
            {
                return(false);
            }

            if (_validar == null)
            {
                _validar = new BarragemDispensaLicencaValidar();
            }

            #region Configurar Caracterização

            BarragemDispensaLicencaCredBus.BarragemDispensaLicencaBus credenciadoBus = new BarragemDispensaLicencaCredBus.BarragemDispensaLicencaBus();
            BarragemDispensaLicenca caracterizacao = credenciadoBus.ObterHistorico(dependencia.DependenciaId, dependencia.DependenciaTid);

            caracterizacao.EmpreendimentoID = empreendimentoInternoId;
            caracterizacao.CredenciadoID    = caracterizacao.Id;
            caracterizacao.Id  = 0;
            caracterizacao.Tid = string.Empty;

            #endregion

            if (_validar.CopiarDadosCredenciado(caracterizacao))
            {
                GerenciadorTransacao.ObterIDAtual();

                using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia(banco))
                {
                    bancoDeDados.IniciarTransacao();

                    //Setar ID
                    caracterizacao.Id = ObterPorEmpreendimento(empreendimentoInternoId, simplificado: true, banco: bancoDeDados).Id;

                    _da.CopiarDadosCredenciado(caracterizacao, bancoDeDados);

                    credenciadoBus.AtualizarInternoIdTid(caracterizacao.CredenciadoID, caracterizacao.Id, GerenciadorTransacao.ObterIDAtual(), bancoCredenciado);

                    bancoDeDados.Commit();
                }
            }

            return(Validacao.EhValido);
        }
 public BarragemDispensaLicencaBus(BarragemDispensaLicencaValidar validar)
 {
     _validar = validar;
 }