예제 #1
0
        public ResultadoExportacao GerarArquivoAtividade(DadosExportacaoAtividadeModelo dados)
        {
            ResultadoExportacao resultadoExportacao = new ResultadoExportacao();

            try
            {
                string caminhoModelo = ArquivoDiretorioUtils.ObterDiretorioModelo();

                var caminhoGeracao = ArquivoDiretorioUtils.ObterDiretorioExportacaoAtividade();
                caminhoGeracao = ArquivoDiretorioUtils.ConstruirObterDiretorioData(caminhoGeracao);
                string caminhoCompletoExportacaoModelo = $"{caminhoModelo}LayoutExportacaoAtividade.xlsx";
                var    dataHora = DateTime.Now.ToString("dd_MM_yyy_HH_mm_ss");
                string caminhoCompletoExportacaoFinal = $"{caminhoGeracao}ExportacaoAtividadeGerada_{dataHora}.xlsx";
                ArquivoDiretorioUtils.CopiarArquivo(caminhoCompletoExportacaoModelo, caminhoCompletoExportacaoFinal);

                using (var workbook = new XLWorkbook(caminhoCompletoExportacaoFinal))
                {
                    ExportarDadosAtividade(workbook, dados);

                    workbook.Save();
                    workbook.Dispose();
                }

                string _b64 = Convert.ToBase64String(File.ReadAllBytes(caminhoCompletoExportacaoFinal));

                resultadoExportacao.planilha = _b64;

                return(resultadoExportacao);
            }
            catch (Exception)
            {
                throw;
            }
        }