Skip to main content

6.1 WS1 per Invio dati Giornale Lavori

Per ogni transazione, si avrà una comunicazione sul WS 1 a seguito della richiesta dell'operatore, evento che definisce la data di inizio Transazione.
Il WS esposto sarà di tipo RESTful, metodo HTTP POST, raggiungibile tramite il seguente URL:

La struttura dell’oggetto json inserito nel body dell'invio del WS 1 dovrà essere analoga alla seguente:

{
    "id_transaction":1234,
    "tratta_g4w": [ 
        {
            "nome_tratta": "ABI2ARIELLI00000",
            "giornate":[
                {
                    "data_gl": "2023-02-06",
                    "stato_cantiere":"Attivo",
                    "motivo_stato_cantiere": null,
                    "meteo": "Sereno",
                    "presenza_archeologo": true,
                    "ore_lavorate_arch": 1.5,
                    "cno":[
                        {
                            "nome_cno": "CNO1",
                            "lavorazioni":[
                                    {
                                        "lavorazione": "Minitrincea",
                                        "note_lavorazione": "Via Poggibonsi",
                                    }
                            ]
                        }
                    ],
                    "lavoratori":[
                            {
                                "nome":"Federico",
                                "cognome":"Rossi",
                                "cod_fisc":"FRTRSS90M111L",
                                "impresa":"12339760964",
                                "dettagli_lavoratore":[
                                    {
                                        "qualifica_lavoratore": "Operaio Comune",
                                        "tipologia_lavoratore": "Distacco",
                                        "ore_lavorate": 8
                                    }
                                ]
                            }
                    ]
                }
            ]
        }
    ]
}

  Tipologia Campo Lunghezza max Obbligatorio
ID_Transaction Testo
SI
Tratta-progetto Testo 600 SI
CNO Testo   SI
Lavorazioni Testo   SI
Note Lavorazioni Testo   NO
Data GL Date   SI
Stato Cantiere Testo   SI
Motivo (Stato Cantiere: Non Attivo) Testo   NO
Meteo Testo   SI
Presenza Archeologo Bool   NO
Ore lavorate Archeologo Intero   SI se presenza archeologo 'SI'
Nome Lavoratore Testo 100 SI
Cognome Lavoratore Testo 100 SI
Codice fiscale Lavoratore Testo 100 SI
Impresa esecutrice Lavoratore Testo   SI
Qualifica Lavoratore Testo   SI
Tipologia Lavoratore Testo   SI
Ore lavorate Lavoratore Intero   SI

Per la parte riguardante la presenza archeologo, il controllo sarà tale che in caso il campo sia null GisFo compilerà il campo con NO.

Il WS esposto restituirà un HTTP CODE “200”. Dopo aver effettuato dei controlli sui dati ricevuti, GISFO ne dettaglierà l’esito all’interno del body JSON della risposta, che sarà strutturata come riportato di seguito. 

{
    “id_transaction”: “1234”,
    “result”: “KO”,
    “error_code”: “ERR_400_Bad Request”,
    “message”: ” La richiesta non può essere soddisfatta a causa di errori di sintassi.”

}

  Tipologia Campo Lunghezza max Obbligatorio Valori
id_transaction Testo 50 SI
result Bool 2 SI 'ok/ko'
error_code Testo  50 SI
message Testo 100 SI

Di seguito è riportato l’elenco dei controlli previsti per cui verrà restituito l'errore 'ERR_400_Bad Request':

 
  1. La tipologia di campo non è quella ammessa dalla tabella della caratteristiche json Riquest;
  2. La lunghezza del campo non è quella ammessa dalla tabella della caratteristiche json Riquest;
  3. Un campo obbligatorio non è stato popolato
  4.  Un campo non è conforme con le pick list condivise