public async Task <IActionResult> Edit(TipoEntradaViewModel vm)
        {
            try
            {
                if (!ModelState.IsValid)
                {
                    throw new Exception("Error de validacion no controlado");
                }

                var tipoEntradaDto = new TipoEntradaDto()
                {
                    Id                 = vm.Id,
                    Nombre             = vm.Nombre,
                    EmpresaId          = vm.EmpresaId,
                    BeneficioEntradaId = vm.BeneficioEntradaId
                };

                await _tipoEntradaServicio.Modificar(tipoEntradaDto);

                return(RedirectToAction(nameof(Index)));
            }
            catch (Exception)
            {
                return(View(vm));
            }
        }
        public async Task <IActionResult> Edit(long id)
        {
            try
            {
                var dto = (TipoEntradaDto)await _tipoEntradaServicio.Obtener(id);

                var beneficiosEntrada = await _helperBeneficioEntrada.PoblarSelect();

                var vm = new TipoEntradaViewModel()
                {
                    Id                     = dto.Id,
                    EstaEliminado          = dto.EliminadoStr,
                    Nombre                 = dto.Nombre,
                    EmpresaId              = dto.EmpresaId,
                    BeneficioEntradaId     = dto.BeneficioEntradaId,
                    BeneficioEntradaNombre = await _helperBeneficioEntrada.ObtenerNombreBeneficioEntrada(dto.BeneficioEntradaId),
                    BeneficiosEntrada      = beneficiosEntrada
                };

                return(View(vm));
            }
            catch (Exception)
            {
                return(RedirectToAction(nameof(Index)));
            }
        }
        public async Task <TipoEntradaViewModel> Obtener(long tipoEntradaId)
        {
            var tipoEntrada = (TipoEntradaDto)await _tipoEntradaServicio.Obtener(tipoEntradaId);

            var model = new TipoEntradaViewModel()
            {
                Id = tipoEntrada.Id,
                BeneficioEntradaId     = tipoEntrada.BeneficioEntradaId,
                BeneficioEntradaNombre = await _helperBeneficioEntrada.ObtenerNombreBeneficioEntrada(tipoEntrada.BeneficioEntradaId),
                Nombre        = tipoEntrada.Nombre,
                EstaEliminado = tipoEntrada.EliminadoStr
            };

            return(model);
        }