Skip to content

Conversation

@cris-eci
Copy link
Collaborator

Fix: Corregido error en la generación de reportes de sesiones de gimnasio

🐛 Problema

Se identificó un error crítico en la generación de reportes de gimnasio que causaba una excepción IllegalFormatConversionException: f != java.lang.Long cuando se intentaba crear un reporte en cualquier formato. Este problema impedía que los entrenadores y administradores pudieran generar reportes de uso del gimnasio.

🔍 Causa

El problema ocurría en la clase ReportServiceImpl.java en el método mapLine(), donde se intentaba formatear la duración de la sesión (un valor Long retornado por session.getDuration().toMinutes()) usando un especificador de formato para números de punto flotante (%.2f).

// Código problemático
String.format(
    "... | Duración Promedio: %.2f minutos",
    session.getDuration().toMinutes() // Esto devuelve un Long, no un Double
);

✅ Solución implementada

Se corrigió el especificador de formato para la duración de la sesión, cambiándolo de %.2f (punto flotante) a %d (entero), que es el formato adecuado para el tipo de dato retornado por toMinutes().

// Código corregido
String.format(
    "... | Duración Promedio: %d minutos",
    session.getDuration().toMinutes()
);

🧪 Pruebas realizadas

Se verificó que los tres tipos de reportes ahora funcionan correctamente:

  • Reporte de progreso de usuario ✓
  • Reporte de uso del gimnasio ✓
  • Estadísticas de asistencia ✓

Se probaron todos los formatos de salida (PDF, XLSX, CSV y JSON) para garantizar que la solución no afecta a ningún formato.

📋 Notas adicionales

  • Este arreglo es crucial para los requisitos de análisis de datos del sistema
  • Mejora la experiencia de los entrenadores que necesitan monitorear el uso del gimnasio
  • Mantiene consistente la generación de reportes, mostrando la duración en minutos enteros que es más natural para este contexto

Closes #147

@sonarqubecloud
Copy link

@cris-eci cris-eci merged commit 669b3ee into develop May 18, 2025
4 checks passed
@cris-eci cris-eci deleted the feature/reports-and-analysis-generation branch May 18, 2025 02:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants