Nutrición
Módulo del nutricionista: targets nutricionales por jugador, registros diarios, mediciones de composición corporal con evolución temporal y dos importadores (Excel masivo + PDF del software Miguel Kazarez de antropometría). KPIs de equipo a 30 días para suma de pliegues, % graso, masa magra y cobertura de medición.
Para comercial
Sección titulada «Para comercial»- Problema que resuelve: el nutricionista típico vive en Excel del software de antropometría. CÉNIT importa el PDF de Kazarez sin re-tipear, deja la evolución del jugador visible al cuerpo técnico y permite definir objetivos individuales (peso, % graso, masa muscular, pliegues).
- Casos de uso típicos: medición mensual de plantel, ajuste de plan alimentario semanal por jugador, seguimiento longitudinal post-pretemporada.
- Planes: gated por feature flag
module_nutrition. - Diferenciador: parser determinístico del PDF de Kazarez (no usa IA — todo regex/heurística en
lib/parsers/kazarez-anthropometry), preview editable antes de guardar, upsert por(player_id, record_date)para que reimportar el mismo PDF no genere duplicados.
Cómo lo usa el staff
Sección titulada «Cómo lo usa el staff»Acceso y permisos
Sección titulada «Acceso y permisos»- Roles con acceso:
nut,hop,dir,coord_form(shell nav). - Subsecciones: KPIs del equipo, panel por jugador (composición), objetivos, plan alimentario semanal, importadores, evolución temporal.
Flujos paso a paso
Sección titulada «Flujos paso a paso»- Definir objetivos: por jugador, calorías + macros + hidratación (
nutrition_targets) y/o targets de composición (body_composition_targets: % graso, peso, masa muscular, pliegues). Upsert porplayer_id. - Registrar día: jugador, fecha, calorías, macros, hidratación, suplementos, notas, opcional peso + % graso (
nutrition_records). - Cargar medición de composición: manual (
body_composition) o desde importadores. - Importar PDF Kazarez: subir PDF (≤10MB) →
parseAnthropometryPdfdetecta formato → muestra preview editable → guardar consaveAnthropometryFromPdf(incluyeendomorphy/mesomorphy/ectomorphy,lean_mass_kgcomputado víaparseLeanMass,skinfold_sum_mm,raw_dataJSONB para auditoría). - Importar Excel: hasta 500 registros por archivo (
bulkSaveBodyComposition). - Plan alimentario semanal: texto libre upserteado por
(player_id, weekStart).
Configuración relacionada
Sección titulada «Configuración relacionada»- Plan debe incluir
module_nutrition.
FAQ / casos límite
Sección titulada «FAQ / casos límite»- El parser Kazarez sólo soporta ese PDF — para otros softwares, carga manual o vía Excel.
- PDFs escaneados como imagen no funcionan (no hay OCR). El parser detecta y avisa.
lean_mass ≠ muscle_mass. F13 calcula lean comopeso − fat_mass.
Cómo lo ve el jugador
Sección titulada «Cómo lo ve el jugador»Player surface: N/A. El jugador no ve sus mediciones de composición ni macros. Si en el futuro se decide exponerle su evolución, sería un nuevo tab del portal /player.
Datos y métricas
Sección titulada «Datos y métricas»Importadores y fuentes
Sección titulada «Importadores y fuentes»- PDF Kazarez — software local de antropometría. Parser determinístico, upsert idempotente por fecha.
- Excel — formato libre de composición, máx 500 filas por importación.
Tablas DB / RPCs
Sección titulada «Tablas DB / RPCs»nutrition_records— registros diarios + plan alimentario.nutrition_targets— macros + hidratación +nutritional_goal(texto).body_composition— mediciones (conendomorphy,mesomorphy,ectomorphy,raw_data,source).body_composition_targets— objetivos individuales.- RPC
get_body_composition_summary— última medición + delta vs anterior +days_sincepor jugador.
Integraciones
Sección titulada «Integraciones»- Plantel: cada medición revalida el perfil del jugador.
- Informe HoP: composición y cumplimiento entran al informe semanal cuando hay datos.
Limitaciones / roadmap
Sección titulada «Limitaciones / roadmap»- No hay export Excel todavía (
excel_exportestá prometido en todos los planes pero no implementado, verPROJECT_STATE.md). - Parser limitado a Kazarez — otros softwares (InBody, Tanita) requerirían parsers adicionales.