2.2 KiB
2.2 KiB
Sistema de Gestión de Pedidos - FastAPI + Prisma
Instalación
1. Instalar dependencias Node.js (para Prisma CLI)
npm install
2. Instalar dependencias Python
pip install -r requirements_prisma.txt
3. Configurar base de datos
Editar .env:
DATABASE_URL="postgresql://usuario:password@localhost:5432/pedidos_clientes"
OPENAI_API_KEY="tu-api-key"
4. Generar cliente Prisma
npm run prisma:generate
# O
prisma generate
5. Crear y aplicar migraciones
npm run prisma:migrate
# O
prisma migrate dev --name init
6. Ejecutar aplicación
python run.py
# O
uvicorn app.main:app --reload
Estructura del Proyecto
app/
├── __init__.py
├── main.py # Aplicación FastAPI principal
├── config.py # Configuración
├── prisma_client.py # Cliente Prisma
├── models/ # Modelos Pydantic
│ ├── cliente.py
│ ├── pedido_cliente.py
│ ├── proveedor.py
│ └── ...
├── api/ # Endpoints FastAPI
│ ├── routes/
│ │ ├── clientes.py
│ │ ├── pedidos_cliente.py
│ │ └── ...
│ └── dependencies.py
└── services/ # Lógica de negocio
├── ocr_service.py
└── albaran_processor.py
prisma/
└── schema.prisma # Schema de base de datos
Endpoints API
GET /api/clientes- Listar clientesGET /api/pedidos-cliente- Listar pedidosGET /api/kanban- Datos del KanbanGET /api/alertas- Alertas de pedidos urgentesPOST /api/albaranes/upload- Subir albaránGET /docs- Documentación Swagger
Comandos Útiles
# Generar cliente Prisma
prisma generate
# Crear migración
prisma migrate dev --name nombre_migracion
# Aplicar migraciones
prisma migrate deploy
# Abrir Prisma Studio (GUI para BD)
prisma studio
# Ver estado de migraciones
prisma migrate status
Ventajas de Prisma
- ✅ Type-safe queries
- ✅ Migraciones automáticas
- ✅ Mejor performance
- ✅ Schema como código
- ✅ Prisma Studio (GUI para BD)
- ✅ Validación automática de tipos