Example #1
0
        //método para retornar os dados do gráfico..
        public JsonResult ObterMovimentacoes(MovimentacoesConsultaModel model)
        {
            try
            {
                //consultando todas as movimentações:
                var dados = movimentacaoFinanceiraApplicationService.Consultar(model);

                //retornando o total de receitas e despesas:
                var totalReceitas = new
                {
                    Name = "Receitas",
                    Data = new List <decimal>
                    {
                        dados.Where(m => m.TipoMovimentacao.Equals("Receita")).Sum(m => m.ValorMovimentacao)
                    }
                };

                var totalDespesas = new
                {
                    Name = "Despesas",
                    Data = new List <decimal>
                    {
                        dados.Where(m => m.TipoMovimentacao.Equals("Despesa")).Sum(m => m.ValorMovimentacao)
                    }
                };

                return(Json(new { totalReceitas, totalDespesas }));
            }
            catch (Exception e)
            {
                return(Json(e.Message));
            }
        }
Example #2
0
        public IActionResult Relatorio(MovimentacoesRelatorioModel model)
        {
            if (ModelState.IsValid)
            {
                var consulta = new MovimentacoesConsultaModel
                {
                    DataInicio  = model.DataInicio,
                    DataTermino = model.DataTermino
                };

                //consultando as movimentações
                var dados = movimentacaoFinanceiraApplicationService.Consultar(consulta);

                try
                {
                    //verificar o tipo do relatorio
                    switch (model.TipoRelatorio)
                    {
                    case "EXCEL":
                        var relatorioExcel = ExcelReport.GenerateReport
                                                 (DateTime.Parse(model.DataInicio), DateTime.Parse(model.DataTermino), dados);

                        //download do arquivo
                        Response.Clear();
                        Response.ContentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";
                        Response.Headers.Add("content-disposition", "attachment; filename=relatorio.xlsx");
                        Response.Body.WriteAsync(relatorioExcel, 0, relatorioExcel.Length);
                        Response.Body.Flush();
                        Response.StatusCode = StatusCodes.Status200OK;

                        break;

                    case "PDF":

                        var relatorioPDF = PDFReport.GenerateReport
                                               (DateTime.Parse(model.DataInicio), DateTime.Parse(model.DataTermino), dados);

                        //download do arquivo
                        Response.Clear();
                        Response.ContentType = "application/pdf";
                        Response.Headers.Add("content-disposition", "attachment; filename=relatorio.pdf");
                        Response.Body.WriteAsync(relatorioPDF, 0, relatorioPDF.Length);
                        Response.Body.Flush();
                        Response.StatusCode = StatusCodes.Status200OK;

                        break;
                    }
                }
                catch (Exception e)
                {
                    TempData["MensagemErro"] = e.Message;
                }
            }

            return(View());
        }
Example #3
0
        public List <MovimentacoesResultadoModel> Consultar(MovimentacoesConsultaModel model)
        {
            var lista = new List <MovimentacoesResultadoModel>();

            foreach (var item in movimentacaoFinanceiraDomainService
                     .Consultar(DateTime.Parse(model.DataInicio), DateTime.Parse(model.DataTermino)))
            {
                lista.Add(
                    new MovimentacoesResultadoModel
                {
                    IdMovimentacao    = item.Id,
                    NomeMovimentacao  = item.Nome,
                    DataMovimentacao  = item.Data,
                    ValorMovimentacao = item.Valor,
                    TipoMovimentacao  = item.TipoMovimentacao.ToString()
                }
                    );
            }

            return(lista);
        }
Example #4
0
        public IActionResult Consulta(MovimentacoesConsultaModel model)
        {
            if (ModelState.IsValid)
            {
                try
                {
                    //pesquisando as movimentações por datas..
                    var resultado = movimentacaoFinanceiraApplicationService.Consultar(model);
                    //enviando o resultado da pesquisa para a página
                    TempData["Resultado"] = resultado;

                    if (resultado.Count == 0)
                    {
                        TempData["MensagemAlerta"] = "Nenhuma movimentação foi encontrada para o periodo especificado.";
                    }
                }
                catch (Exception e)
                {
                    TempData["MensagemErro"] = e.Message;
                }
            }

            return(View());
        }