private static void TesteFlexcelSimples(RelatoriosFlexcelUtilitario relatorios) { List <TesteFlexcellProjecao> lista = new List <TesteFlexcellProjecao>(); lista.Add(new TesteFlexcellProjecao() { ValorString_1 = "Teste1", ValorData_2 = new DateTime(2020, 10, 8), ValorNumero_3 = 12345, ValorDecimal_4 = 10.25M, ValorBool_5 = true }); lista.Add(new TesteFlexcellProjecao() { ValorString_1 = "Teste2", ValorData_2 = new DateTime(2019, 5, 28), ValorNumero_3 = 1000234, ValorDecimal_4 = -10.25M, ValorBool_5 = false }); lista.Add(new TesteFlexcellProjecao() { ValorString_1 = "Teste3", ValorData_2 = new DateTime(2017, 12, 12), ValorNumero_3 = 1897653, ValorDecimal_4 = 198653.99999M, ValorBool_5 = true }); lista.Add(new TesteFlexcellProjecao() { ValorString_1 = "Teste4", ValorData_2 = new DateTime(1989, 4, 1), ValorNumero_3 = 0, ValorDecimal_4 = 999999.999999M, ValorBool_5 = false }); lista.Add(new TesteFlexcellProjecao() { ValorString_1 = "Teste5", ValorData_2 = new DateTime(1993, 9, 24), ValorNumero_3 = -1256, ValorDecimal_4 = -999999.999999M, ValorBool_5 = false }); relatorios.GerarExcel <TesteFlexcellProjecao>(lista.ToList(), "Dados", @"D:\Arquitetura\Poc Microservicos\ApiAcme\RelatoriosTemplates\TemplatePadrao.xlsx", @"D:\Arquitetura\Poc Microservicos\ApiAcme\RelatoriosTemplates\RelatoriosGerados\FlexcelPadrao.xlsx"); }
public HttpResponseMessage GetReportAuthors(TypeReportEnum typeReport, SortOrderAuthorEnum sortOrder) { string nomeArquivo = "AuthorsTeste1.xlsx"; string path = @"D:\Arquitetura\Poc Microservicos\ApiAcme\RelatoriosTemplates\"; string pathArquivo = path + nomeArquivo; string contentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"; var authors = from s in _context.Authors .Include(a => a.Posts) select s; authors = ChangeSortOrder(sortOrder, authors); authors = authors.Where(a => a.Posts.Count > 0).Take(10); RelatoriosFlexcelUtilitario relatorios = new RelatoriosFlexcelUtilitario(); relatorios.GerarExcel <Authors>(authors.ToList(), "Authors", @"D:\Arquitetura\Poc Microservicos\ApiAcme\RelatoriosTemplates\AuthorsTemplate.xlsx", @"D:\Arquitetura\Poc Microservicos\ApiAcme\RelatoriosTemplates\RelatoriosGerados\AuthorsTeste1.xlsx"); relatorios.GerarExcel <Authors>(authors.ToList(), "Authors", @"D:\Arquitetura\Poc Microservicos\ApiAcme\RelatoriosTemplates\AuthorsTemplate2.xlsx", @"D:\Arquitetura\Poc Microservicos\ApiAcme\RelatoriosTemplates\RelatoriosGerados\AuthorsTeste2.xlsx"); switch (typeReport) { case TypeReportEnum.Xlsx: nomeArquivo = "AuthorsTeste1.xlsx"; contentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"; break; case TypeReportEnum.Pdf: nomeArquivo = "AuthorsTeste1.pdf"; contentType = "application/pdf"; relatorios.ExportToPdf(@"D:\Arquitetura\Poc Microservicos\ApiAcme\RelatoriosTemplates\RelatoriosGerados\AuthorsTeste1.xlsx", @"D:\Arquitetura\Poc Microservicos\ApiAcme\RelatoriosTemplates\RelatoriosGerados\AuthorsTeste1.pdf"); relatorios.ExportToPdf(@"D:\Arquitetura\Poc Microservicos\ApiAcme\RelatoriosTemplates\RelatoriosGerados\AuthorsTeste2.xlsx", @"D:\Arquitetura\Poc Microservicos\ApiAcme\RelatoriosTemplates\RelatoriosGerados\AuthorsTeste2.pdf"); break; case TypeReportEnum.Html: nomeArquivo = "AuthorsTeste1.html"; contentType = "text/html"; relatorios.ExportToHtml(@"D:\Arquitetura\Poc Microservicos\ApiAcme\RelatoriosTemplates\RelatoriosGerados\AuthorsTeste1.xlsx", @"D:\Arquitetura\Poc Microservicos\ApiAcme\RelatoriosTemplates\RelatoriosGerados\AuthorsTeste1.html"); relatorios.ExportToHtml(@"D:\Arquitetura\Poc Microservicos\ApiAcme\RelatoriosTemplates\RelatoriosGerados\AuthorsTeste2.xlsx", @"D:\Arquitetura\Poc Microservicos\ApiAcme\RelatoriosTemplates\RelatoriosGerados\AuthorsTeste2.html"); break; default: break; } TesteFlexcelSimples(relatorios); if (System.IO.File.Exists(pathArquivo)) { HttpResponseMessage result = new HttpResponseMessage(HttpStatusCode.OK); //TMS //Response.Clear(); //Response.AddHeader("Content-Disposition", "attachment;" //+ "filename=Test.xls"); //Response.AddHeader("Content-Length", //ms.Length.ToString()); //Response.ContentType = "application/excel"; //Response.BinaryWrite(ms.ToArray()); //Response.End(); //var stream = new FileStream(pathArquivo, FileMode.Open); //stream.Position = 0; //result.Content = new StreamContent(stream); //result.Content.Headers.ContentDisposition = new System.Net.Http.Headers.ContentDispositionHeaderValue("attachment") { FileName = pathArquivo }; //result.Content.Headers.ContentType = new System.Net.Http.Headers.MediaTypeHeaderValue(contenType); //result.Content.Headers.ContentDisposition.FileName = pathArquivo; return(result); } else { HttpResponseMessage result = new HttpResponseMessage(HttpStatusCode.Gone); return(result); } }