Exemplo n.º 1
0
        public JsonResult GeraArquivo(int codRevisao)
        {
            try
            {
                /** REVISÃO **/
                var revisao = _revisaoAppService.ListarRevisaoGeraArquivoNew(codRevisao);

                string[] cabecalhoRevisao = new[] { "Sistema", "Data Início", "Data Fim", "Situação", "Responsável", "Histórico da Revisão", "Dispensa de Revisão" };

                PlanilhaHelper excel = new PlanilhaHelper();

                excel.AdicionarPlanilha("Dados da Revisão");

                excel.GerarPlanilhaRevisao(cabecalhoRevisao, revisao);

                /** PEDIDO **/

                var pedidos = _pedidoAppService.ListarPedidosGeraArquivo(codRevisao);

                string[] cabecalhoPedido = new[] {
                    "Número do Pedido", "Tipo do Pedido", "Usuário do Pedido", "Data da criação",
                    "Data da expiração", "Situação do Pedido", "Usuário Solicitante", "E-mail", "Ramal",
                    "Gestor", "Avaliador", "Histórico do Pedido[Data Orcorrência|Responsável|Descrição]", "Observações da Avaliação",
                    "Codigo do Acesso", "Situação do Acesso", "Nível", "Conteúdo do Nível", "Histórico do Acesso[Data Orcorrência|Responsável|Descrição]"
                };

                excel.AdicionarPlanilha("Dados dos Pedidos");

                excel.GerarPlanilhaPedido(cabecalhoPedido, pedidos);

                string handle = Guid.NewGuid().ToString();

                TempData[handle] = excel.RetornarPlanilha();

                CultureInfo cult        = new CultureInfo("pt-BR");
                string      nomeArquivo = "HistoricoDocumento_" + DateTime.Now.ToString("dd/MM/yyyy_HHmmss", cult) + ".xls";

                return(Json(new { FileGuid = handle, FileName = nomeArquivo }, JsonRequestBehavior.AllowGet));
            }
            catch (Exception ex)
            {
                log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType).Error(ex);
                throw;
            }
        }