Arquitectura

Modelo de datos del motor

47 tablas agrupadas en cinco bloques. Los cuatro primeros son la Fase 1; el último queda diseñado desde ya para que activos y menaje se enganchen sin rehacer nada.

Núcleo

10 tablas

companies

Empresas cliente de la red FoodFIX.

branches

Sedes o puntos de operación.

areas

Cocina, servicio, caja, bar, bodega.

locations

Zona y ubicación exacta dentro del área.

profiles

Datos de la persona, sin rol.

user_roles

Rol por usuario, empresa y sede.

role_permissions

Permisos granulares por rol.

attachments

Archivos y fotos con RLS por empresa.

audit_logs

Bitácora inmutable de todo cambio.

notifications

Avisos y resúmenes.

Mapa de procesos

8 tablas

resources

Los tres recursos + eje administrativo.

macroprocesses

Agrupación mayor por recurso.

processes

Proceso dentro del macroproceso.

subprocesses

Detalle opcional del proceso.

uoc

Unidad Operativa Controlable: la pieza central.

uoc_evidence_requirements

Qué evidencia exige cada UOC.

uoc_indicators

Indicador asociado y su fórmula.

uoc_versions

Historial de versiones del estándar.

Motor de tareas

16 tablas

task_types

Tipos configurables de tarea.

task_templates

Plantilla derivada de una UOC + recurrencia.

task_template_checklists

Checklist reutilizable.

tasks

Instancia real, con fecha, sede y responsable.

task_assignments

Ejecutor, revisor, observador, aprobador.

task_checklist_items

Ítems de la instancia.

task_evidence

Fotos, valores, firmas y archivos.

task_comments

Conversación y seguimiento.

task_reviews

Aprobar, rechazar o devolver.

task_scores

Puntaje contra la escala configurable.

task_status_history

Cada cambio de estado.

task_relations

Enlace genérico a cualquier módulo.

task_dependencies

Tareas que bloquean a otras.

task_escalation_rules

Atraso, criticidad y a quién escala.

task_recurrence_runs

Candado anti-duplicados del generador.

task_calendar_settings

Calendario laboral por empresa.

Desviaciones e indicadores

4 tablas

deviations

Las cinco preguntas, impacto y estado.

corrective_actions

Acción que genera una tarea nueva.

indicators

Catálogo de KPIs y su fórmula.

indicator_snapshots

Valor calculado por sede y periodo.

Fase 3 — Activos y menaje

9 tablas

asset_categories

Categorías y subcategorías.

asset_catalog_items

Referencias maestras de menaje.

asset_items

Activos individuales con QR.

asset_location_balances

Cantidades por ubicación.

asset_movements

Kardex de traslados, pérdidas y bajas.

asset_count_sessions

Conteos físicos.

asset_incidents

Roturas, pérdidas y daños.

asset_maintenance_plans

Preventivos programados.

asset_disposals

Solicitud y aprobación de baja.

Ciclo de vida de una tarea

01 · Programada02 · Asignada03 · En ejecución04 · En verificación05 · Aprobada06 · Rechazada07 · Vencida08 · Cancelada

Cada transición se escribe en task_status_history y en la bitácora de auditoría, con usuario, hora y motivo cuando aplica.

Reglas que el esquema debe garantizar

  • 01Multiempresa y multisede desde el primer registro.
  • 02Toda acción queda auditada: quién, qué, cuándo, antes y después.
  • 03Nada se borra físicamente: se archiva, anula o da de baja.
  • 04Ningún ajuste sin motivo, usuario y fecha.
  • 05Ejecución y aprobación son personas distintas.
  • 06El sistema registra hechos; no sanciona automáticamente a nadie.
  • 07Las recurrencias se generan en el backend, nunca en el navegador.
  • 08Operación y contabilidad no se mezclan en la primera fase.
  • 09Permisos granulares por módulo, además de los roles.
  • 10Una sola tabla de relaciones conecta tareas con cualquier módulo futuro.