Esempio n. 1
0
        public MemoryStream GerarHistorico(Int32 protocolo, Int32 tipo)
        {
            ArquivoDocCaminho = @"~/Content/_pdfAspose/Historico_Tramitacao.doc";
            TramitacaoHistoricoRelatorioPDF dataSource;

            dataSource = _HistoricoDa.ObterTramitacaoHistorico(protocolo);

            ObterArquivoTemplate();

            dataSource.GovernoNome    = _configSys.Obter <String>(ConfiguracaoSistema.KeyGovernoNome);
            dataSource.SecretariaNome = _configSys.Obter <String>(ConfiguracaoSistema.KeySecretariaNome);
            dataSource.OrgaoNome      = _configSys.Obter <String>(ConfiguracaoSistema.KeyOrgaoNome);

            string pathImg = HttpContext.Current.Request.MapPath("~/Content/_imgLogo/logobrasao.jpg");

            dataSource.LogoBrasao = File.ReadAllBytes(pathImg);

            dataSource.LogoBrasao = AsposeImage.RedimensionarImagem(dataSource.LogoBrasao, 1);

            #region Remover

            ConfiguracaoDefault.AddExecutedAcao((doc, dataSrc) =>
            {
                List <Table> tabelasRemover = new List <Table>();
                tabelasRemover.AddRange(doc.Any <Table>("«remover»", isDeep: true));

                AsposeExtensoes.RemoveTables(tabelasRemover);
            });

            #endregion Remover

            return(GerarPdf(dataSource));
        }
Esempio n. 2
0
        public MemoryStream Gerar(int id)
        {
            ArquivoDocCaminho = @"~/Content/_pdfAspose/Requerimento_Digital.doc";

            RequerimentoRelatorio dataSource = _da.Obter(id);

            if (_da.ObterSituacao(id) == (int)eRequerimentoSituacao.EmAndamento)
            {
                dataSource = _da.Obter(id);
            }
            else
            {
                ConfiguracaoDefault.ExibirSimplesConferencia = false;
                dataSource = _da.ObterHistorico(id);
            }

            ObterArquivoTemplate();

            #region Configurar Assinantes

            ConfiguracaoDefault.TextoTagAssinante   = "«Assinante.Nome»";
            ConfiguracaoDefault.TextoTagAssinantes1 = "«TableStart:Assinantes1»";
            ConfiguracaoDefault.TextoTagAssinantes2 = "«TableStart:Assinantes2»";

            #endregion

            #region Configurar Cabecalho Rodapé

            ConfigurarCabecarioRodape(dataSource.SetorId, true);

            #endregion

            #region Configurar Tabelas

            ConfiguracaoDefault.AddLoadAcao((doc, dataSrc) =>
            {
                List <Table> tabelas = new List <Table>();

                List <RequerimentoAtividadeRelatorio> atividades = dataSource.Atividades.Where(x => !string.IsNullOrEmpty(x.Conclusao)).ToList();

                if (atividades == null || atividades.Count <= 0)
                {
                    tabelas.Add(doc.LastTable("«TableStart:Atividades»"));
                }

                AsposeExtensoes.RemoveTables(tabelas);
            });

            ConfiguracaoDefault.AddExecutedAcao((doc, dataSrc) =>
            {
                List <Table> tabelas = new List <Table>();

                doc.FindTable("OBJETIVO DO PEDIDO").RemoverParagrafos();

                doc.FindTable("IDENTIFICAÇÃO DO RESPONSÁVEL TÉCNICO").RemoverParagrafos();

                if (dataSource.Interessado.Id == 0)
                {
                    tabelas.Add(doc.FindTable("IDENTIFICAÇÃO DO INTERESSADO"));
                }

                if (dataSource.Responsaveis == null || dataSource.Responsaveis.Count == 0)
                {
                    tabelas.Add(doc.FindTable("IDENTIFICAÇÃO DO RESPONSÁVEL TÉCNICO"));
                }

                if (dataSource.Empreendimento.Id == 0)
                {
                    tabelas.Add(doc.FindTable("IDENTIFICAÇÃO DO EMPREENDIMENTO"));
                }

                AsposeExtensoes.RemoveTables(tabelas);
            });

            #endregion

            #region Assinantes

            AssinanteDefault assinante = null;

            if (dataSource.Interessado.Id > 0)
            {
                assinante           = new AssinanteDefault();
                assinante.Nome      = dataSource.Interessado.NomeRazaoSocial;
                assinante.TipoTexto = "Interessado";
                ConfiguracaoDefault.Assinantes.Add(assinante);
            }

            foreach (ResponsavelTecnicoRelatorio responsavel in dataSource.Responsaveis)
            {
                assinante           = new AssinanteDefault();
                assinante.Nome      = responsavel.NomeRazao;
                assinante.TipoTexto = "Responsável Técnico";
                ConfiguracaoDefault.Assinantes.Add(assinante);
            }

            #endregion

            return(GerarPdf(dataSource));
        }
        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);
        }