Exemple #1
0
        public override IConfiguradorPdf ObterConfiguradorPdf(IEspecificidade especificidade)
        {
            ConfiguracaoDefault conf = new ConfiguracaoDefault();

            conf.AddLoadAcao((doc, dataSource) =>
            {
                Autorizacao autorizacao  = dataSource as Autorizacao;
                List <Table> itenRemover = new List <Table>();
                conf.CabecalhoRodape     = CabecalhoRodapeFactory.Criar(especificidade.Titulo.SetorId);

                if (autorizacao.ExploracaoFlorestal.Count <= 0)
                {
                    itenRemover.Add(doc.LastTable("«TableStart:ExploracaoFlorestal»"));
                }

                if (autorizacao.Anexos.Count <= 0)
                {
                    doc.FindTable("«TableStart:Anexos»").RemovePageBreakAnterior();
                    itenRemover.Add(doc.FindTable("«TableStart:Anexos»"));
                }

                AsposeExtensoes.RemoveTables(itenRemover);
            });

            return(conf);
        }
Exemple #2
0
        public override IConfiguradorPdf ObterConfiguradorPdf(IEspecificidade especificidade)
        {
            ConfiguracaoDefault conf = new ConfiguracaoDefault();

            conf.CabecalhoRodape = CabecalhoRodapeFactory.Criar(especificidade.Titulo.SetorId);
            return(conf);
        }
Exemple #3
0
        public override IConfiguradorPdf ObterConfiguradorPdf(IEspecificidade especificidade)
        {
            ConfiguracaoDefault conf = new ConfiguracaoDefault();

            conf.AddLoadAcao((doc, dataSource) =>
            {
                Termo termo          = dataSource as Termo;
                conf.CabecalhoRodape = CabecalhoRodapeFactory.Criar(especificidade.Titulo.SetorId);

                if (termo.Dominialidade.Matricula.Count <= 0)
                {
                    doc.Last <Row>("«TableStart:Dominialidade.Matricula»").Remove();
                }

                if (termo.Dominialidade.Posse.Count <= 0)
                {
                    doc.Last <Row>("«TableStart:Dominialidade.Posse»").Remove();
                }

                if (termo.RLFormacao.Count == 0)
                {
                    doc.Last <Row>("«RLTotalFormacao»").Remove();
                }

                if (termo.RLPreservada.Count == 0)
                {
                    doc.Last <Row>("«RLTotalPreservada»").Remove();
                }
            });

            return(conf);
        }
        public override IConfiguradorPdf ObterConfiguradorPdf(IEspecificidade especificidade)
        {
            ConfiguracaoDefault conf = new ConfiguracaoDefault();

            conf.CabecalhoRodape = CabecalhoRodapeFactory.Criar(especificidade.Titulo.SetorId);

            conf.CabecalhoRodape.LogoOrgao  = AsposeImage.RedimensionarImagem(conf.CabecalhoRodape.LogoOrgao, 2.6f);
            conf.CabecalhoRodape.LogoEstado = AsposeImage.RedimensionarImagem(conf.CabecalhoRodape.LogoEstado, 2.3f);

            return(conf);
        }
        public override IConfiguradorPdf ObterConfiguradorPdf(IEspecificidade especificidade)
        {
            ConfiguracaoDefault conf = new ConfiguracaoDefault();

            conf.AddLoadAcao((doc, dataSource) =>
            {
                Outros outros        = dataSource as Outros;
                conf.CabecalhoRodape = CabecalhoRodapeFactory.Criar(especificidade.Titulo.SetorId);
            });

            return(conf);
        }
        public override IConfiguradorPdf ObterConfiguradorPdf(IEspecificidade especificidade)
        {
            ConfiguracaoDefault conf = new ConfiguracaoDefault();

            conf.AddLoadAcao((doc, dataSource) =>
            {
                Outros outros            = dataSource as Outros;
                List <Table> itenRemover = new List <Table>();
                conf.CabecalhoRodape     = CabecalhoRodapeFactory.Criar(0, isBrasao: true, isLogo: true);

                (conf.CabecalhoRodape as CabecalhoRodapeDefault).CabecalhoTituloNumero = outros.Titulo.Numero;

                if (!outros.IsInalienabilidade)
                {
                    itenRemover.Add(doc.LastTable("Artigo 28, parágrafos 1º e 2º da Lei nº 9.769"));
                }

                foreach (var item in outros.Destinatarios)
                {
                    if (!string.IsNullOrEmpty(item.ConjugeNomePai) && !string.IsNullOrEmpty(item.ConjugeNomeMae))
                    {
                        item.ConjugeNomePaiMae = item.ConjugeNomePai + " e " + item.ConjugeNomeMae;
                    }
                    else if (!string.IsNullOrEmpty(item.ConjugeNomePai))
                    {
                        item.ConjugeNomePaiMae = item.ConjugeNomePai;
                    }
                    else if (!string.IsNullOrEmpty(item.ConjugeNomeMae))
                    {
                        item.ConjugeNomePaiMae = item.ConjugeNomeMae;
                    }

                    if (!string.IsNullOrEmpty(item.NomePai) && !string.IsNullOrEmpty(item.NomeMae))
                    {
                        item.NomePaiMae = item.NomePai + " e " + item.NomeMae;
                    }
                    else if (!string.IsNullOrEmpty(item.NomePai))
                    {
                        item.NomePaiMae = item.NomePai;
                    }
                    else if (!string.IsNullOrEmpty(item.NomeMae))
                    {
                        item.NomePaiMae = item.NomeMae;
                    }
                }

                AsposeExtensoes.RemoveTables(itenRemover);
            });

            return(conf);
        }
