internal Outros ObterDadosPDF(int titulo, BancoDeDados banco = null) { Outros outros = new Outros(); List <PessoaPDF> pessoas = new List <PessoaPDF>(); using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia(banco)) { DadosPDF dados = DaEsp.ObterDadosTitulo(titulo, bancoDeDados); outros.Titulo = dados.Titulo; outros.Titulo.SetorEndereco = DaEsp.ObterEndSetor(outros.Titulo.SetorId); outros.Protocolo = dados.Protocolo; outros.Empreendimento = dados.Empreendimento; #region Pesssoas Comando comando = bancoDeDados.CriarComando(@"select ep.pessoa_tipo, nvl(p.nome, p.razao_social) nome_razao from {0}esp_out_con_tra_dominio e, {0}esp_out_con_tra_dom_pes ep, {0}tab_pessoa p where e.id = ep.especificidade and ep.pessoa = p.id and e.titulo = :titulo" , EsquemaBanco); comando.AdicionarParametroEntrada("titulo", titulo, DbType.Int32); using (IDataReader reader = bancoDeDados.ExecutarReader(comando)) { while (reader.Read()) { PessoaPDF pessoa = new PessoaPDF(); pessoa.Tipo = reader.GetValue <int>("pessoa_tipo"); pessoa.NomeRazaoSocial = reader.GetValue <string>("nome_razao"); pessoas.Add(pessoa); } reader.Close(); } outros.Destinatarios = pessoas.Where(x => x.Tipo == (int)ePessoaAssociacaoTipo.Destinatario).ToList(); outros.Interessados = pessoas.Where(x => x.Tipo == (int)ePessoaAssociacaoTipo.Interessado).ToList(); outros.ResponsaveisEmpreendimento = pessoas.Where(x => x.Tipo == (int)ePessoaAssociacaoTipo.Responsavel).ToList(); #endregion Pesssoas } return(outros); }
internal Termo ObterDadosPDF(int titulo, BancoDeDados banco = null) { Termo termo = new Termo(); termo.Dominialidade = new DominialidadePDF(); List <int> destinatarioIds = new List <int>(); PessoaPDF pessoa = null; using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia(banco)) { #region Título DadosPDF dados = DaEsp.ObterDadosTitulo(titulo, bancoDeDados); termo.Titulo = dados.Titulo; termo.Protocolo = dados.Protocolo; termo.Empreendimento = dados.Empreendimento; termo.Dominialidade = new DominialidadePDF(new DominialidadeBus().ObterPorEmpreendimento(dados.Empreendimento.Id.GetValueOrDefault())); #endregion #region Especificidade List <ReservaLegalPDF> reservas = new List <ReservaLegalPDF>(); termo.Dominialidade.Dominios.ForEach(dominio => { dominio.ReservasLegais.ForEach(r => { reservas.Add(r); }); }); #endregion #region Interessado Comando comando = bancoDeDados.CriarComando(@" select t.destinatario from {0}esp_termo_comp_pfarl_destinat t, {0}esp_termo_comp_pfarl e where t.especificidade = e.id and e.titulo = :titulo ", EsquemaBanco); comando.AdicionarParametroEntrada("titulo", titulo, DbType.Int32); destinatarioIds = bancoDeDados.ExecutarList <int>(comando); termo.Interessados = new List <PessoaPDF>(); foreach (int destId in destinatarioIds) { pessoa = _daEsp.ObterDadosPessoa(destId, dados.Empreendimento.Id, banco); pessoa.VinculoTipoTexto = pessoa.VinculoTipoTexto == "Outro" ? "Representante" : pessoa.VinculoTipoTexto; termo.Interessados.Add(pessoa); } #endregion #region ARLs comando = bancoDeDados.CriarComando(@"select r.identificacao, r.arl_croqui, null coordenadaN, null coordenadaE, r.situacao, r.situacao_vegetal from {0}crt_dominialidade_reserva r, {0}esp_termo_comp_pfarl e where e.titulo = :titulo and r.dominio in (select id from {0}crt_dominialidade_dominio where dominialidade = :dominialidade)" , EsquemaBanco); comando.AdicionarParametroEntrada("titulo", titulo, DbType.Int32); comando.AdicionarParametroEntrada("dominialidade", termo.Dominialidade.Id, DbType.Int32); using (IDataReader reader = bancoDeDados.ExecutarReader(comando)) { termo.RLFormacao = new List <AreaReservaLegalPDF>(); termo.RLPreservada = new List <AreaReservaLegalPDF>(); while (reader.Read()) { int situacaoVegetal = reader.GetValue <int>("situacao_vegetal"); int situacao = reader.GetValue <int>("situacao"); switch (situacaoVegetal) { case (int)eReservaLegalSituacaoVegetal.Preservada: if (situacao == (int)eReservaLegalSituacao.Proposta) { termo.RLPreservada.Add(new AreaReservaLegalPDF { AreaCroqui = Convert.ToDecimal(reader.GetValue <string>("arl_croqui")).ToStringTrunc(), CoordenadaE = reader.GetValue <string>("coordenadaE"), CoordenadaN = reader.GetValue <string>("coordenadaN"), Identificacao = reader.GetValue <string>("identificacao") }); } break; case (int)eReservaLegalSituacaoVegetal.EmRecuperacao: if (situacao == (int)eReservaLegalSituacao.Proposta) { termo.RLFormacao.Add(new AreaReservaLegalPDF { AreaCroqui = Convert.ToDecimal(reader.GetValue <string>("arl_croqui")).ToStringTrunc(), CoordenadaE = reader.GetValue <string>("coordenadaE"), CoordenadaN = reader.GetValue <string>("coordenadaN"), Identificacao = reader.GetValue <string>("identificacao") }); } break; } } reader.Close(); } termo.RLTotalPreservada = termo.RLPreservada.Sum(x => Convert.ToDecimal(x.AreaCroqui)).ToStringTrunc(); termo.RLTotalFormacao = termo.RLFormacao.Sum(x => Convert.ToDecimal(x.AreaCroqui)).ToStringTrunc(); #endregion #region ARLs - Coordenadas comando = bancoDeDados.CriarComando(@"select arl.codigo, c.empreendimento, c.id dominialidade, pr.id, trunc(arl_o.column_value, 2) coordenada from {0}crt_dominialidade c, {0}crt_projeto_geo pr, {0}crt_dominialidade_reserva cr, {1}geo_arl arl, table(geometria9i.pontoIdeal(arl.geometry).SDO_ORDINATES) arl_o where pr.empreendimento = c.empreendimento and c.id = :dominialidade and arl.codigo = :codigo and pr.caracterizacao = 1 and cr.identificacao = arl.codigo and cr.dominio in (select id from {0}crt_dominialidade_dominio dm where dm.dominialidade = c.id) and arl.projeto = pr.id" , EsquemaBanco, EsquemaBancoGeo); comando.AdicionarParametroEntrada("dominialidade", termo.Dominialidade.Id, DbType.Int32); comando.AdicionarParametroEntrada("codigo", DbType.String); foreach (var item in termo.RLFormacao) { comando.SetarValorParametro("codigo", item.Identificacao); using (IDataReader reader = bancoDeDados.ExecutarReader(comando)) { if (reader.Read()) { item.CoordenadaE = reader.GetValue <string>("coordenada"); } if (reader.Read()) { item.CoordenadaN = reader.GetValue <string>("coordenada"); } reader.Close(); } } foreach (var item in termo.RLPreservada) { comando.SetarValorParametro("codigo", item.Identificacao); using (IDataReader reader = bancoDeDados.ExecutarReader(comando)) { if (reader.Read()) { item.CoordenadaE = reader.GetValue <string>("coordenada"); } if (reader.Read()) { item.CoordenadaN = reader.GetValue <string>("coordenada"); } reader.Close(); } } #endregion } return(termo); }
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); }
internal Termo ObterDadosPDF(int titulo, BancoDeDados banco = null) { Termo termo = new Termo(); termo.Dominialidade = new DominialidadePDF(); List <int> destinatarioIds = new List <int>(); PessoaPDF pessoa = null; DateTime dataEmissao; using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia(banco)) { #region Título DadosPDF dados = DaEsp.ObterDadosTitulo(titulo, bancoDeDados); termo.Titulo = dados.Titulo; termo.Protocolo = dados.Protocolo; termo.Empreendimento = dados.Empreendimento; termo.Dominialidade = new DominialidadePDF(new DominialidadeBus().ObterPorEmpreendimento(dados.Empreendimento.Id.GetValueOrDefault())); #endregion #region Especificidade Comando comando = bancoDeDados.CriarComando(@"select e.data_emissao_titulo_anterior, e.numero_averbacao from {0}esp_termo_comp_pfarlr e where e.titulo = :titulo", EsquemaBanco); comando.AdicionarParametroEntrada("titulo", titulo, DbType.Int32); using (IDataReader reader = bancoDeDados.ExecutarReader(comando)) { if (reader.Read()) { dataEmissao = reader.GetValue <DateTime>("data_emissao_titulo_anterior"); termo.NumeroAverbacao = reader.GetValue <string>("numero_averbacao"); GerenciadorConfiguracao _config = new GerenciadorConfiguracao(new ConfiguracaoSistema()); termo.Titulo.TituloAnteriorMesEmissao = _config.Obter <List <String> >(ConfiguracaoSistema.KeyMeses).ElementAt(dataEmissao.Month - 1); termo.Titulo.TituloAnteriorDiaEmissao = dataEmissao.Day.ToString(); termo.Titulo.TituloAnteriorAnoEmissao = dataEmissao.Year.ToString(); } reader.Close(); } #endregion #region Informacões do cartorio comando = bancoDeDados.CriarComando(@"select stragg(distinct ' nº ' || b.numero_cartorio || ', folha(s) ' || b.numero_folha || ' do livro nº ' || b.numero_livro || ', no ' || b.nome_cartorio) cartorio from {0}esp_termo_comp_pfarlr a, {0}crt_dominialidade_reserva b, {0}tab_titulo t where b.dominio in (select id from {0}crt_dominialidade_dominio where dominialidade = (select id from {0}crt_dominialidade where empreendimento = t.empreendimento and t.id = a.titulo)) and a.titulo = :titulo and t.id = a.titulo" , EsquemaBanco); comando.AdicionarParametroEntrada("titulo", titulo, DbType.Int32); termo.InformacoesRegistro = bancoDeDados.ExecutarScalar <string>(comando); #endregion #region Interessado comando = bancoDeDados.CriarComando(@" select t.destinatario from {0}esp_termo_comp_pfarlr_destina t, {0}esp_termo_comp_pfarlr e where t.especificidade = e.id and e.titulo = :titulo ", EsquemaBanco); comando.AdicionarParametroEntrada("titulo", titulo, DbType.Int32); destinatarioIds = bancoDeDados.ExecutarList <int>(comando); termo.Interessados = new List <PessoaPDF>(); foreach (int destId in destinatarioIds) { pessoa = _daEsp.ObterDadosPessoa(destId, dados.Empreendimento.Id, banco); pessoa.VinculoTipoTexto = pessoa.VinculoTipoTexto == "Outro" ? "Representante" : pessoa.VinculoTipoTexto; termo.Interessados.Add(pessoa); } #endregion #region ARLs comando = bancoDeDados.CriarComando(@"select r.identificacao, r.arl_croqui, null coordenadaN, null coordenadaE, r.situacao_vegetal from {0}crt_dominialidade_reserva r, {0}esp_termo_comp_pfarlr e where e.titulo = :titulo and r.dominio in (select id from {0}crt_dominialidade_dominio where dominialidade = :dominialidade)" , EsquemaBanco); comando.AdicionarParametroEntrada("titulo", titulo, DbType.Int32); comando.AdicionarParametroEntrada("dominialidade", termo.Dominialidade.Id, DbType.Int32); AreaReservaLegalPDF areaARLPdf = null; using (IDataReader reader = bancoDeDados.ExecutarReader(comando)) { termo.RLFormacao = new List <AreaReservaLegalPDF>(); termo.RLPreservada = new List <AreaReservaLegalPDF>(); while (reader.Read()) { areaARLPdf = new AreaReservaLegalPDF() { Tipo = reader.GetValue <int>("situacao_vegetal"), AreaCroqui = Convert.ToDecimal(reader.GetValue <string>("arl_croqui")).ToStringTrunc(), CoordenadaE = reader.GetValue <string>("coordenadaE"), CoordenadaN = reader.GetValue <string>("coordenadaN"), Identificacao = reader.GetValue <string>("identificacao") }; if (areaARLPdf.Tipo == (int)eReservaLegalSituacaoVegetal.Preservada) { termo.RLPreservada.Add(areaARLPdf); } else if (areaARLPdf.Tipo == (int)eReservaLegalSituacaoVegetal.EmRecuperacao) { termo.RLFormacao.Add(areaARLPdf); } } reader.Close(); } termo.RLTotalPreservada = termo.RLPreservada.Sum(x => Convert.ToDecimal(x.AreaCroqui)).ToStringTrunc(); termo.RLTotalFormacao = termo.RLFormacao.Sum(x => Convert.ToDecimal(x.AreaCroqui)).ToStringTrunc(); #endregion #region ARLs - Coordenadas comando = bancoDeDados.CriarComando(@"select arl.codigo, c.empreendimento, c.id dominialidade, pr.id, trunc(arl_o.column_value, 2) coordenada from {0}crt_dominialidade c, {0}crt_projeto_geo pr, {0}crt_dominialidade_reserva cr, {1}geo_arl arl, table(geometria9i.pontoIdeal(arl.geometry).SDO_ORDINATES) arl_o where c.id = :dominialidade and pr.empreendimento = c.empreendimento and arl.codigo = :codigo and pr.caracterizacao = 1 and cr.dominio in (select id from {0}crt_dominialidade_dominio where dominialidade = c.id) and cr.identificacao = arl.codigo and arl.projeto = pr.id" , EsquemaBanco, EsquemaBancoGeo); comando.AdicionarParametroEntrada("dominialidade", termo.Dominialidade.Id, DbType.Int32); comando.AdicionarParametroEntrada("codigo", DbType.String); foreach (var item in termo.RLFormacao) { comando.SetarValorParametro("codigo", item.Identificacao); using (IDataReader reader = bancoDeDados.ExecutarReader(comando)) { if (reader.Read()) { item.CoordenadaE = reader.GetValue <string>("coordenada"); } if (reader.Read()) { item.CoordenadaN = reader.GetValue <string>("coordenada"); } reader.Close(); } } foreach (var item in termo.RLPreservada) { comando.SetarValorParametro("codigo", item.Identificacao); using (IDataReader reader = bancoDeDados.ExecutarReader(comando)) { if (reader.Read()) { item.CoordenadaE = reader.GetValue <string>("coordenada"); } if (reader.Read()) { item.CoordenadaN = reader.GetValue <string>("coordenada"); } reader.Close(); } } #endregion } return(termo); }