Exemplo n.º 1
0
        private string PrepararIconeRelatorio(CentroCusto centroCusto, ParametrosOrcamento parametros)
        {
            var caminhoImagem  = string.Empty;
            var iconeRelatorio = ObterIconeRelatorio(centroCusto) ?? parametros.IconeRelatorio;

            if (iconeRelatorio == null)
            {
                string diretorio = AppDomain.CurrentDomain.BaseDirectory + "/Content/img/sigim_AzulCopia.png";

                System.Uri uri = new System.Uri(diretorio);

                using (System.Drawing.Image image = System.Drawing.Image.FromFile(diretorio))
                {
                    using (System.IO.MemoryStream memoryStream = new System.IO.MemoryStream())
                    {
                        image.Save(memoryStream, System.Drawing.Imaging.ImageFormat.Bmp);
                        iconeRelatorio = memoryStream.ToArray();
                    }
                }
            }

            if (iconeRelatorio != null)
            {
                caminhoImagem = DiretorioImagemRelatorio + Guid.NewGuid().ToString() + ".bmp";
                System.Drawing.Image imagem = iconeRelatorio.ToImage();
                imagem.Save(caminhoImagem, System.Drawing.Imaging.ImageFormat.Bmp);
            }

            return(caminhoImagem);
        }
Exemplo n.º 2
0
 private string ObterNomeEmpresa(CentroCusto centroCusto, ParametrosOrcamento parametros)
 {
     if (centroCusto != null)
     {
         var centroCustoEmpresa = centroCusto.ListaCentroCustoEmpresa.FirstOrDefault();
         if (centroCustoEmpresa != null)
         {
             return(centroCustoEmpresa.Cliente.Nome);
         }
     }
     return(!string.IsNullOrEmpty(parametros.EmpresaNomeRaiz) ? parametros.EmpresaNomeRaiz : string.Empty);
 }
Exemplo n.º 3
0
        public FileDownloadDTO ExportarRelOrcamento(RelOrcamentoFiltro filtro, OrcamentoDTO orcamentoDTO, FormatoExportacaoArquivo formato)
        {
            DataTable dtaRelatorio = new DataTable();

            FileDownloadDTO arquivo = new FileDownloadDTO("Rel. Orçamento ", new System.IO.MemoryStream(), formato);

            if (orcamentoDTO == null)
            {
                return(arquivo);
            }

            ParametrosOrcamento parametros = parametrosOrcamentoRepository.Obter();
            var centroCusto   = centroCustoRepository.ObterPeloCodigo(orcamentoDTO.Obra.CentroCusto.Codigo, l => l.ListaCentroCustoEmpresa);
            var caminhoImagem = PrepararIconeRelatorio(centroCusto, parametros);
            var nomeEmpresa   = ObterNomeEmpresa(centroCusto, parametros);

            if (!filtro.EhClasse)
            {
                relOrcamento objRelOrcamento = new relOrcamento();

                dtaRelatorio = RelOrcamentoToDataTable(orcamentoDTO, false);

                objRelOrcamento.SetDataSource(dtaRelatorio);

                objRelOrcamento.SetParameterValue("ComBDI", filtro.EhBDI);
                objRelOrcamento.SetParameterValue("SemDetalhamento", filtro.EhSemDetalhamento);
                objRelOrcamento.SetParameterValue("TotalBDI", filtro.BDITotal);
                objRelOrcamento.SetParameterValue("ValorTotal", filtro.PrecoTotal);
                objRelOrcamento.SetParameterValue("NomeIndice", filtro.NomeIndice);
                objRelOrcamento.SetParameterValue("Defasagem", filtro.Defasagem);
                objRelOrcamento.SetParameterValue("DataBase", filtro.DataBase);
                objRelOrcamento.SetParameterValue("CotacaoBase", filtro.CotacaoBase);
                objRelOrcamento.SetParameterValue("DataAtual", filtro.DataAtual);
                objRelOrcamento.SetParameterValue("CotacaoAtual", filtro.CotacaoAtual);
                objRelOrcamento.SetParameterValue("ValorCorrigido", filtro.EhValorCorrigido);
                objRelOrcamento.SetParameterValue("AreaConstrucaoAreaReal", filtro.AreaConstrucaoAreaReal);
                objRelOrcamento.SetParameterValue("AreaConstrucaoAreaEquivalente", filtro.AreaConstrucaoAreaEquivalente);
                objRelOrcamento.SetParameterValue("caminhoImagem", caminhoImagem);

                arquivo = new FileDownloadDTO("Rel. Orçamento", objRelOrcamento.ExportToStream((ExportFormatType)formato), formato);
            }
            else
            {
                relOrcamentoClasse objRelOrcamentoClasse = new relOrcamentoClasse();

                dtaRelatorio = RelOrcamentoToDataTable(orcamentoDTO, true);

                objRelOrcamentoClasse.SetDataSource(dtaRelatorio);

                objRelOrcamentoClasse.SetParameterValue("ComBDI", filtro.EhBDI);
                objRelOrcamentoClasse.SetParameterValue("SemDetalhamento", filtro.EhSemDetalhamento);
                objRelOrcamentoClasse.SetParameterValue("TotalBDI", filtro.BDITotal);
                objRelOrcamentoClasse.SetParameterValue("ValorTotal", filtro.PrecoTotal);
                objRelOrcamentoClasse.SetParameterValue("NomeIndice", filtro.NomeIndice);
                objRelOrcamentoClasse.SetParameterValue("Defasagem", filtro.Defasagem);
                objRelOrcamentoClasse.SetParameterValue("DataBase", filtro.DataBase);
                objRelOrcamentoClasse.SetParameterValue("CotacaoBase", filtro.CotacaoBase);
                objRelOrcamentoClasse.SetParameterValue("DataAtual", filtro.DataAtual);
                objRelOrcamentoClasse.SetParameterValue("CotacaoAtual", filtro.CotacaoAtual);
                objRelOrcamentoClasse.SetParameterValue("ValorCorrigido", filtro.EhValorCorrigido);
                objRelOrcamentoClasse.SetParameterValue("AreaConstrucaoAreaReal", filtro.AreaConstrucaoAreaReal);
                objRelOrcamentoClasse.SetParameterValue("AreaConstrucaoAreaEquivalente", filtro.AreaConstrucaoAreaEquivalente);
                objRelOrcamentoClasse.SetParameterValue("caminhoImagem", caminhoImagem);

                arquivo = new FileDownloadDTO("Rel. Orçamento Classe", objRelOrcamentoClasse.ExportToStream((ExportFormatType)formato), formato);
            }

            if (System.IO.File.Exists(caminhoImagem))
            {
                System.IO.File.Delete(caminhoImagem);
            }

            return(arquivo);
        }