public ActionResult Despesas(int?direcao, DateTime?DataInicio, DateTime?DataFim) { CatDespesaBusiness catDespesaBusiness = new CatDespesaBusiness(); if (DataInicio == null || DataFim == null && direcao == null) { DateTime PrimeiroDiadoMes = DateTime.Parse("01" + DateTime.Now.ToString("/MM/yyyy")); DateTime PrimeiroDiadoProximoMes = PrimeiroDiadoMes.AddMonths(1); DateTime UltimoDiadoMes = PrimeiroDiadoProximoMes.AddDays(-1); var despesas = dashboardBusiness.listarDespesas(User.Identity.Name, PrimeiroDiadoMes, UltimoDiadoMes); ViewBag.CatDespesas = catDespesaBusiness.Listar(); ViewBag.DataInicial = PrimeiroDiadoMes.ToString("yyyy-MM-dd"); ViewBag.DataFinal = UltimoDiadoMes.ToString("yyyy-MM-dd"); ViewBag.mes = meses[PrimeiroDiadoMes.Month] + " de " + PrimeiroDiadoMes.Year; return(View(despesas)); } if (DataInicio != null && DataFim != null && direcao == null) { DateTime dataInicial = Convert.ToDateTime(DataInicio); DateTime datafinal = Convert.ToDateTime(DataFim); var despesas = dashboardBusiness.listarDespesas(User.Identity.Name, DataInicio, DataFim); ViewBag.CatDespesas = catDespesaBusiness.Listar(); ViewBag.DataInicial = dataInicial.ToString("yyyy-MM-dd"); ViewBag.DataFinal = datafinal.ToString("yyyy-MM-dd"); if (meses[dataInicial.Month] == meses[datafinal.Month]) { ViewBag.mes = dataInicial.Day + " à " + datafinal.Day + " de " + meses[dataInicial.Month]; } else { ViewBag.mes = dataInicial.Day + " de " + meses[dataInicial.Month] + " à " + datafinal.Day + " de " + meses[datafinal.Month]; } return(PartialView("_ListaDespesa", despesas)); } if (DataInicio != null && DataFim == null && direcao != null) { if (direcao == 2) { DateTime dataInicial = Convert.ToDateTime(DataInicio); DateTime datat = dataInicial.AddMonths(1); DateTime dataInicialVirtual = new DateTime(datat.Year, datat.Month, 01); DateTime PrimeiroDiadoProximoMes = dataInicialVirtual.AddMonths(1); DateTime UltimoDiadoMes = PrimeiroDiadoProximoMes.AddDays(-1); var despesas = dashboardBusiness.listarDespesas(User.Identity.Name, dataInicialVirtual, UltimoDiadoMes); ViewBag.CatDespesas = catDespesaBusiness.Listar(); ViewBag.DataInicial = dataInicialVirtual.ToString("yyyy-MM-dd"); ViewBag.DataFinal = UltimoDiadoMes.ToString("yyyy-MM-dd"); ViewBag.mes = meses[dataInicialVirtual.Month] + " de " + dataInicialVirtual.Year; return(PartialView("_ListaDespesa", despesas)); } else { DateTime dataInicial = Convert.ToDateTime(DataInicio); DateTime datat = dataInicial.AddMonths(-1); DateTime dataInicialVirtual = new DateTime(datat.Year, datat.Month, 01); DateTime PrimeiroDiadoProximoMes = dataInicialVirtual.AddMonths(1); DateTime UltimoDiadoMes = PrimeiroDiadoProximoMes.AddDays(-1); var despesas = dashboardBusiness.listarDespesas(User.Identity.Name, dataInicialVirtual, UltimoDiadoMes); ViewBag.CatDespesas = catDespesaBusiness.Listar(); ViewBag.DataInicial = dataInicialVirtual.ToString("yyyy-MM-dd"); ViewBag.DataFinal = UltimoDiadoMes.ToString("yyyy-MM-dd"); ViewBag.mes = meses[dataInicialVirtual.Month] + " de " + dataInicialVirtual.Year; return(PartialView("_ListaDespesa", despesas)); } } return(PartialView()); }