Feature: sección "Mis informes" para el estudiante
Qué hace
Agrega la pantalla Mis informes (/perfil/informes) para el rol Estudiante. Muestra los informes adjuntos a su ficha y los puede ver o descargar. Es de solo lectura: los informes los sigue subiendo el personal desde la ficha.
- Lista los informes activos del estudiante, del más reciente al más viejo, con fecha y paginación.
- Al hacer clic en el nombre se abre la vista previa en una pestaña nueva (?inline=true), igual que en la ficha. El botón de la derecha descarga el archivo.
- Se agrega "Mis informes" al menú y al inicio del estudiante, después de "Mis comentarios".
- Si entra un funcionario, ve "No tenés permiso para ver esta página".
Endpoints que usa
-
GET /informes-adjuntos/mios
-
GET /informes-adjuntos/mios/{id}/descargar
-
GET /informes-adjuntos/mios/{id}/descargar
Ya estaban en dev en el back. Con esta pantalla pasan a estar en uso: son los n.º 17 y 18 del documento "Endpoints sin uso en el frontend", los dos de tipo "Falta la pantalla".
Archivos
- src/app/(app)/(secciones)/perfil/informes/page.tsx (nuevo)
- src/components/perfil/MisInformes.tsx (nuevo, mismo patrón que MisComentarios)
- src/lib/medical-reports.ts: agrega listMisInformes()
- src/lib/nav-items.ts: agrega la entrada al menú del estudiante
Cómo probarlo
- Con un funcionario que tenga ADJUNTAR_INFORME, adjuntar un PDF y una imagen a un estudiante desde su ficha.
- Entrar como ese estudiante y abrir Mis informes desde el inicio o el menú. Tienen que aparecer los dos informes.
- Clic en el nombre: se abre la vista previa en una pestaña nueva. Clic en el
- Eliminar uno de los informes desde la ficha: deja de aparecer en Mis informes.
- Entrar como funcionario a /perfil/informes: aparece "No tenés permiso para ver esta página".
Verificado
- eslint limpio y next build sin errores.
- Probado en local con backend dev:
- el listado y la paginación funcionan;
- la vista previa responde con inline y la descarga con attachment;
- un informe de otro estudiante da 404 y el listado de funcionarios da 403 con el token del estudiante;
- un funcionario que entra a la página ve "Sin permiso".