コード例 #1
0
        public ActionResult SimularOportunidade(int simuladorOportunidadeId, int simuladorParametroId, int modeloSimuladorId)
        {
            using (var wsSimulador = new WsSimulador.SimuladorCalculo())
            {
                wsSimulador.Timeout = 900000;

                var response = wsSimulador.SimuladorOportunidade(simuladorOportunidadeId, simuladorParametroId, modeloSimuladorId, User.ObterId());

                if (response == null)
                {
                    return(PartialView("_ErroSimulador", new SimuladorDownloadRelatorioViewModel("Nenhum retorno do serviço do Simulador")));
                }

                if (response.Sucesso == false)
                {
                    return(PartialView("_ErroSimulador", new SimuladorDownloadRelatorioViewModel(response.Mensagem)));
                }
                else
                {
                    AnexosDTO anexoBusca = null;

                    if (response.ArquivoId > 0)
                    {
                        anexoBusca = _anexoRepositorio.ObterDetalhesAnexo(response.ArquivoId);

                        if (anexoBusca == null)
                        {
                            return(PartialView("_ErroSimulador", new SimuladorDownloadRelatorioViewModel("Anexo não encontrado")));
                        }
                    }

                    return(PartialView("_SucessoSimulador", new SimuladorDownloadRelatorioViewModel
                    {
                        NomeArquivo = anexoBusca?.Anexo ?? response.NomeArquivo,
                        ArquivoId = anexoBusca?.IdFile ?? response.Hash,
                        Hash = response.Hash,
                        TamanhoArquivo = string.Format("{0} kb", response.TamanhoArquivo / 1024)
                    }));
                }
            }
        }
コード例 #2
0
        public ActionResult SimularTabelas(int simuladorId, string tabelas, bool completo, bool vertical)
        {
            try
            {
                var simulador = _simuladorRepositorio.ObterDetalhesSimuladorPorId(simuladorId);

                if (simulador == null)
                {
                    return(new HttpStatusCodeResult(HttpStatusCode.BadRequest, "Simulador não encontrado"));
                }

                using (var wsSimulador = new WsSimulador.SimuladorCalculo())
                {
                    wsSimulador.Timeout = 900000;

                    if (completo)
                    {
                        tabelas = string.Join(",", ConsultarTabelasSimulador(simulador, (int?)ViewBag.UsuarioExternoId).Select(c => c.Id));
                    }

                    var response = wsSimulador.CalcularTabelas(simulador.Id, tabelas, false);

                    if (response == null)
                    {
                        return(PartialView("_Erro", new SimuladorDownloadRelatorioViewModel("Nenhum retorno do serviço do Simulador")));
                    }

                    if (response.Sucesso == false)
                    {
                        return(PartialView("_Erro", new SimuladorDownloadRelatorioViewModel(response.Mensagem)));
                    }
                    else
                    {
                        var responseRelatorio = wsSimulador.GerarRelatorioExcel(simulador.Id, false, false, true, false, DateTime.Now.AddMonths(-6).ToString("dd/MM/yyyy"), DateTime.Now.ToString("dd/MM/yyyy"), false, vertical);

                        if (responseRelatorio.Sucesso == false)
                        {
                            return(PartialView("_Erro", new SimuladorDownloadRelatorioViewModel(responseRelatorio.Mensagem)));
                        }

                        var anexoBusca = _anexoRepositorio.ObterDetalhesAnexo(responseRelatorio.ArquivoId);

                        if (anexoBusca == null)
                        {
                            return(PartialView("_Erro", new SimuladorDownloadRelatorioViewModel("Anexo não encontrado")));
                        }

                        return(PartialView("_Sucesso", new SimuladorDownloadRelatorioViewModel
                        {
                            SimuladorId = simulador.Id,
                            NomeArquivo = anexoBusca.Anexo,
                            ArquivoId = anexoBusca.IdFile,
                            TamanhoArquivo = string.Format("{0} kb", responseRelatorio.TamanhoArquivo / 1024)
                        }));
                    }
                }
            }
            catch (Exception ex)
            {
                return(PartialView("_Erro", new SimuladorDownloadRelatorioViewModel(ex.Message)));
            }
        }