115 lines
3.1 KiB
Markdown
115 lines
3.1 KiB
Markdown
|
|
# Scripts de Utilidad
|
||
|
|
|
||
|
|
Este directorio contiene scripts para facilitar el desarrollo y testing de la aplicación.
|
||
|
|
|
||
|
|
## 📊 Seed de Proyectos de Prueba
|
||
|
|
|
||
|
|
### Opción 1: Via API Route de Next.js (Recomendado) ✅
|
||
|
|
|
||
|
|
Este método es más seguro ya que usa la API Route protegida.
|
||
|
|
|
||
|
|
**Requisitos:**
|
||
|
|
- El servidor de Next.js debe estar corriendo (`npm run dev`)
|
||
|
|
- Dolibarr debe estar accesible
|
||
|
|
|
||
|
|
**Uso:**
|
||
|
|
```bash
|
||
|
|
npm run seed
|
||
|
|
```
|
||
|
|
|
||
|
|
**Lo que hace:**
|
||
|
|
- Crea 12 proyectos de prueba con datos realistas
|
||
|
|
- Diferentes estados de progreso (0%, 15%, 35%, 50%, 65%, 75%, 90%, 100%)
|
||
|
|
- Variedad de presupuestos (€28k - €120k)
|
||
|
|
- Fechas de inicio y fin variadas
|
||
|
|
- Valida automáticamente los proyectos con progreso > 0%
|
||
|
|
|
||
|
|
**Proyectos incluidos:**
|
||
|
|
1. Desarrollo de App Móvil (65%)
|
||
|
|
2. Rediseño Web Corporativo (90%)
|
||
|
|
3. Sistema de Facturación Automática (35%)
|
||
|
|
4. Migración a Cloud AWS (20%)
|
||
|
|
5. Dashboard Analítico BI (100% - completado)
|
||
|
|
6. API REST Microservicios (50%)
|
||
|
|
7. App de Gestión de Proyectos (75%)
|
||
|
|
8. E-commerce con Marketplace (15%)
|
||
|
|
9. Sistema CRM Personalizado (0% - borrador)
|
||
|
|
10. Portal de Empleados (100% - completado)
|
||
|
|
11. Sistema de Reservas Online (45%)
|
||
|
|
12. App de Formación Online (30%)
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
### Opción 2: Conexión Directa a Dolibarr
|
||
|
|
|
||
|
|
Este método se conecta directamente a la API de Dolibarr (sin pasar por Next.js).
|
||
|
|
|
||
|
|
**Requisitos:**
|
||
|
|
- Dolibarr debe estar accesible
|
||
|
|
- Variables de entorno configuradas en `.env.local`
|
||
|
|
|
||
|
|
**Uso:**
|
||
|
|
```bash
|
||
|
|
npm run seed:direct
|
||
|
|
```
|
||
|
|
|
||
|
|
⚠️ **Nota:** Este método usa las credenciales directamente desde `.env.local`.
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## 🔧 Troubleshooting
|
||
|
|
|
||
|
|
### Error: "No se puede conectar al servidor Next.js"
|
||
|
|
**Solución:** Asegúrate de que el servidor esté corriendo:
|
||
|
|
```bash
|
||
|
|
npm run dev
|
||
|
|
```
|
||
|
|
|
||
|
|
### Error: "Dolibarr API error"
|
||
|
|
**Soluciones posibles:**
|
||
|
|
1. Verifica que Dolibarr esté corriendo (Docker)
|
||
|
|
2. Revisa las credenciales en `.env.local`
|
||
|
|
3. Verifica que la URL de la API sea correcta
|
||
|
|
|
||
|
|
### Error: "No se pudo validar"
|
||
|
|
**No te preocupes:** Es normal. Algunos proyectos se crean correctamente pero no se pueden validar automáticamente. Puedes validarlos manualmente desde Dolibarr si es necesario.
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## 🧹 Limpiar Proyectos de Prueba
|
||
|
|
|
||
|
|
Si quieres eliminar los proyectos de prueba creados, puedes hacerlo desde la interfaz de Dolibarr o usando la API:
|
||
|
|
|
||
|
|
```bash
|
||
|
|
# TODO: Crear script de limpieza
|
||
|
|
# npm run clean:projects
|
||
|
|
```
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## 📝 Notas
|
||
|
|
|
||
|
|
- Los scripts pausan 500ms entre cada creación para no saturar la API
|
||
|
|
- Los proyectos con progreso 0% se dejan como "borrador"
|
||
|
|
- Los proyectos con progreso > 0% se intentan validar automáticamente
|
||
|
|
- Todos los proyectos tienen descripciones detalladas
|
||
|
|
- Las fechas están distribuidas entre 2023 y 2025
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## 🎨 Personalización
|
||
|
|
|
||
|
|
Para modificar los proyectos de prueba, edita el array `projectsData` en cualquiera de los scripts:
|
||
|
|
|
||
|
|
```javascript
|
||
|
|
{
|
||
|
|
title: "Tu Proyecto",
|
||
|
|
ref: "PROJ-2024-XXX",
|
||
|
|
description: "Descripción detallada...",
|
||
|
|
opp_amount: 50000, // Presupuesto en euros
|
||
|
|
opp_percent: 50, // Progreso (0-100)
|
||
|
|
date_start: timestamp, // Unix timestamp en segundos
|
||
|
|
date_end: timestamp, // Unix timestamp en segundos
|
||
|
|
}
|
||
|
|
```
|