public IActionResult GetIngresosMensualesForm()
        {
            var model = new IngresosMensualesViewModel();

            model.LoadMovimientoList(familyResearchRepository);
            ViewBag.HasErrorMessage = false;

            return(PartialView("_IngresosMensualesForm", model));
        }
        public IActionResult GetIngresosMensualesTable()
        {
            IngresosMensualesViewModel        ingresosMensualesViewModel = new IngresosMensualesViewModel();
            List <IngresosMensualesViewModel> table = SessionState.UserSession.GetDataCollection <List <IngresosMensualesViewModel> >(Constants.FamilyResearch_IngresosMensuales_Table);

            if (table != null)
            {
                ingresosMensualesViewModel.LoadMovimientoList(familyResearchRepository);

                foreach (var iter in table)
                {
                    iter.Movimiento = ingresosMensualesViewModel.MovimientoList.Where(m => m.Id == iter.MovimientoId).FirstOrDefault();
                }
            }

            return(PartialView("_IngresosMensualesTable", table));
        }
        public IActionResult AddItemInIngresosMensualesTable([FromBody] IngresosEgresosMensualesMovimientoRelation model)
        {
            IngresosMensualesViewModel ingresosMensualesViewModel = new IngresosMensualesViewModel()
            {
                Monto        = model?.Monto,
                MovimientoId = model?.MovimientoId
            };

            ViewBag.HasErrorMessage = false;

            ingresosMensualesViewModel.LoadMovimientoList(familyResearchRepository);

            if (ModelState.IsValid == true)
            {
                bool IsItemValid = true;
                List <IngresosMensualesViewModel> table = SessionState.UserSession.GetDataCollection <List <IngresosMensualesViewModel> >(Constants.FamilyResearch_IngresosMensuales_Table);
                if (table != null)
                {
                    foreach (var iter in table)
                    {
                        if (iter.MovimientoId == model.MovimientoId)
                        {
                            ViewBag.ErrorMessage    = "No puede duplicar los ingresos";
                            ViewBag.HasErrorMessage = true;
                            IsItemValid             = false;
                            break;
                        }
                    }
                }

                if (IsItemValid == true)
                {
                    ingresosMensualesViewModel.Key = string.Empty.GetUniqueKey();
                    SessionState.UserSession.AddItemInDataCollection <IngresosMensualesViewModel>(Constants.FamilyResearch_IngresosMensuales_Table, ingresosMensualesViewModel);
                }
            }

            return(PartialView("_IngresosMensualesForm", ingresosMensualesViewModel));
        }