Initial commit

This commit is contained in:
2025-12-05 11:27:16 -03:00
commit 804bacfbe3
87 changed files with 7260 additions and 0 deletions

152
INSTALL.md Normal file
View File

@@ -0,0 +1,152 @@
# Guía de Instalación - Sistema de Gestión de Pedidos
## Requisitos Previos
- Python 3.8 o superior
- PostgreSQL 12 o superior
- pip (gestor de paquetes de Python)
- Git (opcional)
## Paso 1: Clonar/Descargar el Proyecto
Si tienes el proyecto en un repositorio Git:
```bash
git clone <url-del-repositorio>
cd pedidosClientesAyutec
```
## Paso 2: Crear Entorno Virtual
**Windows:**
```bash
python -m venv venv
venv\Scripts\activate
```
**Linux/Mac:**
```bash
python3 -m venv venv
source venv/bin/activate
```
## Paso 3: Instalar Dependencias
```bash
pip install -r requirements.txt
```
## Paso 4: Configurar Base de Datos PostgreSQL
1. Instalar PostgreSQL si no lo tienes instalado
2. Crear una base de datos:
```sql
CREATE DATABASE pedidos_clientes;
CREATE USER pedidos_user WITH PASSWORD 'tu_password';
GRANT ALL PRIVILEGES ON DATABASE pedidos_clientes TO pedidos_user;
```
O usar Docker:
```bash
docker-compose up -d db
```
## Paso 5: Configurar Variables de Entorno
1. Copiar el archivo de ejemplo:
```bash
cp .env.example .env
```
2. Editar `.env` con tus credenciales:
```env
SECRET_KEY=tu-secret-key-generado
DB_NAME=pedidos_clientes
DB_USER=postgres
DB_PASSWORD=tu-password
DB_HOST=localhost
DB_PORT=5432
OPENAI_API_KEY=tu-openai-api-key
```
Para generar un SECRET_KEY:
```bash
python -c "from django.core.management.utils import get_random_secret_key; print(get_random_secret_key())"
```
## Paso 6: Ejecutar Migraciones
```bash
python manage.py makemigrations
python manage.py migrate
```
## Paso 7: Crear Superusuario
```bash
python manage.py createsuperuser
```
Sigue las instrucciones para crear un usuario administrador.
## Paso 8: Recopilar Archivos Estáticos (Opcional)
```bash
python manage.py collectstatic --noinput
```
## Paso 9: Iniciar el Servidor
```bash
python manage.py runserver
```
El servidor estará disponible en: http://127.0.0.1:8000
## Paso 10: Iniciar File Watcher (Opcional)
En una terminal separada, para procesar automáticamente PDFs y albaranes:
```bash
python manage.py start_file_watcher
```
## Verificación
1. Accede a http://127.0.0.1:8000/admin/ y inicia sesión
2. Accede a http://127.0.0.1:8000/api/kanban/ para ver el Kanban
3. Verifica que las carpetas se hayan creado:
- `pedidos_clientes_pdf/`
- `albaranes_escaneados/`
- `emails_proveedores/`
## Solución de Problemas
### Error de conexión a PostgreSQL
- Verifica que PostgreSQL esté corriendo
- Verifica las credenciales en `.env`
- Verifica que la base de datos exista
### Error de módulos faltantes
```bash
pip install -r requirements.txt --upgrade
```
### Error de migraciones
```bash
python manage.py makemigrations --empty gestion_pedidos
python manage.py migrate
```
### Error de permisos en carpetas
Asegúrate de que el usuario tenga permisos de escritura en las carpetas del proyecto.
## Producción
Para producción, considera:
- Usar un servidor WSGI como Gunicorn
- Configurar Nginx como proxy reverso
- Usar variables de entorno seguras
- Configurar HTTPS
- Configurar backups de base de datos
- Configurar logs rotativos