diff --git a/src/data/api/document.api.ts b/src/data/api/document.api.ts index fb59770..2ced129 100644 --- a/src/data/api/document.api.ts +++ b/src/data/api/document.api.ts @@ -3,9 +3,15 @@ const DOCUMENT_PDF_URL = 'https://n8n.app.lci.ulsa.mx/webhook/62ca84ec-0adb-4006-aba1-32282d27d434' +const DOCUMENT_PDF_ASIGNATURA_URL = + 'https://n8n.app.lci.ulsa.mx/webhook/041a68be-7568-46d0-bc08-09ded12d017d' + interface GeneratePdfParams { plan_estudio_id: string } +interface GeneratePdfParamsAsignatura { + asignatura_id: string +} export async function fetchPlanPdf({ plan_estudio_id, @@ -25,3 +31,22 @@ export async function fetchPlanPdf({ // n8n devuelve el archivo → lo tratamos como blob return await response.blob() } + +export async function fetchAsignaturaPdf({ + asignatura_id, +}: GeneratePdfParamsAsignatura): Promise { + const response = await fetch(DOCUMENT_PDF_ASIGNATURA_URL, { + method: 'POST', + headers: { + 'Content-Type': 'application/json', + }, + body: JSON.stringify({ asignatura_id }), + }) + + if (!response.ok) { + throw new Error('Error al generar el PDF') + } + + // n8n devuelve el archivo → lo tratamos como blob + return await response.blob() +} diff --git a/src/routes/planes/$planId/asignaturas/$asignaturaId/documento.tsx b/src/routes/planes/$planId/asignaturas/$asignaturaId/documento.tsx index 2777863..452cf57 100644 --- a/src/routes/planes/$planId/asignaturas/$asignaturaId/documento.tsx +++ b/src/routes/planes/$planId/asignaturas/$asignaturaId/documento.tsx @@ -2,7 +2,7 @@ import { createFileRoute, useParams } from '@tanstack/react-router' import { useCallback, useEffect, useState } from 'react' import { DocumentoSEPTab } from '@/components/asignaturas/detalle/DocumentoSEPTab' -import { fetchPlanPdf } from '@/data/api/document.api' +import { fetchAsignaturaPdf } from '@/data/api/document.api' export const Route = createFileRoute( '/planes/$planId/asignaturas/$asignaturaId/documento', @@ -11,7 +11,7 @@ export const Route = createFileRoute( }) function RouteComponent() { - const { planId } = useParams({ + const { asignaturaId } = useParams({ from: '/planes/$planId/asignaturas/$asignaturaId/documento', }) @@ -23,8 +23,8 @@ function RouteComponent() { try { setIsLoading(true) - const pdfBlob = await fetchPlanPdf({ - plan_estudio_id: planId, + const pdfBlob = await fetchAsignaturaPdf({ + asignatura_id: asignaturaId, }) const url = window.URL.createObjectURL(pdfBlob) @@ -38,7 +38,7 @@ function RouteComponent() { } finally { setIsLoading(false) } - }, [planId]) + }, [asignaturaId]) useEffect(() => { loadPdfPreview() @@ -49,8 +49,8 @@ function RouteComponent() { }, [loadPdfPreview]) const handleDownload = async () => { - const pdfBlob = await fetchPlanPdf({ - plan_estudio_id: planId, + const pdfBlob = await fetchAsignaturaPdf({ + asignatura_id: asignaturaId, }) const url = window.URL.createObjectURL(pdfBlob) diff --git a/src/routes/planes/$planId/asignaturas/$asignaturaId/route.tsx b/src/routes/planes/$planId/asignaturas/$asignaturaId/route.tsx index 9f0fd10..3117ab2 100644 --- a/src/routes/planes/$planId/asignaturas/$asignaturaId/route.tsx +++ b/src/routes/planes/$planId/asignaturas/$asignaturaId/route.tsx @@ -232,7 +232,7 @@ function AsignaturaLayout() { { label: 'Datos', to: '' }, { label: 'Contenido', to: 'contenido' }, { label: 'Bibliografía', to: 'bibliografia' }, - { label: 'IA', to: 'asignaturaIa' }, + { label: 'IA', to: 'iaasignatura' }, { label: 'Documento SEP', to: 'documento' }, { label: 'Historial', to: 'historial' }, ].map((tab) => {