# Art4Hotel Hub — Handover ## Que es Sistema interno de gestion de ordenes, inventario, entregas y ventas para Art4Hotel (bolsas personalizadas para hoteles en Los Cabos). Single-page app con Python stdlib server + SQLite. ## Acceso servidor - **Host**: `claude@192.168.50.46` - **Path**: `/mnt/iclaude/art4hotel-hub/` - **Archivos**: `server.py` (backend), `index.html` (frontend SPA), `art4hotel.db` (SQLite) - **Servicio**: `sudo systemctl restart art4hotel-hub` - **Puerto**: 4401 - **Deploy**: `scp archivo claude@192.168.50.46:/mnt/iclaude/art4hotel-hub/ && ssh claude@192.168.50.46 "sudo systemctl restart art4hotel-hub"` ## Stack - Python 3 stdlib (`http.server` + `sqlite3` + `json`) — zero deps - SQLite WAL mode, foreign keys - Frontend vanilla JS SPA, no frameworks - Branding: Outfit font, paleta olive/sand/cream del brandbook Art4Hotel ## Arquitectura **Tablas principales**: ordenes, inventario, tareas, bitacora, modelos, materiales, trabajos, clientes, productos, archivos **API REST**: `/api/{tabla}` GET/POST, `/api/{tabla}/{id}` GET/PUT/DELETE **Archivos**: `/api/upload/{orden_id}?tipo=X` POST multipart, `/api/files/{orden_id}` GET ## Flujo de ordenes (stages kanban) `En 2 Mares` → `En Taller Sofia` → `En Almacen` → `En Vehiculo` → `Entregado` - Drag & drop entre columnas - Al mover a "Entregado" se abre modal de confirmacion (fecha, recibio, upload soporte) - Boton "Entregar" directo en tarjetas de "En Vehiculo" ## Tabs del SPA 1. **Dashboard** — KPIs, stages bar chart, clientes activos, alertas stock, timeline 2. **Ventas** — Revenue por cliente, por mes, margenes, entregas del mes 3. **Ordenes** — Kanban + tabla, wizard 4-pasos para crear, search, toggle entregados 4. **Entregas** — Post-entrega agrupado por fecha; editar costos inline, subir facturas/recibos/fotos 5. **Inventario** — SKUs con stock, reorden, costos 6. **Catalogo** — CRUD: modelos, materiales, trabajos, clientes (fuente de datos para dropdowns) 7. **Tareas** — Kanban interno del equipo 8. **Bitacora** — Timeline de eventos/decisiones ## Modelo de precios ``` costo_total = (costo_producto + costo_trabajo) * cantidad + logistica utilidad = precio_factura - costo_total margen = utilidad / precio_factura * 100 ``` ## Equipo - **Clod** — fundador, operaciones, entregas - **Tess** — socia, diseño - **Andre** — repartidor, entregas fisicas - **Sandra** — contabilidad, facturacion ## Archivos locales (dev) - `C:\Users\claud\Documents\Claude\Art 4 Hotel\hub\` — server.py + index.html - `C:\Users\claud\Documents\Claude\Art 4 Hotel\Pagina Web\art4hotel\Recursos\art4hotel-brandbook.html` — referencia de marca ## Notas rapidas - El usuario actualiza datos reales de inventario/modelos el mismo (CRUD en Catalogo) - Mobile-first para Andre/Sandra (wizard, botones grandes) - Entregas agrupadas por fecha para navegacion cronologica - Archivos se guardan en `/mnt/iclaude/art4hotel-hub/uploads/{orden_id}/`