codigo0/docs/VER_CONTENIDO_PANEL_ADMIN.md

186 lines
3.8 KiB
Markdown

# 👀 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:**
```bash
cd backend
npm start
```
2. **Inicia el panel admin:**
```bash
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:**
```json
{
"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:**
```bash
psql -h localhost -U postgres -d emerges_tes
```
**Consulta:**
```sql
-- 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**