Documentos legales
Ruta: /student?tab=documents · Auth: Magic link (alumno)
Visualizacion y aceptacion de documentos legales del profesor. El alumno puede ver todos los documentos que ha firmado, sus versiones completas y aceptar nuevas versiones.
Que hay
Section titled “Que hay”Lista de documentos
Section titled “Lista de documentos”Grid de documentos legales del profesor organizados por tipo:
| Tipo | Icono | Descripcion |
|---|---|---|
contract | FileText | Contrato de servicio |
policy | Shield | Politica de cancelacion |
terms | ScrollText | Terminos y condiciones |
privacy | Lock | Politica de privacidad |
Cada documento muestra:
- Titulo y tipo
- Estado: “Aceptado” (verde) o “Pendiente” (ambar)
- Fecha de ultima aceptacion
- Version aceptada vs version actual
Workflow de aceptacion
Section titled “Workflow de aceptacion”Para documentos pendientes de aceptacion:
- Click en el documento → se abre Sheet lateral
- Contenido renderizado con
MarkdownPreview(soporte markdown completo) - Checkbox “He leido y acepto” + boton “Aceptar”
POST /student/legal-documents/:id/accept→ registro enlegal_document_acceptances
Historial de versiones
Section titled “Historial de versiones”Para documentos ya aceptados:
- Click en el documento → Sheet con contenido completo
- Historial de versiones firmadas visible
- Cada version muestra: numero de version, fecha de firma, contenido completo
Contratos multi-pagina
Section titled “Contratos multi-pagina”Los contratos de tipo contract pueden tener multiples paginas (JSON array).
Se renderizan como secciones paginadas con navegacion.
Referencia tecnica
Section titled “Referencia tecnica”Archivos clave
Section titled “Archivos clave”| Archivo | Proposito |
|---|---|
apps/app/src/components/student/tab-documents.tsx | Tab de documentos |
| Endpoint | Metodo | Proposito |
|---|---|---|
/student/legal-documents | GET | Lista de documentos (pendientes + aceptados) |
/student/legal-documents/:id/accept | POST | Aceptar version de documento |
Tablas
Section titled “Tablas”| Tabla | Proposito |
|---|---|
legal_documents | Documentos versionados (tipo, titulo, contenido, version) |
legal_document_acceptances | Registro de consentimiento (studentId, documentId, version, acceptedAt) |