Exemple #7
0
        public override IConfiguradorPdf ObterConfiguradorPdf(IEspecificidade especificidade)
        {
            ConfiguracaoDefault conf = new ConfiguracaoDefault();

            conf.AddLoadAcao((doc, dataSource) =>
            {
                List <Table> itenRemover = new List <Table>();
                conf.CabecalhoRodape     = CabecalhoRodapeFactory.Criar(especificidade.Titulo.SetorId);

                AsposeExtensoes.RemoveTables(itenRemover);
            });

            return(conf);
        }
        public Arquivo.Arquivo Executar(int id, int tipo, int setor, List <Termo> termos)
        {
            try
            {
                Relatorio relatorio = Obter(id, false);

                if (!ValidarExecutar(id, tipo, setor, termos, relatorio))
                {
                    return(null);
                }

                if (termos != null)
                {
                    foreach (var termo in termos)
                    {
                        relatorio.ConfiguracaoRelatorio.Termos.Single(p => p.Ordem == termo.Ordem).Valor = termo.Valor;
                    }
                }

                Executor       executor = new Executor();
                DadosRelatorio dados    = executor.Executar(relatorio.ConfiguracaoRelatorio);

                //Fica a criterio da analise como montar esse dados para de pois criar uma logica
                dados.ConfiguracaoDocumentoPDF = new ConfiguracaoDocumentoPDF(
                    "~/Content/_imgLogo/logomarca.png", "~/Content/_imgLogo/logomarca_simlam_pb.png",
                    HttpContext.Current.Server.MapPath(@"~/Content/_pdfAspose/Relatorio.doc"),
                    HttpContext.Current.Server.MapPath(@"~/Content/_pdfAspose/RelatorioPaisagem.doc"));
                dados.ConfiguracaoDocumentoPDF.OrientacaoRetrato = relatorio.ConfiguracaoRelatorio.OrientacaoRetrato;
                dados.ConfiguracaoDocumentoPDF.CabecalhoRodape   = CabecalhoRodapeFactory.Criar(setor);

                dados.Operadores = ObterOperadores(null);
                dados.Filtros    = relatorio.ConfiguracaoRelatorio.Termos;

                IExportador exportador = ExportadorFactory.Criar(tipo);
                if (!Validacao.EhValido)
                {
                    return(null);
                }

                Arquivo.Arquivo arquivo;
                exportador.Exportar(dados, out arquivo);
                return(arquivo);
            }
            catch (Exception exc)
            {
                Validacao.AddErro(exc);
            }

            return(null);
        }
        public override IConfiguradorPdf ObterConfiguradorPdf(IEspecificidade especificidade)
        {
            ConfiguracaoDefault conf = new ConfiguracaoDefault();

            conf.AddLoadAcao((doc, dataSource) =>
            {
                Laudo laudo = dataSource as Laudo;
                List <Table> itenRemover = new List <Table>();
                conf.CabecalhoRodape     = CabecalhoRodapeFactory.Criar(especificidade.Titulo.SetorId);

                if (laudo.Anexos.Count <= 0)
                {
                    doc.FindTable("«TableStart:Anexos»").RemovePageBreakAnterior();
                    itenRemover.Add(doc.FindTable("«TableStart:Anexos»"));
                }

                if (laudo.AnaliseItens.Count <= 0)
                {
                    itenRemover.Add(doc.LastTable("RESULTADO DA ANÁLISE"));
                }
                else
                {
                    itenRemover.Add(doc.LastTable("Não realizada"));
                }


                if (String.IsNullOrWhiteSpace(laudo.Responsavel.NomeRazaoSocial))
                {
                    itenRemover.Add(doc.LastTable("«Responsavel.NomeRazaoSocial»"));
                }
                else
                {
                    itenRemover.Add(doc.LastTable("Não possui responsável técnico"));
                }

                if (String.IsNullOrEmpty(laudo.Restricao))
                {
                    itenRemover.Add(doc.LastTable("«Restricao»"));
                }

                if (String.IsNullOrWhiteSpace(laudo.Observacao))
                {
                    itenRemover.Add(doc.LastTable("«Observacao»"));
                }

                AsposeExtensoes.RemoveTables(itenRemover);
            });

            return(conf);
        }
        public override IConfiguradorPdf ObterConfiguradorPdf(IEspecificidade especificidade)
        {
            ConfiguracaoDefault conf = new ConfiguracaoDefault();

            conf.AddLoadAcao((doc, dataSource) =>
            {
                Licenca Licenca          = dataSource as Licenca;
                List <Table> itenRemover = new List <Table>();
                conf.CabecalhoRodape     = CabecalhoRodapeFactory.Criar(especificidade.Titulo.SetorId);

                if (!Licenca.Caracterizacao.ExibirCampo)
                {
                    itenRemover.Add(doc.Last <Table>("«CARACTERIZACAO.CAMPO.NOME»"));
                }

                if (!Licenca.Caracterizacao.ExibirCampos1 || !Licenca.Caracterizacao.ExibirCampos2)
                {
                    doc.Last <Row>("«TableStart:Caracterizacao.Campos1»").Remove();
                }

                if (especificidade.Atividades.Exists(x => x.Id == AtividadeIdSilvicultura || x.Id == AtividadeIdPulverizacao))
                {
                    itenRemover.Add(doc.FindTable("COORDENADA DA ATIVIDADE"));

                    if (doc.FindTable("«TableStart:Caracterizacao.Campos1»") != null)
                    {
                        itenRemover.Add(doc.FindTable("«TableStart:Caracterizacao.Campos1»"));
                    }

                    if (doc.FindTable("«CARACTERIZACAO.CAMPO.NOME»") != null)
                    {
                        itenRemover.Add(doc.FindTable("«CARACTERIZACAO.CAMPO.NOME»"));
                    }
                }
                else
                {
                    itenRemover.Add(doc.FindTable("«Caracterizacao.Cultura.AreaTotalHa»"));
                }

                AsposeExtensoes.RemoveTables(itenRemover);
            });

            return(conf);
        }
Exemple #11
0
        public override IConfiguradorPdf ObterConfiguradorPdf(IEspecificidade especificidade)
        {
            ConfiguracaoDefault conf = new ConfiguracaoDefault();

            conf.AddLoadAcao((doc, dataSource) =>
            {
                Laudo laudo          = dataSource as Laudo;
                conf.CabecalhoRodape = CabecalhoRodapeFactory.Criar(especificidade.Titulo.SetorId);

                if (laudo.Anexos == null || laudo.Anexos.Count == 0)
                {
                    AsposeExtensoes.RemoveTables(new List <Table>()
                    {
                        doc.FindTable("Anexo I – Arquivos do Laudo")
                    });
                    doc.RemovePageBreak();
                }
            });

            return(conf);
        }
        public override IConfiguradorPdf ObterConfiguradorPdf(IEspecificidade especificidade)
        {
            ConfiguracaoDefault conf = new ConfiguracaoDefault();

            conf.AddLoadAcao((doc, dataSource) =>
            {
                Laudo laudo = dataSource as Laudo;
                List <Table> itenRemover = new List <Table>();
                conf.CabecalhoRodape     = CabecalhoRodapeFactory.Criar(especificidade.Titulo.SetorId);

                if (!especificidade.Titulo.ExisteAnexos)
                {
                    itenRemover.Add(doc.LastTable("«TableStart:Anexos»"));
                    doc.RemovePageBreak();
                }

                AsposeExtensoes.RemoveTables(itenRemover);
            });

            return(conf);
        }
