51 tabelle e 12,039 righe salvate,
poi un ERP su cui la fabbrica lavora ogni giorno
Una fabbrica di integratori ha perso l'accesso al proprio ERP di produzione e magazzino su un cloud di terze parti. Abbiamo esportato tutto tramite l'API (51 tabelle, 12,039 righe), ricostruito self-hosted su PostgreSQL e PostgREST, irrobustito l'accesso con ruoli del database e JWT, tradotto 3,040 stringhe di interfaccia, aggiunto contabilità dei costi, report piano-contro-reale ed export Excel, corretto un bug di doppio storno e impostato backup giornalieri.
La situazione
La contabilità di produzione e materie prime di una fabbrica viveva in un backend cloud impostato da un contraente che se ne era andato. L’accesso era perso, i dati erano a rischio, e la produzione non poteva fermarsi.
Cosa abbiamo fatto
Recupero. Ripristinato l’accesso, esportato tutte le 51 tabelle e 12,039 righe tramite il livello REST, incluse 161 MB di foto salvate inline, e verificato i conteggi.
Ricostruzione. Uno stack self-hosted su un server separato e isolato: PostgreSQL, PostgREST e nginx, nessun SaaS di terze parti. Documentazione tecnica completa con commenti riga per riga sul codice ereditato.
Irrobustimento. Accesso basato su ruoli spostato dal client al server: ruoli row-level di PostgreSQL e un login RPC con JWT. 42 pagine admin su 50 visibili ai nuovi ruoli, 8 limitate per progetto.
Lingua. Un traduttore a runtime ha convertito circa 3,040 stringhe thailandesi in russo e inglese per la nuova gestione.
Funzionalità. Costo del venduto per materia prima, per chilogrammo e per unità; export Excel da più di sette schermate e un report “esporta tutto”; report piano-contro-reale, manodopera, affitto e deprezzamento; costo stampato sui moduli di produzione; un audit di magazzino che ha ripristinato 44 schede materiali e rimosso 71 orfane; un bug di doppio storno trovato su due ordini di produzione e corretto con approvazione esplicita.
Operazioni. Backup giornalieri del database con un mirror off-site. Il sistema è usato dalla fabbrica ogni giorno, con modifiche richieste e consegnate quasi ogni giorno.