Class Estadistica

java.lang.Object
model.operaciones.Estadistica

public class Estadistica extends Object
Clase que genera estadisticas y reportes del gimnasio. Permite calcular ocupacion promedio, analizar horas pico de acceso, generar reportes diarios y estadisticas por tipo de membresia o clase.
Version:
1.0
Author:
ISC Israel de Jesus Mar Parada
See Also:
  • Constructor Details

    • Estadistica

      public Estadistica()
      Constructor de la clase Estadistica. Inicializa la lista de horas pico como vacia y la ocupacion promedio en cero.
  • Method Details

    • CalcularOcupacionPromedio

      public void CalcularOcupacionPromedio(List<RegistroVisita> visitas)
      Calcula la ocupacion promedio del gimnasio basado en las visitas. Agrupa las visitas por hora y calcula el promedio de visitas por hora.
      Parameters:
      visitas - Lista de registros de visita a analizar
    • AnalizarHorasPico

      public void AnalizarHorasPico(List<RegistroVisita> visitas)
      Analiza y determina las horas pico de acceso al gimnasio. Identifica las horas con mayor cantidad de visitas registradas.
      Parameters:
      visitas - Lista de registros de visita a analizar
    • GenerarReporteDiario

      public String GenerarReporteDiario(List<RegistroVisita> visitas)
      Genera un reporte diario completo del gimnasio. Incluye total de visitas, visitas a gimnasio, visitas a clases, ocupacion promedio y horas pico.
      Parameters:
      visitas - Lista de registros de visita del dia
      Returns:
      Reporte formateado como String
    • generarEstadisticasPorMembresia

      public Map<String,Long> generarEstadisticasPorMembresia(List<RegistroVisita> visitas)
      Genera estadisticas de visitas agrupadas por tipo de membresia.
      Parameters:
      visitas - Lista de registros de visita
      Returns:
      Mapa con el conteo de visitas por tipo de membresia
    • generarEstadisticasPorClase

      public Map<String,Long> generarEstadisticasPorClase(List<RegistroVisita> visitas)
      Genera estadisticas de visitas agrupadas por tipo de clase.
      Parameters:
      visitas - Lista de registros de visita
      Returns:
      Mapa con el conteo de visitas por tipo de clase
    • getOcupacionPromedio

      public BigDecimal getOcupacionPromedio()
      Returns:
      Ocupacion promedio (personas por hora)
    • setOcupacionPromedio

      public void setOcupacionPromedio(BigDecimal ocupacionPromedio)
      Parameters:
      ocupacionPromedio - Nueva ocupacion promedio
    • getHorasPicoAcceso

      public List<LocalTime> getHorasPicoAcceso()
      Returns:
      Lista de horas pico de acceso
    • setHorasPicoAcceso

      public void setHorasPicoAcceso(List<LocalTime> horasPicoAcceso)
      Parameters:
      horasPicoAcceso - Nueva lista de horas pico