Initial commit
This commit is contained in:
106
README_PRISMA.md
Normal file
106
README_PRISMA.md
Normal file
@@ -0,0 +1,106 @@
|
||||
# Sistema de Gestión de Pedidos - FastAPI + Prisma
|
||||
|
||||
## Instalación
|
||||
|
||||
### 1. Instalar dependencias Node.js (para Prisma CLI)
|
||||
```bash
|
||||
npm install
|
||||
```
|
||||
|
||||
### 2. Instalar dependencias Python
|
||||
```bash
|
||||
pip install -r requirements_prisma.txt
|
||||
```
|
||||
|
||||
### 3. Configurar base de datos
|
||||
Editar `.env`:
|
||||
```env
|
||||
DATABASE_URL="postgresql://usuario:password@localhost:5432/pedidos_clientes"
|
||||
OPENAI_API_KEY="tu-api-key"
|
||||
```
|
||||
|
||||
### 4. Generar cliente Prisma
|
||||
```bash
|
||||
npm run prisma:generate
|
||||
# O
|
||||
prisma generate
|
||||
```
|
||||
|
||||
### 5. Crear y aplicar migraciones
|
||||
```bash
|
||||
npm run prisma:migrate
|
||||
# O
|
||||
prisma migrate dev --name init
|
||||
```
|
||||
|
||||
### 6. Ejecutar aplicación
|
||||
```bash
|
||||
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 clientes
|
||||
- `GET /api/pedidos-cliente` - Listar pedidos
|
||||
- `GET /api/kanban` - Datos del Kanban
|
||||
- `GET /api/alertas` - Alertas de pedidos urgentes
|
||||
- `POST /api/albaranes/upload` - Subir albarán
|
||||
- `GET /docs` - Documentación Swagger
|
||||
|
||||
## Comandos Útiles
|
||||
|
||||
```bash
|
||||
# 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
|
||||
|
||||
Reference in New Issue
Block a user