2017 © Pedro Peláez
 

library tessera-sanitaria

Export delle prestazioni mediche per il servizio nazionale sanità secondo il formato XML della tessera sanitaria DM 31/07/2015.

image

padosoft/tessera-sanitaria

Export delle prestazioni mediche per il servizio nazionale sanità secondo il formato XML della tessera sanitaria DM 31/07/2015.

  • Tuesday, February 23, 2016
  • by lopadova
  • Repository
  • 3 Watchers
  • 1 Stars
  • 43 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 0 Forks
  • 0 Open issues
  • 7 Versions
  • 0 % Grown

The README.md

PROGETTO TESSERA SANITARIA

Latest Version on Packagist ![Software License][ico-license] Build Status ![HHVM Status][ico-hhvm-status] ![Coverage Status][ico-scrutinizer] Quality Score ![Total Downloads][ico-downloads] SensioLabsInsight, (*1)

Il package permette la creazione di file XML delle prestazioni mediche per il servizio nazionale sanità secondo il formato XML della tessera sanitaria definito nel DM 31/07/2015. Per maggiori info si veda il Portale della Tessera Sanitaria: http://sistemats1.sanita.finanze.it/wps/portal/, (*2)

Table of Contents

PREREQUISITI

PHP 5.4+ OpenSSL, (*3)

INSTALLAZIONE OPENSSL

Windows

Scaricare l'eseguibile da https://slproweb.com/products/Win32OpenSSL.html , lanciarlo e seguire le istruzioni a video., (*4)

Linux

OpenSSL é già installato di default in tutte le principali distribuzioni. Eventualmente, controllare la versione tramite il comando:, (*5)

``` bash openssl version, (*6)

se non aggiornata, lanciare i comandi:
``` bash
apt-get update && apt-get upgrade

apt-get install openssl

GENERAZIONE CERTIFICATO E CHIAVE PUBBLICA

Collocare i file del certificato e delle chiavi nella directory specificata nella classe PathHelper (default: /tests/certificates)., (*7)

Se non in possesso dei file ufficiali del ministero, è possibile crearli a scopo di test della libreria seguendo le istruzioni seguenti:, (*8)

Windows

Lanciare il comando dal prompt DOS posizionandosi nella directory dove si trova openssl, di default C:\OpenSSL-Win32\bin, (*9)

Linux

Non é necessario spostarsi nel path, in quanto openSSL dovrebbe essere già essere disponibile all'avvio della shell., (*10)

Comandi da eseguire

generazione chiave privata ``` bash openssl genrsa -out test.key 1024, (*11)

generazione chiave pubblica
``` bash
openssl rsa -in test.key -out test.pub -pubout

generazione certificato
``` bash openssl req -new -x509 -out test.crt -key test.key -days 30, (*12)

Vedere anche http://www.programmazione.it/index.php?entity=eitem&idItem=36568

## CONFIGURAZIONE

### Enviroment
Rinominare il file **.env.example** in **.env**
aprirlo con un editor di testo e impostare le variabili:
Esempio Windows:

    TMP_PATH = "c:/xampp/htdocs/tessera-sanitaria/tests/tmp/";
    CERT_FILE = "c:/xampp/htdocs/tessera-sanitaria/tests/certificates/test.crt";
    OPENSSL_EXE_PATH = "c:/OpenSSL-Win32/bin/";

Esempio Linux:

    TMP_PATH = "/var/www/html/tessera-sanitaria/tests/tmp/";
    CERT_FILE = "/var/www/html/tessera-sanitaria/tests/certificates/test.crt";
    OPENSSL_EXE_PATH = "";

### Permission folder
Rendere queste directory scrivibili da php:
``` bash
chmod -R 777 /var/www/html/padosoft/tessera-sanitaria/tests/tmp/
chmod -R 777 /var/www/html/padosoft/tessera-sanitaria/tests/output/
chmod -R 777 /var/www/html/padosoft/tessera-sanitaria/tests/log/
chmod -R 777 /var/www/html/padosoft/tessera-sanitaria/vendor/luminous/luminous/cache/

CHANGE LOG

Please see CHANGELOG for more information what has changed recently., (*13)

USO DELLA LIBRERIA

INSTALLAZIONE DEL PROGETTO

Per installare il progetto con il demo, andare nella directory del proprio web server, e lanciare il comando:, (*14)

``` bash composer create-project padosoft/tessera-sanitaria --dev, (*15)


Supponendo un installazione su windows con XAMPP: ``` bash cd C:\xampp\htdocs composer create-project padosoft/tessera-sanitaria --dev

a questo punto è possibile visitare l'url http://localhost/tessera-sanitaria/tests/index.php e visualizzare la pagina demo., (*16)

ESEMPIO BASE

L'utilizzo base del pacchetto, al netto del caricamento delle dipendenze, prevede l'istanza della classe per il tracciato, il passaggio dei dati necessari alla creazione dell'XML e il successivo recupero del codice in una variabile di tipo stringa: ``` php // Istanzia la classe per il tracciato $objTracciato = new Tracciato($objValidateHelper);, (*17)

// Crea XML $rispostaTracciato = $objTracciato->doTracciato($codiceRegione, $codiceAsl, $codiceSSA, $cfProprietario, $pIva, $arrSpesa, $arrVociSpesa);, (*18)

// Recupera l'XML creato $strXML = $objTracciato->getXml();, (*19)

Successivamente, la stringa ricavata potrà essere usata per:

