Sistema de gestión para gimnasio desarrollado en Python con interfaz gráfica Tkinter.
Aplicación informática para llevar el control de la gestión de un gimnasio que opera 24 horas de lunes a viernes. El sistema incluye autenticación de usuarios y control de acceso basado en roles.
- Autenticación de usuarios con login y registro
- Gestión de clientes (alta, baja, modificación)
- Gestión de aparatos de entrenamiento
- Reserva de aparatos (sesiones de 30 minutos)
- Control de ocupación por día y tipo de aparato
- Control de pagos mensuales (50€/mes)
- Listado de clientes morosos
- Interfaz con tema oscuro (rojo, negro, gris, amarillo)
Al iniciar la aplicación por primera vez, se crea automáticamente un usuario administrador:
Email: admin@gymforthemoment.com
Contraseña: admin123
Los nuevos usuarios pueden registrarse desde la pantalla de login. Por defecto, todos los usuarios registrados tienen rol de empleado.
- admin: Acceso completo al sistema
- empleado: Acceso a las funciones operativas
Python-Gym/
├── docs/
│ ├── requisitos_funcionales.md
│ ├── diagrama_casos_uso.md
│ └── diagrama_er.md
├── src/
│ ├── main.py
│ ├── database/
│ │ ├── __init__.py
│ │ └── db_manager.py
│ ├── gui/
│ │ ├── __init__.py
│ │ ├── login.py
│ │ └── app.py
│ └── utils/
│ ├── __init__.py
│ └── helpers.py
├── insertar_datos_prueba.py
├── requirements.txt
├── .gitignore
└── README.md
- Clonar el repositorio
git clone https://github.com/AleGonz2812/Python-Gym.git
cd Python-Gym- Instalar dependencias (solo Python 3.8+ con tkinter)
pip install -r requirements.txt- Ejecutar la aplicación
python src/main.pyPara facilitar las pruebas, puedes insertar datos de ejemplo ejecutando:
python insertar_datos_prueba.pyEsto agregará:
- 5 clientes de ejemplo
- 7 aparatos de ejemplo
- Varias reservas de ejemplo
- Iniciar sesión con las credenciales de admin o crear una nueva cuenta
- Gestionar clientes: Alta, baja y modificación de clientes
- Gestionar aparatos: Añadir equipos de entrenamiento
- Crear reservas: Asignar aparatos a clientes por franjas de 30 minutos
- Ver ocupación: Consultar disponibilidad por día y tipo de aparato
- Gestionar pagos: Controlar los pagos mensuales de 50€
- Control de morosos: Identificar clientes con pagos pendientes
La interfaz utiliza un esquema de colores personalizado:
- Rojo Crimson (#DC143C) - Color principal
- Negro (#1a1a1a) - Fondo
- Gris (#2d2d2d, #505050) - Elementos
- Amarillo Dorado (#FFD700) - Acentos
El sistema utiliza SQLite con las siguientes tablas:
usuario- Usuarios del sistemacliente- Clientes del gimnasioaparato- Equipos de entrenamientoreserva- Reservas de aparatosrecibo- Pagos mensuales
Alejandro González - @AleGonz2812
Proyecto individual para gymforthemoment
Este proyecto está bajo la Licencia MIT