public async Task <WrapperSimpleTypesDTO> CrearHistorialPagoPersona(HistorialPagosPersonas historialPagoParaCrear)
        {
            using (SportsGoEntities context = new SportsGoEntities(false))
            {
                PagosRepository pagosRepo = new PagosRepository(context);

                bool existePagoEnTramite = await pagosRepo.VerificarQueNoExistaUnPagoEnTramite(historialPagoParaCrear);

                if (existePagoEnTramite)
                {
                    throw new InvalidOperationException("Ya existe un pago en tramite, espera por la aprobacion o cancelalo si esta en pendiente!.");
                }

                historialPagoParaCrear.FechaPago     = DateTime.Now;
                historialPagoParaCrear.EstadoDelPago = EstadoDeLosPagos.EsperaPago;

                Monedas monedaDelPais = await pagosRepo.BuscarMonedaDeUnPais(historialPagoParaCrear.CodigoPais);

                historialPagoParaCrear.CodigoMoneda = monedaDelPais.Consecutivo;

                PlanesRepository planRepo      = new PlanesRepository(context);
                decimal?         precioDelPlan = await planRepo.BuscarPrecioDeUnPlan(historialPagoParaCrear.CodigoPlan);

                historialPagoParaCrear.Precio = precioDelPlan.Value;

                historialPagoParaCrear.Paises     = null;
                historialPagoParaCrear.Monedas    = null;
                historialPagoParaCrear.Personas   = null;
                historialPagoParaCrear.Planes     = null;
                historialPagoParaCrear.EstadoPago = null;

                pagosRepo.CrearHistorialPagoPersona(historialPagoParaCrear);

                WrapperSimpleTypesDTO wrapperCrearHistorialPagoPersona = new WrapperSimpleTypesDTO();

                wrapperCrearHistorialPagoPersona.NumeroRegistrosAfectados = await context.SaveChangesAsync();

                if (wrapperCrearHistorialPagoPersona.NumeroRegistrosAfectados > 0)
                {
                    wrapperCrearHistorialPagoPersona.Exitoso           = true;
                    wrapperCrearHistorialPagoPersona.ConsecutivoCreado = historialPagoParaCrear.Consecutivo;
                }

                return(wrapperCrearHistorialPagoPersona);
            }
        }