public ActionResult Resumen(int?ciudadId, int?facilityId, int?nivelId)
        {
            ViewBag.CiudadId   = new SelectList(ciudadesManager.GetAllCiudades(), "Id", "Nombre");
            ViewBag.FacilityId = ciudadId != null
                ? new SelectList(facilitiesManager.GetFacilitiesPorCiudad(ciudadId.Value), "Id", "NombreDespliegue")
                : new SelectList(facilitiesManager.GetAllFacilities(), "Id", "NombreDespliegue");

            var presupuestoActual = presupuestosManager.GetPresupuestoActual();

            ViewBag.CiudadOrigenId = ciudadId;

            var resumen = reportesManager.GetReportePresupuestoResumen(presupuestoActual.Id, ciudadId, facilityId);


            var nivelesIds = new List <int>();

            if (resumen.Count > 0 && nivelId != null && nivelId.Value > 0)
            {
                switch (nivelId.Value)
                {
                case 1:
                    nivelesIds = new List <int> {
                        1
                    };
                    break;

                case 2:
                    nivelesIds = new List <int> {
                        1, 2
                    };
                    break;

                case 3:
                    nivelesIds = new List <int> {
                        1, 2, 3
                    };
                    break;
                }
                resumen = resumen.Where(r => nivelesIds.Contains(r.NivelProgramaticoId.Value)).ToList();
            }

            var codigosGastos = new List <string> {
                "10000", "20000", "30000", "40000"
            };
            var resumenGastos   = resumen.Where(r => r.NivelProgramaticoId == 1 && codigosGastos.Contains(r.Codigo)).ToList();
            var resumenIngresos = resumen.Where(r => r.NivelProgramaticoId == 1 && r.Codigo.StartsWith("5")).ToList();

            var totalGastos   = resumenGastos.Sum(r => r.Total);
            var totalIngresos = resumenIngresos.Sum(r => r.Total);
            var totalSubsidio = totalGastos + totalIngresos;

            ViewBag.TotalGasto    = totalGastos;
            ViewBag.TotalIngreso  = totalIngresos;
            ViewBag.TotalSubsidio = totalSubsidio;

            return(View(resumen));
        }