- Stampare direttamente il codice a video
- Creazione file XML
- Creazione file XML compresso

tramite vari metodi analizzati nel successivo paragrafo "Output".

## OUTPUT

La stringa XML recuperata dal metodo getXml() della classe Tracciato può essere utilizzata nei seguenti modi:

### Output a video

I metodi della classe PrintHelper stampano a video il codice XML generato.
Servendosi della libreria Luminous (https://github.com/markwatkinson/luminous) , il codice viene formattato tramite un'interfaccia chiara ed esteticamente gradevole.
``` php
// Stampa header template html
PrintHelper::printHtmlHeader();

// Recupera l'esito e gli eventuali errori
PrintHelper::printError($objTracciato, $logger, $objValidateHelper);

// Stampa l'XML formattato
PrintHelper::printXML($strXML);

// Stampa comandi
PrintHelper::printButton();

// Stampa html footer
PrintHelper::printHtmlFooter();

Creazione File

La classe IOHelper permette di trasformare la stringa XML nel corrispondente file, sia in versione estesa che compressa. I due metodi che si occupano di queste operazioni sono i seguenti: ``` php // Salva XML su file IOHelper::outputFile($strXML, $pathOutput, $basePath);, (*20)

// Crea lo zip al volo e salva su $destinationZip IOHelper::zipFileOntheFly($pathOutput, $destinationZip, $strXML); ```, (*21)

VALIDAZIONE

La validazione dei dati passati al metodo doTracciato avviene in modo trasparente per l'utente, tramite la classe ValidateHelper richiamata dal metodo stesso. I parametri di validazione si basano sul documento ufficiale fornito dal ministero della sanità: http://sistemats1.sanita.finanze.it/wps/wcm/connect/487b0bba-6a65-42f9-8b43-2fb907fe7e91/730+Schema+dati+spesa+sanitaria+(28_09_2015)_v2.pdf?MOD=AJPERES&CACHEID=487b0bba-6a65-42f9-8b43-2fb907fe7e91, (*22)

ESEMPIO COMPLETO

Un esempio esaustivo di tutte le funzionalità summenzionate si trova in /tests/index.php , che carica anche tutte le dipendenze necessarie. Tutti i precedenti esempi di codice sono stati ricavati da questo file., (*23)

Screenshot esempio

Uno screenshot di esempio si trova nella cartella resources/img demo tessera-sanitaria, (*24)

Contributing

Please see CONTRIBUTING and CONDUCT for details., (*25)

Security

If you discover any security related issues, please email instead of using the issue tracker., (*26)

Credits

About Padosoft

Padosoft is a software house based in Florence, Italy. Specialized in E-commerce and web sites., (*27)

License

The MIT License (MIT). Please see License File for more information., (*28)

The Versions

23/02 2016

dev-master

9999999-dev https://bitbucket.org/padosoft/tessera-sanitaria/

Export delle prestazioni mediche per il servizio nazionale sanità secondo il formato XML della tessera sanitaria DM 31/07/2015.

  Sources   Download

MIT

The Requires

 

The Development Requires

xml export padosoft tessera sanitaaria servizio sanitario nazionale

23/01 2016

1.0.5

1.0.5.0 https://bitbucket.org/padosoft/tessera-sanitaria/

Export delle prestazioni mediche per il servizio nazionale sanità secondo il formato XML della tessera sanitaria DM 31/07/2015.

  Sources   Download

MIT

The Requires

 

The Development Requires

xml export padosoft tessera sanitaaria servizio sanitario nazionale

09/01 2016

1.0.4

1.0.4.0 https://bitbucket.org/padosoft/tessera-sanitaria/

Export delle prestazioni mediche per il servizio nazionale sanità secondo il formato XML della tessera sanitaria DM 31/07/2015.

  Sources   Download

MIT

The Requires

 

The Development Requires

xml export padosoft tessera sanitaaria servizio sanitario nazionale

07/12 2015

1.0.3

1.0.3.0 https://bitbucket.org/padosoft/tessera-sanitaria/

Export delle prestazioni mediche per il servizio nazionale sanità secondo il formato XML della tessera sanitaria DM 31/07/2015.

  Sources   Download

MIT

The Requires

 

The Development Requires

xml export padosoft tessera sanitaaria servizio sanitario nazionale

07/12 2015

1.0.2

1.0.2.0 https://bitbucket.org/padosoft/tessera-sanitaria/

Export delle prestazioni mediche per il servizio nazionale sanità secondo il formato XML della tessera sanitaria DM 31/07/2015.

  Sources   Download

MIT

The Requires

 

The Development Requires

xml export padosoft tessera sanitaaria servizio sanitario nazionale

05/12 2015

1.0.1

1.0.1.0 https://bitbucket.org/padosoft/tessera-sanitaria/

Export delle prestazioni mediche per il servizio nazionale sanità secondo il formato XML della tessera sanitaria DM 31/07/2015.

  Sources   Download

MIT

The Requires

 

The Development Requires

xml export padosoft tessera sanitaaria servizio sanitario nazionale

05/12 2015

1.0.0

1.0.0.0 https://bitbucket.org/padosoft/tessera-sanitaria/

Export delle prestazioni mediche per il servizio nazionale sanità secondo il formato XML della tessera sanitaria DM 31/07/2015.

  Sources   Download

MIT

The Requires

 

The Development Requires

xml export padosoft tessera sanitaaria servizio sanitario nazionale