Prompt per generar el Sistema de Portes Obertes
“Crea un script de Python complet que funcioni com un servidor web autònom utilitzant únicament la biblioteca estàndard (http.server, socketserver, sqlite3, etc.), sense frameworks externs com Flask o Django. L’objectiu és un Sistema de Gestió de Portes Obertes amb les següents especificacions.
Base de Dades i Lògica:
- Usa SQLite3 amb dues taules:
assistents(id, nom, cognom, email UNIQUE, telefon, centre) ihoraris(id, hora, assistent_id UNIQUE, num_persones). - Implementa
PRAGMA foreign_keys = ONiON DELETE CASCADEperquè, en esborrar un assistent, s’elimini la seva reserva automàticament. - Gestiona sessions simples mitjançant galetes (cookies) (
user_id).
Interfície i Estil (CSS Gamer/Neó):
- Dissenya una interfície moderna amb estètica ‘Dark Mode / Gamer’ usant una paleta de colors: fons gairebé negre (
#0a0a0c), detalls en cian neó (#00d2ff) i porpra neó (#9d50bb). - Usa degradats, vora amb brillantor (box-shadow) i fonts ‘Segoe UI’ o similars.
- Les taules han de tenir un aspecte net amb capçaleres en porpra.
Funcionalitats del Handler:
- Registre: Formulari inicial per capturar dades de l’assistent. En registrar-se, redirigeix a la selecció d’horari.
- Gestió d’Horaris: Una taula que mostri franges de 15 min (de 16:45 a 18:45). Ha de controlar un aforament màxim de 20 persones per franja.
- Permetre triar quantes persones vénen (màxim 5 o segons llocs lliures).
- Si l’usuari ja té cita, mostrar botó d’ ‘Anul·lar’.
- Panell d’Administració (/admin): Protegit per Basic Auth (user:
admin, pass:JA54734231). Visualització de tots els registres, total d’assistents i filtres per hora mitjançant badges. - Opció d’eliminar usuaris (que desencadeni l’esborrat en cascada).
Detalls Tècnics:
- L’idioma de la interfície ha de ser el català.
- Defineix una llista global de
hores_estatiquesper als filtres. - El servidor ha de córrer al port 5000 i permetre la reutilització de l’adreça.”
Per què aquest prompt funciona?
- Restricció de Llibreries: En especificar “biblioteca estàndard”, forces la IA a usar
http.serverisocketserveren comptes de solucions modernes, que és exactament com està escrit el teu codi. - Lògica SQL específica: Esmentes el
PRAGMAi elCASCADE, que són detalls tècnics crítics presents al teu codi per a la integritat de dades. - Identitat Visual: La descripció dels colors hexadecimals (
#00d2ff,#9d50bb) assegura que el CSS generat sigui l’estil “Neó”. - Seguretat Hardcoded: Inclous les credencials exactes de l’administrador, la qual cosa garanteix que la funció
check_authsigui idèntica.