Exemple #13
0
        public override IConfiguradorPdf ObterConfiguradorPdf(IEspecificidade especificidade)
        {
            ConfiguracaoDefault conf = new ConfiguracaoDefault();

            conf.AddLoadAcao((doc, dataSource) =>
            {
                Oficio oficio            = dataSource as Oficio;
                List <Table> itenRemover = new List <Table>();

                if (oficio.SituacoesGrupo == null || oficio.SituacoesGrupo.Count == 0)
                {
                    itenRemover.Add(doc.FindTable("«TableStart:SituacoesGrupo»«Nome»«TableEnd:SituacoesGrupo»"));
                }

                AsposeExtensoes.RemoveTables(itenRemover);
            });

            conf.CabecalhoRodape = CabecalhoRodapeFactory.Criar(especificidade.Titulo.SetorId);

            return(conf);
        }
        public override IConfiguradorPdf ObterConfiguradorPdf(IEspecificidade especificidade)
        {
            ConfiguracaoDefault conf = new ConfiguracaoDefault();

            conf.AddLoadAcao((doc, dataSource) =>
            {
                Certidao certidao        = dataSource as Certidao;
                List <Table> itenRemover = new List <Table>();
                conf.CabecalhoRodape     = CabecalhoRodapeFactory.Criar(especificidade.Titulo.SetorId);

                if (certidao.Empreendimento.Id <= 0)
                {
                    itenRemover.Add(doc.LastTable("«Empreendimento.EndZona»"));
                    doc.RemovePageBreak();
                }

                AsposeExtensoes.RemoveTables(itenRemover);
            });

            return(conf);
        }
Exemple #15
0
        public override IConfiguradorPdf ObterConfiguradorPdf(IEspecificidade especificidade)
        {
            ConfiguracaoDefault conf = new ConfiguracaoDefault();

            conf.AddLoadAcao((doc, dataSource) =>
            {
                List <Table> itenRemover = new List <Table>();
                conf.CabecalhoRodape     = CabecalhoRodapeFactory.Criar(especificidade.Titulo.SetorId);

                Certidao certidao = dataSource as Certidao;

                if (certidao.CertidaoDebito.TipoCertidao == eCertidaoTipo.Negativa)
                {
                    itenRemover.Add(doc.LastTable("Certidão POSITIVA de Débito"));
                    itenRemover.Add(doc.LastTable("CERTIDÃO POSITIVA PROCESSO(S) Nº «CertidaoDebito.ProtocoloNumero»"));
                    itenRemover.Add(doc.LastTable("CERTIDÃO POSITIVA COM EFEITO DE NEGATIVA. PROCESSO(S) Nº «CertidaoDebito.ProtocoloNumero»."));
                }
                else
                {
                    itenRemover.Add(doc.LastTable("Certidão NEGATIVA de Débito"));

                    if (certidao.CertidaoDebito.TipoCertidao == eCertidaoTipo.Positiva)
                    {
                        itenRemover.Add(doc.LastTable("CERTIDÃO POSITIVA COM EFEITO DE NEGATIVA. PROCESSO(S) Nº «CertidaoDebito.ProtocoloNumero»."));
                    }

                    if (certidao.CertidaoDebito.TipoCertidao == eCertidaoTipo.PositivaComEfeitoNegativa)
                    {
                        itenRemover.Add(doc.LastTable("CERTIDÃO POSITIVA PROCESSO(S) Nº «CertidaoDebito.ProtocoloNumero»"));
                    }
                }


                AsposeExtensoes.RemoveTables(itenRemover);
            });

            return(conf);
        }
