Skip to content

major overhaul, UI redesign e stabilizzazione logica traffico (final version)#18

Merged
gio24ita merged 8 commits into
mainfrom
refactor-gui
Feb 25, 2026
Merged

major overhaul, UI redesign e stabilizzazione logica traffico (final version)#18
gio24ita merged 8 commits into
mainfrom
refactor-gui

Conversation

@gio24ita

Copy link
Copy Markdown
Owner

Questa PR rappresenta il culmine di circa un mese di lavoro volto a trasformare la versione prototipale di UniPark in una dashboard stabile, realistica e pronta per un utilizzo (simulato) intensivo.

Abbiamo riscritto e ottimizzato gran parte del codice di frontend e backend, risolvendo i bug critici di sincronizzazione e introducendo un layout fisso e responsivo.


Novità e Cambiamenti Principali

1. Architettura e Backend (UniPark.py)

  • La classe ParkingZone ora è completamente protetta tramite Lock(). Questo elimina definitivamente le race conditions riscontrate in passato quando la GUI e i worker tentavano di leggere/scrivere i dati simultaneamente.
  • Codice ripulito dalle ridondanze (es. calcolo dinamico dell'occupazione) e ampiamente commentato con docstrings tecniche.

2. Redesign Totale dell'Interfaccia (UniparkGUI.py)

  • Integrata l'immagine satellitare (mappa.png). I parcheggi ora mostrano badge dinamici (stile HUD) perfettamente sovrapposti alle vere zone della Cittadella, con un indicatore speciale ("LA TUA AUTO") per l'interazione manuale.
  • Nuova palette colori ottimizzata per il monitoraggio. Nuove soglie per i progress bar:
    • Disponibile: < 60%
    • Affollato: 60% - 99%
    • Pieno: 100%
  • Sostituito il layout fluido con una risoluzione fissa (1280x800) per impedire distorsioni della mappa dovute a ridimensionamenti accidentali.

3. Logica di Traffico Avanzata

  • Il metodo get_time_phase() legge l'ora reale del sistema (mattina, pomeriggio, sera, notte) per generare curve di traffico verosimili (es. riempimento >85% la mattina e svuotamento naturale dopo le 17:00 - 18:00).

4. Bug Fixes

  • Risolti i molteplici NameError che causavano il crash della GUI durante l'update loop.
  • Il terminale eventi ora allinea i log in colonne perfette e assegna tag colori chiari (INGRESSO, USCITA, ALLERTA, UTENTE).
  • Implementato os._exit(0) on close per garantire la terminazione immediata dell'esecuzione.

PS: Se si vuole testare il traffico del parcheggio in base all'orario, cambiare temporaneamente l'orologio del PC (es. impostare le 20:30) e riavviare l'app per osservare il comportamento del "Deflusso Serale" (svuotamento rapido).

… tecnici con aggiunta della mappa satellitare

@Libox22 Libox22 left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Approvo

@ErDarto3012 ErDarto3012 left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ho visto il codice, modifiche approvate

@ErDarto3012 ErDarto3012 left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

approvo

@gio24ita
gio24ita merged commit f2f2e51 into main Feb 25, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants