コード例 #1
0
        public bool CopiarDadosInstitucional(int empreendimentoID, int empreendimentoInternoID, BancoDeDados banco)
        {
            if (banco == null)
            {
                return(false);
            }

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

            #region Configurar Caracterização

            DominialidadeInternoBus dominialidadeInternoBus = new DominialidadeInternoBus();
            Dominialidade           caracterizacao          = dominialidadeInternoBus.ObterPorEmpreendimento(empreendimentoInternoID);

            caracterizacao.EmpreendimentoId = empreendimentoID;
            caracterizacao.InternoID        = caracterizacao.Id;
            caracterizacao.InternoTID       = caracterizacao.Tid;
            caracterizacao.Areas.ForEach(r => { r.Id = 0; });
            caracterizacao.Dominios.ForEach(r => { r.Id = 0; });
            caracterizacao.Dominios.SelectMany(x => x.ReservasLegais).ToList().ForEach(r => { r.Id = 0; });

            #endregion

            if (_validar.CopiarDadosInstitucional(caracterizacao))
            {
                using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia(banco, EsquemaCredenciadoBanco))
                {
                    bancoDeDados.IniciarTransacao();

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

                    _da.CopiarDadosInstitucional(caracterizacao, bancoDeDados);

                    #region Dependencias

                    //Gerencia as dependências da caracterização
                    caracterizacao.Dependencias = _busCaracterizacao.ObterDependenciasAtual(empreendimentoID, eCaracterizacao.Dominialidade, eCaracterizacaoDependenciaTipo.Caracterizacao);
                    _busCaracterizacao.Dependencias(new Caracterizacao()
                    {
                        Id             = caracterizacao.Id,
                        Tipo           = eCaracterizacao.Dominialidade,
                        DependenteTipo = eCaracterizacaoDependenciaTipo.Caracterizacao,
                        Dependencias   = caracterizacao.Dependencias
                    }, bancoDeDados);

                    #endregion

                    bancoDeDados.Commit();
                }
            }

            return(Validacao.EhValido);
        }
コード例 #2
0
 public DominialidadeBus(DominialidadeValidar validar)
 {
     _validar = validar;
 }