Exemple #16
0
        public override IConfiguradorPdf ObterConfiguradorPdf(IEspecificidade especificidade)
        {
            ConfiguracaoDefault conf = new ConfiguracaoDefault();

            conf.CabecalhoRodape = CabecalhoRodapeFactory.Criar(especificidade.Titulo.SetorId);

            conf.AddLoadAcao((doc, dataSource) =>
            {
                Oficio oficio            = dataSource as Oficio;
                List <Table> itenRemover = new List <Table>();
                conf.CabecalhoRodape     = CabecalhoRodapeFactory.Criar(especificidade.Titulo.SetorId);

                //if (oficio.Anexos.Count <= 0)
                //{
                //    doc.FindTable("«TableStart:Anexos»").RemovePageBreakAnterior();
                //    itenRemover.Add(doc.FindTable("«TableStart:Anexos»"));
                //}

                AsposeExtensoes.RemoveTables(itenRemover);
            });

            return(conf);
        }
        public override IConfiguradorPdf ObterConfiguradorPdf(IEspecificidade especificidade)
        {
            ConfiguracaoDefault conf = new ConfiguracaoDefault();

            conf.AddLoadAcao((doc, dataSource) =>
            {
                Termo termo = dataSource as Termo;
                List <Table> itenRemover = new List <Table>();

                List <ResponsavelPDF> responsaveis = new List <ResponsavelPDF>();
                termo.UnidadeConsolidacao.ResponsaveisTecnicos.ForEach(resp =>
                {
                    if (!responsaveis.Exists(x => x.CPFCNPJ == resp.CPFCNPJ))
                    {
                        responsaveis.Add(new ResponsavelPDF()
                        {
                            CPFCNPJ = resp.CPFCNPJ
                        });
                    }
                });

                if (responsaveis.Count < 2)
                {
                    itenRemover.Add(doc.LastTable("dos profissionais"));
                }
                else
                {
                    itenRemover.Add(doc.LastTable("do profissional"));
                }

                AsposeExtensoes.RemoveTables(itenRemover);
            });

            conf.CabecalhoRodape = CabecalhoRodapeFactory.Criar(especificidade.Titulo.SetorId);

            return(conf);
        }
 protected void ConfigurarCabecarioRodape(int setorId, bool isCredenciado = false)
 {
     ConfiguracaoDefault.CabecalhoRodape = CabecalhoRodapeFactory.Criar(setorId, isCredenciado: isCredenciado);
 }
        public static MemoryStream GerarCheckListRoteiroPdf(ChecagemRoteiroRelatorio checkListRoteiro)
        {
            Document     doc = new Document(PageSize.A4, 45, 45, 85, 50);
            MemoryStream str = new MemoryStream();

            PdfWriter wrt = PdfWriter.GetInstance(doc, str);

            wrt.SetEncryption(PdfWriter.STRENGTH128BITS, null, null, PdfWriter.AllowPrinting);

            wrt.PageEvent = CabecalhoRodapeFactory.Criar();

            doc.Open();


            PdfPTable tabelaDocumento = PdfMetodosAuxiliares.CriarTabela(2, new float[] { 20, 80 });

            PdfMetodosAuxiliares.AddTituloData(doc, "Relatório de Pendências de Itens de Roteiro");

            #region CheckList Roteiro

            tabelaDocumento.DefaultCell.Colspan = 2;

            if (checkListRoteiro.Id != 0)
            {
                tabelaDocumento.DefaultCell.BorderWidth = 0;
                tabelaDocumento.AddCell(PdfMetodosAuxiliares.AddCampoValor("Nº da checagem", checkListRoteiro.Id.ToString()));
            }

            tabelaDocumento.DefaultCell.BorderWidth     = 0.5f;
            tabelaDocumento.DefaultCell.BackgroundColor = PdfMetodosAuxiliares.celulaCorPrata;
            tabelaDocumento.AddCell(new Phrase("Interessado", PdfMetodosAuxiliares.arial10Negrito));

            tabelaDocumento.DefaultCell.BackgroundColor = BaseColor.WHITE;
            tabelaDocumento.AddCell(new Phrase(checkListRoteiro.Interessado, PdfMetodosAuxiliares.arial10));

            tabelaDocumento.DefaultCell.BackgroundColor = PdfMetodosAuxiliares.celulaCorPrata;
            tabelaDocumento.AddCell(new Phrase("Roteiro Orientativo", PdfMetodosAuxiliares.arial10Negrito));

            tabelaDocumento.DefaultCell.BackgroundColor = BaseColor.WHITE;
            tabelaDocumento.DefaultCell.Padding         = 0;

            PdfPTable tabelaInterior = PdfMetodosAuxiliares.CriarTabela(2, new float[] { 10, 80 });
            tabelaInterior.DefaultCell.BorderWidth = 0.5f;

            for (int i = 0; i < checkListRoteiro.Roteiros.Count; i++)
            {
                tabelaInterior.AddCell(PdfMetodosAuxiliares.AddCampoValor(" Versão", checkListRoteiro.Roteiros[i].Versao.ToString(), PdfMetodosAuxiliares.arial10, PdfMetodosAuxiliares.arial10));
                tabelaInterior.AddCell(new Phrase(checkListRoteiro.Roteiros[i].Nome, PdfMetodosAuxiliares.arial10));
            }
            tabelaDocumento.AddCell(tabelaInterior);

            //#region Itens

            PdfMetodosAuxiliares.PularLinha(tabelaDocumento);

            tabelaDocumento.AddCell(CarregarItens(checkListRoteiro.Itens.Where(x => x.SituacaoId == 1).ToList(), "Itens Pendentes"));

            PdfMetodosAuxiliares.PularLinha(tabelaDocumento);

            tabelaDocumento.AddCell(CarregarItens(checkListRoteiro.Itens.Where(x => x.SituacaoId == 2).ToList(), "Itens Conferidos"));

            PdfMetodosAuxiliares.PularLinha(tabelaDocumento);

            tabelaDocumento.AddCell(CarregarItens(checkListRoteiro.Itens.Where(x => x.SituacaoId == 3).ToList(), "Itens Dispensados"));

            #endregion

            doc.Add(tabelaDocumento);

            doc.Close();
            doc.Dispose();

            return(str);
        }
Exemple #20
0
        public MemoryStream GerarPdfProtocoloAssociado(int protocoloId)
        {
            ProtocoloRelatorio protocolo = _da.Obter(protocoloId);

            Document     doc = new Document(PageSize.A4, 45, 45, 85, 50);
            MemoryStream str = new MemoryStream();

            PdfWriter wrt = PdfWriter.GetInstance(doc, str);

            wrt.SetEncryption(PdfWriter.STRENGTH128BITS, null, null, PdfWriter.AllowPrinting);

            wrt.PageEvent = CabecalhoRodapeFactory.Criar(protocolo.SetorCriacaoId);

            doc.Open();

            PdfPTable tabelaDocumento = PdfMetodosAuxiliares.CriarTabela();

            tabelaDocumento.DefaultCell.Padding = 0;
            PdfMetodosAuxiliares.AddTituloData(doc, "Documentos Juntados/Processos Apensados");
            tabelaDocumento.DefaultCell.BorderWidth = 0;

            #region Processo/Documento

            tabelaDocumento.AddCell(PdfMetodosAuxiliares.AddTexto("Processo", PdfMetodosAuxiliares.arial10Negrito));
            PdfMetodosAuxiliares.PularLinha(tabelaDocumento);

            PdfPTable tabelaInterior = PdfMetodosAuxiliares.CriarTabela(2, new float[] { 20, 80 });

            tabelaInterior.AddCell(PdfMetodosAuxiliares.AddTexto("Tipo:", PdfMetodosAuxiliares.arial10));
            tabelaInterior.AddCell(PdfMetodosAuxiliares.AddTexto(protocolo.TipoTexto, PdfMetodosAuxiliares.arial10));
            tabelaInterior.AddCell(PdfMetodosAuxiliares.AddTexto("Número:", PdfMetodosAuxiliares.arial10));
            tabelaInterior.AddCell(PdfMetodosAuxiliares.AddTexto(protocolo.Numero, PdfMetodosAuxiliares.arial10));

            tabelaDocumento.AddCell(tabelaInterior);

            #endregion

            List <ProtocoloRelatorio> protocolosAux = new List <ProtocoloRelatorio>();

            #region Documentos Juntados

            protocolosAux = protocolo.ProtocolosAssociados.Where(x => x.ProtocoloTipo == 2).ToList();
            if (protocolosAux != null && protocolosAux.Count > 0)
            {
                GerarTabelas(protocolosAux, "Documentos Juntados", tabelaDocumento);
            }

            #endregion

            #region Processos Apensados

            protocolosAux = protocolo.ProtocolosAssociados.Where(x => x.ProtocoloTipo == 1).ToList();
            if (protocolosAux != null && protocolosAux.Count > 0)
            {
                GerarTabelas(protocolosAux, "Processos Apensados", tabelaDocumento);
            }

            #endregion

            doc.Add(tabelaDocumento);

            doc.Close();
            doc.Dispose();

            return(str);
        }
