Sistema de Gestión

Guía de
Implementación

Documentación técnica y hoja de ruta para pasar de la demo a un sistema en producción.

01 — ESTADO ACTUAL

Qué tienes ahora

Una demo funcional con datos sintéticos que simula el sistema completo.

50
Alumnos
30
Profesores
81
Actividades
7
Tipos de Pago
👥

Gestión de Alumnos

Alta, baja y modificación de alumnos. Gestión de tutores para menores. Búsqueda y filtrado por sede, estado y nombre.

📋

Inscripciones

Control de matrículas en actividades. Asignación de profesor, horario y sede. Estados: activa, pendiente, baja.

📅

Horarios

Vista semanal de clases. Filtrado por profesor, sede y día. Visualización del número de alumnos por clase.

📊

Ausencias

Registro de ausencias con motivo. Clasificación: justificadas y no justificadas. Impacto en cálculo de pagos.

💰

Cálculo de Pagos

Motor con 7 tipos de pago: hora, alumno, fijo, mixto alumno, mixto porcentaje, mixto hora/alumno.

📈

Dashboard

Estadísticas en tiempo real. Distribución por área y sede. Ingresos estimados y últimas actividades.

02 — ARQUITECTURA

Cómo funciona

Stack tecnológico actual y flujo de datos en el sistema.

Usuario
Flask (Python)
SQLite
Componente Demo (Actual) Producción (Futuro)
Base de datos SQLite Archivo local PostgreSQL Supabase
Backend Flask localhost:5000 FastAPI Railway/Vercel
Frontend Jinja2 Templates HTML React/Next.js SPA
Autenticación Ninguna Supabase Auth JWT
Hosting Local Tu máquina Cloud Vercel + Supabase
Datos Sintéticos Faker Reales Migración

Tipos de Pago Implementados

Tipo Fórmula Ejemplo
hora tarifa_hora × horas_mes 25€/h × 16h = 400€
alumno tarifa_alumno × num_alumnos 8€ × 15 alumnos = 120€
fijo cantidad_fija 800€/mes
mixto_alumno fijo + (tarifa × alumnos) 300€ + (5€ × 20) = 400€
mixto_porcentaje fijo + (ingresos × %) 200€ + (2000€ × 15%) = 500€
mixto_hora_alumno (hora × h) + (alumno × n) (20€ × 10h) + (3€ × 15) = 245€
03 — PRODUCCIÓN

Pasos para ir en serio

Hoja de ruta para convertir la demo en un sistema real.

1

Migrar Base de Datos

SQLite → PostgreSQL en Supabase (gratis hasta 500MB)

# Crear proyecto en supabase.com
$ pg_dump factoria_demo.db > backup.sql
# Importar en Supabase Dashboard → SQL Editor
2

Implementar Autenticación

Supabase Auth con roles: Admin, Secretaría, Profesor, Familia

# Activar Auth en Supabase
# Configurar proveedores: Email, Google
# Implementar RLS (Row Level Security)
3

Migrar Datos Reales

Importar datos actuales desde Google Sheets

# Exportar Sheets a CSV
$ python scripts/import_from_sheets.py
# Validar integridad de datos
4

Desplegar en Cloud

Frontend en Vercel, Backend en Railway/Supabase Edge Functions

# Conectar repo a Vercel
$ vercel deploy --prod
✓ https://factoria.vercel.app
5

Conectar Integraciones

Phidias (ausencias), Email (Resend), WhatsApp Business

# Configurar cron job para Phidias
# Implementar webhooks
# Testing con datos reales
6

Piloto y Validación

1 mes de prueba en una sede antes de rollout completo

# Seleccionar sede piloto (Valdemarín o Conde Orgaz)
# Formar a usuarios clave
# Recopilar feedback y ajustar

Estimación de Costes (Producción)

Servicio Tier Coste/mes Coste/año
Supabase Pro 25€ 300€
Vercel Pro 20€ 240€
Resend (Email) Pro 20€ 240€
Dominio - 2€ 24€
TOTAL ~67€ ~800€
04 — MEJORAS

Qué añadir

Funcionalidades recomendadas para el sistema en producción.

🔐 Autenticación y Roles

Alta

Implementar login seguro con diferentes niveles de acceso. Admin ve todo, Secretaría gestiona, Profesores ven sus clases, Familias ven sus hijos.

  • Magic links por email Sin contraseñas, más seguro
  • Row Level Security Cada usuario solo ve lo suyo

📧 Notificaciones Automáticas

Alta

Sistema de alertas por email y WhatsApp. Ausencias → Profesor. Recordatorios de factura → Proveedor. Informes → Familias.

  • Email transaccional (Resend) Ausencias, recordatorios, informes
  • WhatsApp Business API Urgencias y confirmaciones

📄 Módulo de Facturación

Alta

Portal para que proveedores suban facturas. Validación automática. OCR para extraer datos. Comparación esperado vs recibido.

  • Subida de PDFs Portal self-service para proveedores
  • Validación automática Nº factura único, fechas, importes
  • OCR (Mindee) Extracción automática de datos

🔗 Integración Phidias

Media

Importación automática de ausencias desde el sistema del colegio. Cron diario que sincroniza datos sin intervención manual.

  • Endpoint CSV/JSON Validar acceso con IT del colegio
  • Cron job diario n8n o Supabase Edge Functions

📱 App Móvil / PWA

Media

Progressive Web App instalable en móvil. Notificaciones push. Acceso rápido para profesores y familias.

📊 Reportes Avanzados

Baja

Dashboard con gráficos interactivos. Exportación a Excel. Comparativas mensuales/anuales. Predicción de ingresos.

🎭 Portal de Proyectos

Baja

Gestión de conciertos, obras de teatro, exposiciones. Formularios para profesores. Calendario público de eventos.

05 — CHECKLIST

Antes de lanzar

Verificación final antes de poner el sistema en producción.

06 — EJECUTAR

Probar ahora

Comandos para ejecutar la demo en tu máquina.

# Navegar al proyecto
cd ~/Desktop/factoria-demo

# Activar entorno virtual
source venv/bin/activate

# Ejecutar aplicación
python app/main.py

🚀 Servidor en: http://localhost:5000

Módulos disponibles en la demo:

📊 Dashboard
👥 Alumnos
📋 Inscripciones
📅 Horarios
📊 Ausencias
💰 Pagos