Script per la lettura dei dati degli scrutini provenienti dalle regioni autonome e conversione in formato json con tracciato unifoirmato a quello del ministero.
Nella directory principale sono presenti:
-
utility.inc.php. Contiene:
classe Filemanager per recuperare, convertire i dati e scrivere i file contenenti i dati convertiti.
oggetto scrutinio che contiene i metodi per manipolare i dati e un oggetto dati che è quello che viene salvato nel file json
-
la directory Logger. Contiene sia gli script contenenti i metodi per gestire il log che la directory logs dove sono salvati i file log
-
la directory relativa alla regione (o provincia autonoma). Al momento trento
Ogni regione ha una propria directory (al momento trento) in cui sono presenti:
-
config.php è il file di configurazione. contiene:
URL o path per recuperare i file degli scrutini il path dove salvare i file json convertiti
-
lo script specifico per il recupero e la conversione dei dati (es.: trento_convert_csv.php)
-
la directory dati_convertiti
-
la directory dati_scaricati (si intende scaricati dalla regione. Non usato nel caso di trento, che recupera i dati direttamente dal sito della provincia)
- php ver. 5.6> php 7.2 preferibile
- json extension (default con php 7)
- php installato per essere eseguito da linea di comando (CLI)
- copiare i files e le directory
- dare i permessi in scrittura all'utente che manderà in esecuzione lo script alle seguenti directory:
- Logger/logs
- trento/dati_convertiti
- trento/dati_scaricati
Si devono commentare le costanti di test e decommentare quelle per la produzione nei rispettivi file config.inc.php
-
define ('STATO','= DATI DI PROVA'); //define ('STATO','= DATI DI ESERCIZIO');
-
//define('DATA_ELEZIONI',20200920000000); //versione produzione
define ('DATA_ELEZIONI', 30200920); // versione test
-
define('UPLOAD_URL','http://10.99.36.78:40525');
Cambiare la URL
-
//define('DL_PATH','dl/rainews/elezioni2020/PX/scrutiniG/DE/20200920/TE/08'); // versione in produzione
define('DL_PATH','/dl/rainews/elezioni2020/PX/scrutiniG/DE/30200920/TE/08'); //versione di test
-
Se define('AGGIORNA_ENTI',TRUE) va cambiato il path in cui fare upload degli enti
//define('DL_PATH_ENTI','dl/rainews/elezioni2020/PX/getentiG/DE/20200920/TE/08/'); // versione in produzione
define('DL_PATH_ENTI','/dl/rainews/elezioni2020/PX/getentiG/DE/30200920/TE/08'); //versione di test
-
Nel caso di Bolzano va cambiata anche la costante che definisce la URL dove prendere i dati
// define('REMOTE_SITE_BOLZANO', 'https://press.elezionicomunali.bz.it/'); // versione in produzione
define('REMOTE_SITE_BOLZANO', 'https://test-press.elezionicomunali.bz.it/'); // versione test
Gli script possono essere eseguiti sia da linea di comando che da browser web.
Per eseguire da linea di comando:
-
posizionarsi nella directory della regione di cui si vogliono recuperare e convertire i files
es.: cd regioni_autonome/trento
-
eseguire lo script relativo alla regione
es.: php trento_convert_csv.php
-
i file convertiti si troveranno nella directory dati_convertiti
es.: regioni_autonome/trento/dati_convertiti
Ogni comune avrà un proprio file identificato dal codice istat e l'estensione json
es.: 022241.json
La versione precedente del file verrà copiata in 022241.jsonold.json
-
controllare nella directory regioni_autonome/Logger/logs il risultato dell'elaborazione
I log di sistema di php vengono ridirezionati nel file Logger/logs/php-error.php (configurato in config.php)