Exemple #21
0
        public override IConfiguradorPdf ObterConfiguradorPdf(IEspecificidade especificidade)
        {
            ConfiguracaoDefault conf = new ConfiguracaoDefault();

            conf.AddLoadAcao((doc, dataSource) =>
            {
                Laudo laudo = dataSource as Laudo;
                List <Table> itenRemover = new List <Table>();
                conf.CabecalhoRodape     = CabecalhoRodapeFactory.Criar(especificidade.Titulo.SetorId);

                switch ((eCaracterizacao)laudo.CaracterizacaoTipo)
                {
                case eCaracterizacao.ExploracaoFlorestal:
                case eCaracterizacao.QueimaControlada:
                    itenRemover.Add(doc.FindTable("«Silvicultura.AreaTotalHa»"));
                    itenRemover.Add(doc.FindTable("«TableStart:QueimaControlada.TipoQueima»"));
                    break;

                case eCaracterizacao.Silvicultura:
                    //Removendo Exploracao
                    itenRemover.Add(doc.FindTable("FINALIDADE DA EXPLORAÇÃO"));

                    //Removendo Queima Controlada
                    itenRemover.Add(doc.LastTable("«TableStart:QueimaControlada.QueimasContr"));
                    break;
                }

                #region Exploração Florestal

                if (laudo.CaracterizacaoTipo == (int)eCaracterizacao.ExploracaoFlorestal)
                {
                    if (laudo.ExploracaoFlorestal.CorteRasoExploracoes.Count <= 0)
                    {
                        itenRemover.Add(doc.LastTable("«TableStart:ExploracaoFlorestal.CorteRaso"));
                    }

                    if (laudo.ExploracaoFlorestal.CorteSeletivoExploracoes.Count <= 0)
                    {
                        itenRemover.Add(doc.LastTable("«TableStart:ExploracaoFlorestal.CorteSele"));
                    }

                    itenRemover.Add(doc.LastTable("«TableStart:QueimaControlada.QueimasContr"));
                }

                #endregion

                #region Queima Controlada

                else if (laudo.CaracterizacaoTipo == (int)eCaracterizacao.QueimaControlada)
                {
                    if (laudo.QueimaControlada.QueimasControladas.Count <= 0)
                    {
                        itenRemover.Add(doc.LastTable("«TableStart:QueimaControlada.QueimasContr"));
                    }

                    itenRemover.Add(doc.LastTable("«TableStart:ExploracaoFlorestal.CorteRaso"));
                    itenRemover.Add(doc.LastTable("«TableStart:ExploracaoFlorestal.CorteSele"));
                    itenRemover.Add(doc.FindTable("FINALIDADE DA EXPLORAÇÃO"));
                }
                #endregion

                #region Silvicultura

                else if (laudo.CaracterizacaoTipo == (int)eCaracterizacao.Silvicultura)
                {
                    if (laudo.Silvicultura.Culturas.Count <= 0)
                    {
                        //itenRemover.Add(doc.LastTable("«TableStart:QueimaControlada.QueimasContr"));
                    }
                }

                #endregion

                if (string.IsNullOrEmpty(laudo.Restricao))
                {
                    itenRemover.Add(doc.LastTable("«Restricao»"));
                }

                if (laudo.Anexos.Count <= 0)
                {
                    doc.FindTable("«TableStart:Anexos»").RemovePageBreakAnterior();
                    itenRemover.Add(doc.FindTable("«TableStart:Anexos»"));
                }

                if (laudo.AnaliseItens.Count <= 0)
                {
                    itenRemover.Add(doc.LastTable("RESULTADO DA ANÁLISE"));
                }
                else
                {
                    itenRemover.Add(doc.LastTable("Não realizada"));
                }



                if (String.IsNullOrWhiteSpace(laudo.Responsavel.NomeRazaoSocial))
                {
                    itenRemover.Add(doc.LastTable("«Responsavel.NomeRazaoSocial»"));
                }
                else
                {
                    itenRemover.Add(doc.LastTable("Não possui responsável técnico"));
                }

                AsposeExtensoes.RemoveTables(itenRemover);
            });

            return(conf);
        }
