Esempio n. 1
0
        public object ObterDadosPdf(IEspecificidade especificidade, BancoDeDados banco)
        {
            try
            {
                CertidaoDispensaLicenciamentoAmbientalPDF certidao = _da.ObterDadosPDF(especificidade.Titulo.Id, banco);
                DataEmissaoPorExtenso(certidao.Titulo);

                if (!string.IsNullOrEmpty(certidao.VinculoPropriedadeOutro))
                {
                    certidao.VinculoPropriedade = certidao.VinculoPropriedadeOutro;
                }

                certidao.Caracterizacao = new BarragemDispensaLicencaPDF(new BarragemDispensaLicencaBus().ObterPorEmpreendimento(especificidade.Titulo.EmpreendimentoId.GetValueOrDefault()));

                GerenciadorConfiguracao <ConfiguracaoCaracterizacao> configCaracterizacao = new GerenciadorConfiguracao <ConfiguracaoCaracterizacao>(new ConfiguracaoCaracterizacao());
                List <Lista> finalidades = configCaracterizacao.Obter <List <Lista> >(ConfiguracaoCaracterizacao.KeyBarragemDispensaLicencaFinalidadeAtividade);

                certidao.Caracterizacao.CampoNome  = "Finalidade";
                certidao.Caracterizacao.CampoValor = Mensagem.Concatenar(finalidades.Where(x => (int.Parse(x.Codigo) & certidao.Caracterizacao.FinalidadeAtividade) != 0).Select(x => x.Texto).ToList());

                return(certidao);
            }
            catch (Exception exc)
            {
                Validacao.AddErro(exc);
            }

            return(null);
        }
        internal CertidaoDispensaLicenciamentoAmbientalPDF ObterDadosPDF(int titulo, BancoDeDados banco = null)
        {
            CertidaoDispensaLicenciamentoAmbientalPDF certidao = new CertidaoDispensaLicenciamentoAmbientalPDF();

            using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia(banco))
            {
                #region Dados do Titulo

                DadosPDF dados = DaEsp.ObterDadosTitulo(titulo, bancoDeDados);
                certidao.Titulo         = dados.Titulo;
                certidao.Empreendimento = dados.Empreendimento;

                #endregion

                #region Dados da Especificidade

                Comando comando = bancoDeDados.CriarComando(@"select l.texto vinculo_propriedade, vinculo_propriedade_outro 
				from esp_cert_disp_amb e, tab_titulo t, lov_esp_cert_disp_amb l where t.id = e.titulo and l.id  = e.vinculo_propriedade and e.titulo = :id"                , EsquemaBanco);

                comando.AdicionarParametroEntrada("id", titulo, DbType.Int32);

                using (IDataReader reader = bancoDeDados.ExecutarReader(comando))
                {
                    if (reader.Read())
                    {
                        certidao.VinculoPropriedade      = reader.GetValue <string>("vinculo_propriedade");
                        certidao.VinculoPropriedadeOutro = reader.GetValue <string>("vinculo_propriedade_outro");
                    }

                    reader.Close();
                }

                #endregion
            }

            using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia(UsuarioCredenciado))
            {
                #region Dados da Especificidade

                Comando comando = bancoDeDados.CriarComando(@"select nvl(p.nome, p.razao_social) nome, nvl(p.cpf, p.cnpj) cpf 
				from tab_requerimento r, tab_pessoa p where p.id = r.interessado and r.id = :requerimento"                , UsuarioCredenciado);

                comando.AdicionarParametroEntrada("requerimento", certidao.Titulo.Requerimento.Numero, DbType.Int32);

                using (IDataReader reader = bancoDeDados.ExecutarReader(comando))
                {
                    if (reader.Read())
                    {
                        certidao.Interessado.NomeRazaoSocial = reader.GetValue <string>("nome");
                        certidao.Interessado.CPFCNPJ         = reader.GetValue <string>("cpf");
                    }

                    reader.Close();
                }

                #endregion

                #region Pesssoas

                List <PessoaPDF> pessoas = new List <PessoaPDF>();

                comando = bancoDeDados.CriarComando(@"select nvl(p.nome, p.razao_social) nome_razao, 'Interessado' vinculo_tipo 
				from tab_requerimento r, tab_pessoa p where p.id = r.interessado and r.id = :requerimento
				union all 
				select nvl(p.nome, p.razao_social) nome_razao, 'Responsável Técnico' vinculo_tipo 
				from tab_requerimento_responsavel r, tab_pessoa p where p.id = r.responsavel and r.requerimento = :requerimento"                , EsquemaBanco);

                comando.AdicionarParametroEntrada("requerimento", certidao.Titulo.Requerimento.Numero, DbType.Int32);

                using (IDataReader reader = bancoDeDados.ExecutarReader(comando))
                {
                    PessoaPDF pessoa = null;

                    while (reader.Read())
                    {
                        pessoa = new PessoaPDF();
                        pessoa.VinculoTipoTexto = reader.GetValue <string>("vinculo_tipo");
                        pessoa.NomeRazaoSocial  = reader.GetValue <string>("nome_razao");
                        pessoas.Add(pessoa);
                    }

                    reader.Close();
                }

                pessoas.ForEach(item =>
                {
                    certidao.Titulo.AssinanteSource.Add(new AssinanteDefault {
                        Cargo = item.VinculoTipoTexto, Nome = item.NomeRazaoSocial
                    });
                });

                #endregion Pesssoas
            }

            return(certidao);
        }