codigo0/docs/VER_CONTENIDO_PANEL_ADMIN.md

3.8 KiB

👀 CÓMO VER TODOS LOS DATOS EN EL PANEL ADMIN

Fecha: 2025-01-06
Estado: Endpoint actualizado para usar tes_content


SOLUCIÓN IMPLEMENTADA

He actualizado el endpoint del backend para que:

  1. Busque en el schema correcto: tes_content (antes buscaba en emerges_content)
  2. Mapee los campos de snake_case a camelCase para el frontend
  3. Devuelva todos los datos migrados

🚀 CÓMO VER LOS DATOS

Opción 1: Panel Admin (Recomendado)

  1. Inicia el backend:

    cd backend
    npm start
    
  2. Inicia el panel admin:

    cd admin-panel
    npm run dev
    
  3. Accede al panel:

    • URL: http://localhost:5174
    • Login: admin@emerges-tes.local / Admin123!
  4. Ve a "Biblioteca de Contenido":

    • En el menú lateral, busca "Contenido" o "Biblioteca"
    • O accede directamente: http://localhost:5174/content
  5. Verás:

    • 5 Protocolos (RCP Adulto SVB, RCP Adulto SVA, RCP Pediátrico, OVACE, Shock Hemorrágico)
    • 2 Fármacos (Oxígeno, Adrenalina)
    • Filtros por tipo, estado, búsqueda
    • Tabla con todos los detalles

Opción 2: API Directa

Endpoint:

GET http://localhost:3000/api/content

Headers:

Authorization: Bearer <token>

Respuesta:

{
  "items": [
    {
      "id": "...",
      "type": "protocol",
      "level": "operativo",
      "title": "RCP Adulto - Soporte Vital Básico",
      "shortTitle": "RCP Adulto SVB",
      "status": "published",
      "version": "1.0.0",
      "createdAt": "2025-01-06T...",
      "updatedAt": "2025-01-06T..."
    },
    ...
  ],
  "total": 7,
  "page": 1,
  "pageSize": 20
}

Opción 3: SQL Directo

Conecta a PostgreSQL:

psql -h localhost -U postgres -d emerges_tes

Consulta:

-- Ver todos los protocolos
SELECT 
  slug, 
  title, 
  status, 
  priority,
  clinical_context,
  updated_at
FROM tes_content.content_items
WHERE type = 'protocol'
ORDER BY updated_at DESC;

-- Ver todos los fármacos
SELECT 
  slug, 
  title, 
  status, 
  priority,
  updated_at
FROM tes_content.content_items
WHERE type = 'drug'
ORDER BY title;

-- Ver todo el contenido
SELECT 
  type,
  COUNT(*) as total,
  COUNT(CASE WHEN status = 'published' THEN 1 END) as published
FROM tes_content.content_items
GROUP BY type;

📊 DATOS MIGRADOS

Protocolos (5)

  • rcp-adulto-svb - RCP Adulto - Soporte Vital Básico
  • rcp-adulto-sva - RCP Adulto - Soporte Vital Avanzado
  • rcp-pediatrico - RCP Pediátrico - SVB
  • obstruccion-via-aerea - Obstrucción de Vía Aérea - OVACE
  • shock-hemorragico - Shock Hemorrágico

Fármacos (2)

  • oxigeno - Oxígeno (O₂)
  • adrenalina - Adrenalina (Epinefrina)

Total: 7 items publicados


🔍 FILTROS DISPONIBLES EN EL PANEL

  • Por tipo: Protocolos, Guías, Fármacos, Checklists
  • Por estado: Borrador, En revisión, Aprobado, Publicado
  • Búsqueda: Por título o descripción
  • Paginación: 20 items por página

⚠️ NOTAS

  1. Autenticación requerida: El endpoint requiere token JWT
  2. Schema correcto: Ahora busca en tes_content (no emerges_content)
  3. Campos mapeados: Los campos se convierten de snake_case a camelCase automáticamente

🐛 SOLUCIÓN DE PROBLEMAS

"No se muestra contenido"

  1. Verifica que el backend esté corriendo: http://localhost:3000/api/health
  2. Verifica que estés autenticado (token en localStorage)
  3. Verifica en la consola del navegador si hay errores

"Error 500"

  1. Revisa los logs del backend
  2. Verifica que el schema tes_content exista
  3. Verifica que las tablas estén creadas

"No hay datos"

  1. Ejecuta la migración: node backend/scripts/migrate-app-content-v2.js
  2. Verifica en SQL: SELECT COUNT(*) FROM tes_content.content_items;

Fin del Documento