Exemple #22
0
        public MemoryStream Gerar(Int32 id)
        {
            EntregaRelatorio entrega = _da.Obter(id);

            Document     doc = new Document(PageSize.A4, 45, 45, 85, 50);
            MemoryStream str = new MemoryStream();

            PdfWriter wrt = PdfWriter.GetInstance(doc, str);

            wrt.SetEncryption(PdfWriter.STRENGTH128BITS, null, null, PdfWriter.AllowPrinting);

            wrt.PageEvent = CabecalhoRodapeFactory.Criar(entrega.ProtocoloSetorCriacao);

            doc.Open();

            PdfMetodosAuxiliares.PularLinha(doc);
            PdfMetodosAuxiliares.PularLinha(doc);

            PdfPTable tabela = PdfMetodosAuxiliares.CriarTabela();

            tabela.DefaultCell.HorizontalAlignment = Element.ALIGN_CENTER;
            tabela.DefaultCell.Border = 0;
            tabela.AddCell(new Phrase(new Chunk("Registro de Entrega de Título", PdfMetodosAuxiliares.arial16Negrito)));
            doc.Add(tabela);


            PdfMetodosAuxiliares.PularLinha(doc);
            PdfMetodosAuxiliares.PularLinha(doc);

            tabela = PdfMetodosAuxiliares.CriarTabela();
            tabela.DefaultCell.HorizontalAlignment = Element.ALIGN_LEFT;
            tabela.DefaultCell.Border = 0;

            Phrase frase = PdfMetodosAuxiliares.AddTexto("Nesta data foram retirados os seguintes títulos referentes ao ", PdfMetodosAuxiliares.arial10);

            frase.Add(new Chunk(entrega.ProtocoloTipo + " " + entrega.ProtocoloNumero + ":", PdfMetodosAuxiliares.arial10Negrito));
            tabela.AddCell(frase);

            doc.Add(tabela);

            tabela = PdfMetodosAuxiliares.CriarTabela(2, new float[] { 20, 80 });
            tabela.DefaultCell.HorizontalAlignment = Element.ALIGN_LEFT;

            PdfMetodosAuxiliares.AddCabecarioTabela(tabela, "Número");
            PdfMetodosAuxiliares.AddCabecarioTabela(tabela, "Modelo");

            foreach (var titulo in entrega.Titulos)
            {
                tabela.AddCell(PdfMetodosAuxiliares.AddTexto(titulo.Numero, PdfMetodosAuxiliares.arial10));
                tabela.AddCell(PdfMetodosAuxiliares.AddTexto(titulo.Modelo, PdfMetodosAuxiliares.arial10));
            }

            doc.Add(tabela);

            PdfMetodosAuxiliares.PularLinha(doc);
            PdfMetodosAuxiliares.PularLinha(doc);
            PdfMetodosAuxiliares.PularLinha(doc);

            tabela = PdfMetodosAuxiliares.CriarTabela();
            tabela.DefaultCell.Border = 0;

            tabela.AddCell(PdfMetodosAuxiliares.AddTexto(PdfMetodosAuxiliares.AssinaturaCampo, PdfMetodosAuxiliares.arial10));
            tabela.AddCell(PdfMetodosAuxiliares.AddTexto("Nome: " + entrega.Nome, PdfMetodosAuxiliares.arial10));
            tabela.AddCell(PdfMetodosAuxiliares.AddTexto("CPF: " + entrega.CPF, PdfMetodosAuxiliares.arial10));

            doc.Add(tabela);

            PdfMetodosAuxiliares.PularLinha(doc);
            PdfMetodosAuxiliares.PularLinha(doc);
            PdfMetodosAuxiliares.PularLinha(doc);

            tabela = PdfMetodosAuxiliares.CriarTabela();
            tabela.DefaultCell.HorizontalAlignment = Element.ALIGN_RIGHT;
            tabela.DefaultCell.Border = 0;

            tabela.AddCell(PdfMetodosAuxiliares.AdicionarLocalDataEmissao(entrega.LocalEntrega, entrega.DataEntrega));

            doc.Add(tabela);

            doc.Close();
            doc.Dispose();

            return(str);
        }
        public override IConfiguradorPdf ObterConfiguradorPdf(IEspecificidade especificidade)
        {
            ConfiguracaoDefault conf = new ConfiguracaoDefault();

            conf.AddLoadAcao((doc, dataSource) =>
            {
                Laudo laudo = dataSource as Laudo;
                List <Table> itenRemover = new List <Table>();
                conf.CabecalhoRodape     = CabecalhoRodapeFactory.Criar(especificidade.Titulo.SetorId);

                if (laudo.AnaliseItens.Count <= 0)
                {
                    itenRemover.Add(doc.LastTable("RESULTADO DA ANÁLISE"));
                }
                else
                {
                    itenRemover.Add(doc.LastTable("Não realizada"));
                }

                foreach (var item in laudo.RegularizacaoFundiaria.Posses)
                {
                    if (item.Matriculas.Count <= 0)
                    {
                        item.Matriculas.Add(new DominioPDF()
                        {
                            Matricula = "«remover»"
                        });
                    }
                    else
                    {
                        item.NaoPossuiAreaTituladaAnexa = "«remover»";
                    }

                    if (item.Transmitentes.Count <= 0)
                    {
                        item.Transmitentes.Add(new TransmitentePDF()
                        {
                            NomeRazaoSocial = "«remover»"
                        });
                    }
                    else
                    {
                        item.NaoPossuiTransmitentes = "«remover»";
                    }

                    if (item.Edificacoes.Count <= 0)
                    {
                        item.Edificacoes.Add(new EdificacaoPDF()
                        {
                            Tipo = "«remover»"
                        });
                    }
                    else
                    {
                        item.NaoPossuiEdificacoes = "«remover»";
                    }

                    if (item.Zona == (int)eZonaLocalizacao.Rural)
                    {
                        item.Calcada = "«remover»";
                    }

                    if (item.Zona == (int)eZonaLocalizacao.Urbana)
                    {
                        item.BanhadoPorRioCorrego = "«remover»";
                    }
                }

                doc.RemovePageBreak();

                AsposeExtensoes.RemoveTables(itenRemover);
            });

            conf.AddExecutedAcao((doc, datasource) =>
            {
                Table tabela = doc.LastTable("«remover»");

                while (tabela != null)
                {
                    AsposeExtensoes.RemoveTable(tabela);
                    tabela = doc.LastTable("«remover»");
                }

                doc.RemovePageBreak();
            });

            return(conf);
        }
        public MemoryStream ChecagemPendenciaPdf(ChecagemPendenciaRelatorioRelatorio checagem)
        {
            Document     doc = new Document(PageSize.A4, 45, 45, 85, 50);
            MemoryStream str = new MemoryStream();

            PdfWriter wrt = PdfWriter.GetInstance(doc, str);

            wrt.SetEncryption(PdfWriter.STRENGTH128BITS, null, null, PdfWriter.AllowPrinting);

            wrt.PageEvent = CabecalhoRodapeFactory.Criar();

            doc.Open();

            PdfPTable tabelaDocumento = PdfMetodosAuxiliares.CriarTabela(5, new float[] { 5, 17, 50, 16, 12 });

            PdfMetodosAuxiliares.AddTituloData(doc, "Relatório de Pendências");

            #region CheckList Roteiro

            tabelaDocumento.DefaultCell.Colspan = 5;
            PdfMetodosAuxiliares.AddCabecarioTabela(tabelaDocumento, "Título de Pendência");

            tabelaDocumento.DefaultCell.Colspan = 2;
            tabelaDocumento.AddCell(new Phrase("Número:", PdfMetodosAuxiliares.arial10));

            tabelaDocumento.DefaultCell.Colspan = 3;
            tabelaDocumento.AddCell(new Phrase(checagem.TituloTipoSigla + " - " + checagem.TituloNumero, PdfMetodosAuxiliares.arial10));

            tabelaDocumento.DefaultCell.Colspan = 2;
            tabelaDocumento.AddCell(new Phrase("Vencimento: ", PdfMetodosAuxiliares.arial10));

            tabelaDocumento.DefaultCell.Colspan = 3;
            tabelaDocumento.AddCell(new Phrase(checagem.TituloVencimento.DataTexto, PdfMetodosAuxiliares.arial10));

            tabelaDocumento.DefaultCell.Colspan = 2;
            tabelaDocumento.AddCell(new Phrase("Processo/Documento: ", PdfMetodosAuxiliares.arial10));

            tabelaDocumento.DefaultCell.Colspan = 3;
            tabelaDocumento.AddCell(new Phrase(checagem.ProtocoloNumero, PdfMetodosAuxiliares.arial10));

            tabelaDocumento.DefaultCell.Colspan = 2;
            tabelaDocumento.AddCell(new Phrase("Interessado: ", PdfMetodosAuxiliares.arial10));

            tabelaDocumento.DefaultCell.Colspan = 3;
            tabelaDocumento.AddCell(new Phrase(checagem.InteressadoNome, PdfMetodosAuxiliares.arial10));

            #region Itens

            tabelaDocumento.DefaultCell.Colspan = 5;
            PdfMetodosAuxiliares.PularLinha(tabelaDocumento);
            PdfMetodosAuxiliares.AddCabecarioTabela(tabelaDocumento, "Itens Não Conferidos");

            List <ChecagemPendenciaItemRelatorio> itens = checagem.Itens.Where(x => x.SituacaoId == 1).ToList();

            for (int i = 0; i < itens.Count; i++)
            {
                tabelaDocumento.DefaultCell.Colspan = 1;
                tabelaDocumento.AddCell(new Phrase((i + 1).ToString(), PdfMetodosAuxiliares.arial10));

                tabelaDocumento.DefaultCell.Colspan = 4;
                tabelaDocumento.AddCell(new Phrase(itens[i].Nome, PdfMetodosAuxiliares.arial10));
            }

            tabelaDocumento.DefaultCell.Colspan = 5;
            PdfMetodosAuxiliares.PularLinha(tabelaDocumento);
            PdfMetodosAuxiliares.AddCabecarioTabela(tabelaDocumento, "Itens Conferidos");

            itens = checagem.Itens.Where(x => x.SituacaoId == 2).ToList();

            for (int i = 0; i < itens.Count; i++)
            {
                tabelaDocumento.DefaultCell.Colspan = 1;
                tabelaDocumento.AddCell(new Phrase((i + 1).ToString(), PdfMetodosAuxiliares.arial10));

                tabelaDocumento.DefaultCell.Colspan = 4;
                tabelaDocumento.AddCell(new Phrase(itens[i].Nome, PdfMetodosAuxiliares.arial10));
            }

            #endregion

            #endregion

            doc.Add(tabelaDocumento);

            doc.Close();
            doc.Dispose();

            return(str);
        }
        internal MemoryStream ComplementarPdf(string path, PecaTecnicaRelatorio pecaTecnica)
        {
            Document     doc = new Document(PageSize.A4, 85, 40, 73, 50);
            MemoryStream str = new MemoryStream();

            PdfWriter wrt = PdfWriter.GetInstance(doc, str);

            wrt.SetEncryption(PdfWriter.STRENGTH128BITS, null, null, PdfWriter.AllowPrinting);

            wrt.PageEvent = CabecalhoRodapeFactory.Criar(pecaTecnica.SetorId);
            (wrt.PageEvent as IPageMirroring).IsPageMirroring = true;

            doc.Open();

            //------------------------------------------------------
            PdfReader reader = new PdfReader(path);

            PdfContentByte  cb;
            PdfImportedPage page;
            Rectangle       psizeOrg = doc.PageSize;

            Font arial7Normal = new Font(Font.FontFamily.HELVETICA, 7, Font.NORMAL, BaseColor.BLACK);
            Font arial5Normal = new Font(Font.FontFamily.HELVETICA, 6, Font.NORMAL, BaseColor.BLACK);

            float TopMargin    = doc.TopMargin;
            float BottomMargin = doc.BottomMargin;
            float LeftMargin   = doc.LeftMargin;
            float RightMargin  = doc.RightMargin;

            for (int i = 1; i <= reader.NumberOfPages; i++)
            {
                Rectangle paginaMedidas = reader.GetPageSize(i);
                float     px            = (psizeOrg.Width - paginaMedidas.Width) / 2;
                float     py            = (psizeOrg.Height - paginaMedidas.Height) / 2;

                if (px < 0 || py < 0)
                {
                    px = 0;
                    py = 0;
                }

                IPageMirroring pageEventMirroring = wrt.PageEvent as IPageMirroring;
                if (pageEventMirroring != null && pageEventMirroring.IsPageMirroring)
                {
                    px = px - (doc.LeftMargin - (((i % 2) != 0) ? doc.LeftMargin : doc.RightMargin));
                }

                page = wrt.GetImportedPage(reader, i);
                Rectangle psize = reader.GetPageSizeWithRotation(i);

                doc.SetPageSize(psize);
                doc.NewPage();

                cb = wrt.DirectContent;
                cb.SaveState();


                if (psize.Rotation == 0)
                {
                    cb.AddTemplate(page, 1f, 0, 0, 1f, 0, 0);
                }
                else if (psize.Rotation == 90)
                {
                    cb.AddTemplate(page, 0, -1f, 1f, 0, 0, psize.Height);
                }
                else if (psize.Rotation == 180)
                {
                    cb.AddTemplate(page, -1f, 0, 0, -1f, psize.Width, psize.Height);
                }
                else if (psize.Rotation == 270)
                {
                    cb.AddTemplate(page, 0, 1.0F, -1.0F, 0, psize.Width, 0);
                }
                else
                {
                    cb.AddTemplate(page, px, py);
                }


                cb.RestoreState();

                //pegando a primiera pagina


                if (i <= 2)
                {
                    //Distancia do Topo

                    float topGrid                  = 330;
                    float topDadosImovel           = topGrid;
                    float topInteressado           = topGrid - 23.8f;
                    float topBairro                = topGrid - 57f;
                    float topMunicipioUf           = topGrid - 77.3f;
                    float topResponsavel           = topGrid - 95;
                    float topAssinaturaResponsavel = topGrid - 188;

                    #region Linha Processo

                    PdfPTable linhaProcesso = new PdfPTable(3);
                    linhaProcesso.TotalWidth = doc.PageSize.Width;
                    linhaProcesso.SetWidths(new float[] { 17, 10, 73 });
                    linhaProcesso.DefaultCell.Padding = 0;
                    linhaProcesso.DefaultCell.SetLeading(0.5f, 0.5f);
                    linhaProcesso.DefaultCell.VerticalAlignment   = Rectangle.ALIGN_BOTTOM;
                    linhaProcesso.DefaultCell.HorizontalAlignment = Rectangle.ALIGN_CENTER;
                    linhaProcesso.DefaultCell.Border = Rectangle.NO_BORDER;
                    //BoardEnable(linhaProcesso);
                    linhaProcesso.AddCell(" ");                                             //Margin
                    linhaProcesso.AddCell(new Phrase(pecaTecnica.Protocolo, arial7Normal)); //Processo
                    linhaProcesso.AddCell(" ");                                             //Padding + spacing + padding
                    linhaProcesso.WriteSelectedRows(0, -1, px, topDadosImovel, cb);

                    #endregion

                    #region Interessado

                    PdfPTable linhaInteressados = new PdfPTable(3);
                    linhaInteressados.TotalWidth = doc.PageSize.Width;
                    linhaInteressados.SetWidths(new float[] { 17, 73, 10 });
                    linhaInteressados.DefaultCell.Padding = 0;
                    linhaInteressados.DefaultCell.Border  = Rectangle.NO_BORDER;
                    //linhaInteressados.DefaultCell.SetLeading(0.5f, 0.5f);
                    linhaInteressados.DefaultCell.VerticalAlignment = Rectangle.ALIGN_BOTTOM;
                    linhaProcesso.DefaultCell.Border = Rectangle.NO_BORDER;
                    //BoardEnable(linhaInteressados);
                    linhaInteressados.AddCell(" ");                                                                              //Margin
                    linhaInteressados.AddCell(new Phrase(string.Join(", ", pecaTecnica.Destinatarios.ToArray()), arial7Normal)); //Interessado Nome
                    linhaInteressados.AddCell(" ");                                                                              //Padding + spacing + padding
                    linhaInteressados.WriteSelectedRows(0, -1, px, topInteressado, cb);

                    #endregion

                    #region Bairro

                    PdfPTable linhaBairro = new PdfPTable(5);
                    linhaBairro.TotalWidth = doc.PageSize.Width;
                    linhaBairro.SetWidths(new float[] { 17, 35, 2, 35, 11 });
                    linhaBairro.DefaultCell.Padding           = 0;
                    linhaBairro.DefaultCell.VerticalAlignment = Rectangle.ALIGN_MIDDLE;
                    linhaBairro.DefaultCell.Border            = Rectangle.NO_BORDER;
                    //BoardEnable(linhaBairro);
                    linhaBairro.AddCell(" ");                     //Margin
                    linhaBairro.AddCell(new Phrase(pecaTecnica.Bairro, arial7Normal));
                    linhaBairro.AddCell(" ");                     //Padding + spacing + padding
                    linhaBairro.AddCell(new Phrase(pecaTecnica.Distrito, arial7Normal));
                    linhaBairro.AddCell(" ");                     //Padding + spacing + padding
                    linhaBairro.WriteSelectedRows(0, -1, px, topBairro, cb);

                    #endregion

                    #region Municipio Uf

                    PdfPTable linhaMunicipioEstado = new PdfPTable(3);
                    linhaMunicipioEstado.TotalWidth = doc.PageSize.Width;
                    linhaMunicipioEstado.SetWidths(new float[] { 17, 43, 40 });
                    linhaMunicipioEstado.DefaultCell.Padding           = 0;
                    linhaMunicipioEstado.DefaultCell.VerticalAlignment = Rectangle.ALIGN_MIDDLE;
                    linhaMunicipioEstado.DefaultCell.Border            = Rectangle.NO_BORDER;
                    //BoardEnable(linhaMunicipioEstado);
                    linhaMunicipioEstado.AddCell(" ");                                                                                         //Margin
                    linhaMunicipioEstado.AddCell(new Phrase(String.Format("{0} - {1}", pecaTecnica.Municipio, pecaTecnica.Uf), arial7Normal)); //Municipio
                    linhaMunicipioEstado.AddCell(" ");                                                                                         //Padding + spacing + padding
                    linhaMunicipioEstado.WriteSelectedRows(0, -1, px, topMunicipioUf, cb);

                    #endregion

                    #region Linha Assinatura REsponsavel

                    PdfPTable linhaAssinaturaResponsavel = new PdfPTable(3);
                    linhaAssinaturaResponsavel.TotalWidth = doc.PageSize.Width;
                    linhaAssinaturaResponsavel.SetWidths(new float[] { 23, 24, 53 });                     //Proporcao 21,0 cm * 10
                    linhaAssinaturaResponsavel.DefaultCell.Padding = 0;
                    linhaAssinaturaResponsavel.DefaultCell.SetLeading(0.6f, 0.6f);
                    linhaAssinaturaResponsavel.DefaultCell.VerticalAlignment   = Rectangle.ALIGN_MIDDLE;
                    linhaAssinaturaResponsavel.DefaultCell.HorizontalAlignment = Rectangle.ALIGN_CENTER;
                    linhaAssinaturaResponsavel.DefaultCell.Border = Rectangle.NO_BORDER;
                    //BoardEnable(linhaAssinaturaResponsavel);

                    linhaAssinaturaResponsavel.AddCell(" ");
                    linhaAssinaturaResponsavel.AddCell(new Phrase(pecaTecnica.Elaborador, arial5Normal));
                    linhaAssinaturaResponsavel.AddCell(" ");

                    linhaAssinaturaResponsavel.AddCell(" ");
                    linhaAssinaturaResponsavel.AddCell(new Phrase(pecaTecnica.ElaboradorProfissao, arial5Normal));
                    linhaAssinaturaResponsavel.AddCell(" ");                     //Padding + spacing + padding

                    linhaAssinaturaResponsavel.AddCell(" ");                     //Margin
                    linhaAssinaturaResponsavel.AddCell(new Phrase(pecaTecnica.ElaboradorOrgaoClasseRegistro, arial5Normal));
                    linhaAssinaturaResponsavel.AddCell(" ");                     //Padding + spacing + padding

                    linhaAssinaturaResponsavel.CalculateHeights();


                    linhaAssinaturaResponsavel.WriteSelectedRows(0, -1, px, topAssinaturaResponsavel, cb);

                    #endregion
                }
            }

            doc.Close();

            return(str);
        }