public MemoryStream GerarLaudoFiscalizacaoHistorico(int historicoId, bool gerarTarja = true, BancoDeDados banco = null) { ArquivoDocCaminho = @"~/Content/_pdfAspose/Laudo_de_Fiscalizacao.docx"; FiscalizacaoRelatorio dataSource = _da.ObterHistorico(historicoId, banco); ConfiguracaoDefault.TextoTagAssinante = "«Assinante.Nome»"; ConfiguracaoDefault.TextoTagAssinantes1 = "«TableStart:Assinantes1»"; ConfiguracaoDefault.TextoTagAssinantes2 = "«TableStart:Assinantes2»"; if (dataSource.ConsideracoesFinais != null && dataSource.ConsideracoesFinais.Assinantes != null && dataSource.ConsideracoesFinais.Assinantes.Count > 0) { var autor = dataSource.ConsideracoesFinais.Assinantes.SingleOrDefault(x => x.Id == dataSource.UsuarioCadastro.Id); if (autor != null) { dataSource.ConsideracoesFinais.Assinantes.Remove(autor); dataSource.ConsideracoesFinais.Assinantes.Insert(0, autor); } ConfiguracaoDefault.Assinantes = dataSource.ConsideracoesFinais.Assinantes.Cast <IAssinante>().ToList(); } ConfigurarCabecarioRodape(dataSource.LocalInfracao.SetorId); if (dataSource.ConsideracoesFinais.Anexos != null && dataSource.ConsideracoesFinais.Anexos.Count > 0) { foreach (ConsideracoesFinaisAnexoRelatorio anexo in dataSource.ConsideracoesFinais.Anexos) { try { anexo.Arquivo.Conteudo = AsposeImage.RedimensionarImagem(File.ReadAllBytes(anexo.Arquivo.Caminho), 11, eAsposeImageDimensao.Ambos); } catch { Debug.Write(anexo.Arquivo.Caminho); } } //dataSource.ConsideracoesFinais.Anexos.Clear(); } ObterArquivoTemplate(); object objeto = dataSource; #region Remover this.ConfiguracaoDefault.AddLoadAcao((doc, a) => { List <Table> itenRemover = new List <Table>(); FiscalizacaoRelatorio fiscalizacao = (FiscalizacaoRelatorio)dataSource; fiscalizacao.OrgaoMunicipio = _configSys.Obter <String>(ConfiguracaoSistema.KeyOrgaoMunicipio); fiscalizacao.OrgaoUF = _configSys.Obter <String>(ConfiguracaoSistema.KeyOrgaoUf); if (fiscalizacao.Infracao.Campos.Count == 0) { doc.Find <Row>("«TableStart:Infracao.Campos»").Remove(); } if (fiscalizacao.Infracao.Perguntas.Count == 0) { doc.Find <Row>("«TableStart:Infracao.Perguntas»").Remove(); } if (fiscalizacao.ConsideracoesFinais.Anexos.Count == 0) { itenRemover.Add(doc.Last <Table>("«TableStart:ConsideracoesFinais.Anexos»")); doc.RemovePageBreak(); } #region Anexo Croqui da fiscalizacao /*List<ArquivoProjeto> arquivosProj = new ProjetoGeograficoBus().ObterArquivos(especificidade.Titulo.EmpreendimentoId.GetValueOrDefault(0), true).Where(x => x.Tipo == (int)eProjetoGeograficoArquivoTipo.Croqui).ToList(); * * autorizacao.AnexosPdfs = arquivosProj.Cast<Arquivo>().ToList(); * * //Obtendo Arquivos * ArquivoBus _busArquivo = new ArquivoBus(); * * for (int i = 0; i < autorizacao.AnexosPdfs.Count; i++) * { * autorizacao.AnexosPdfs[i] = _busArquivo.ObterDados(autorizacao.AnexosPdfs[i].Id.GetValueOrDefault(0)); * }*/ #endregion AsposeExtensoes.RemoveTables(itenRemover); }); #endregion Remover ConfiguracaoDefault.ExibirSimplesConferencia = gerarTarja; return(GerarPdf(dataSource)); }
public MemoryStream GerarLaudoAcompanhamentoFiscalizacao(int id, bool gerarTarja = true, BancoDeDados banco = null) { ArquivoDocCaminho = @"~/Content/_pdfAspose/Laudo_de_Fiscalizacao_Acompanhamento.docx"; AcompanhamentoRelatorio acompanhamento = _daAcompanhamento.Obter(id, banco: banco); int historicoId = _da.ObterHistoricoIdConcluido(acompanhamento.FiscalizacaoId, banco); FiscalizacaoRelatorio dataSource = _da.ObterHistorico(historicoId, banco); dataSource.Acompanhamento = acompanhamento; ConfiguracaoDefault.TextoTagAssinante = "«Assinante.Nome»"; ConfiguracaoDefault.TextoTagAssinantes1 = "«TableStart:Assinantes1»"; ConfiguracaoDefault.TextoTagAssinantes2 = "«TableStart:Assinantes2»"; if (dataSource.Acompanhamento != null && dataSource.Acompanhamento.Assinantes != null && dataSource.Acompanhamento.Assinantes.Count > 0) { var autor = dataSource.Acompanhamento.Assinantes.First(x => x.Id == dataSource.Acompanhamento.AgenteId); if (autor != null) { dataSource.Acompanhamento.Assinantes.Remove(autor); dataSource.Acompanhamento.Assinantes.Insert(0, autor); } ConfiguracaoDefault.Assinantes = dataSource.Acompanhamento.Assinantes.Cast <IAssinante>().ToList(); } ConfigurarCabecarioRodape(dataSource.Acompanhamento.SetorId); if (dataSource.Acompanhamento.Anexos != null && dataSource.Acompanhamento.Anexos.Count > 0) { foreach (ConsideracoesFinaisAnexoRelatorio anexo in dataSource.Acompanhamento.Anexos) { anexo.Arquivo.Conteudo = AsposeImage.RedimensionarImagem(File.ReadAllBytes(anexo.Arquivo.Caminho), 11, eAsposeImageDimensao.Ambos); } } ObterArquivoTemplate(); object objeto = dataSource; #region Remover this.ConfiguracaoDefault.AddLoadAcao((doc, a) => { List <Table> itenRemover = new List <Table>(); FiscalizacaoRelatorio fiscalizacao = (FiscalizacaoRelatorio)dataSource; fiscalizacao.OrgaoMunicipio = _configSys.Obter <String>(ConfiguracaoSistema.KeyOrgaoMunicipio); fiscalizacao.OrgaoUF = _configSys.Obter <String>(ConfiguracaoSistema.KeyOrgaoUf); if (fiscalizacao.Infracao.Campos.Count == 0) { doc.Find <Row>("«TableStart:Infracao.Campos»").Remove(); } if (fiscalizacao.Infracao.Perguntas.Count == 0) { doc.Find <Row>("«TableStart:Infracao.Perguntas»").Remove(); } if (fiscalizacao.Acompanhamento.Anexos.Count == 0) { itenRemover.Add(doc.Last <Table>("«TableStart:Acompanhamento.Anexos»")); doc.RemovePageBreak(); } AsposeExtensoes.RemoveTables(itenRemover); }); #endregion Remover ConfiguracaoDefault.ExibirSimplesConferencia = gerarTarja; return(GerarPdf(dataSource)); }