Skip to main content

6. Implementazione dei WS GISFO-XME e XME-GISFO

due nuovi WS: WS1 da GISFO a XME per chiedere le giornate, WS2 da XME a GISFO per inviare le giornate

Come

anticipato,sarànecessarioimplementareunaseriedi lecomunicazionida

daRicezioneEsitoGDL sidescrivononeldettagliomimiche,lastrutturalemodalitàdigestioneerroridiciascunAllafinedelcapitoloriepilogatiipossibili
Web Tipologia CampoLunghezza Campo AmmessaObbligatorio 
Tratta-progettoTesto600SI 
CNOTesto SIquale nomenclatura verrà usata? GISFO/PNI  o P+/G4W? (A475_CNO1 o CNO1)
LavorazioniTesto SI 
Note LavorazioniTesto NO 
Data GLDate SI 
Stato CantiereTesto SI 
Motivo (Stato Cantiere: Non Attivo)Testo NO 
MeteoTesto SI 
Presenza ArcheologoBool SIse nullService per noigestire ètutte 'NO'
GisFo a XME e viceversa. In particolare, XME dovrà esporre un Web Service volto all' invio dei dati relativi alle giornate lavori e alle tratte da inserire in modo automatico :

  • WS1 da XME a GisFo per invio dati

OreViceversa, lavorateGisFo Archeologodovrà esporre un Web Service volto alla ricezione delle giornate lavori inviate da XME, ossia:

Intero
  • WS2
  • SIGisFo sea presenzaXME archologoper 'SI' ed

    NomeSuccessivamente Lavoratore

    Testo 100 SI le
    Cognomee Lavoratore Testo 100 SI degli
    CodiceWeb fiscaleService. Lavoratore Testo 100 SI sono
    Impresa esecutrice LavoratoreTesto SIchiarireerrori con XMErelativo se su base testo o su base id numerico
    Qualifica Lavoratorecodice.Testo SI 
    Tipologia LavoratoreTesto SI 
    Ore lavorate LavoratoreIntero SI 

    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 CampoLunghezza Campo AmmessaObbligatorio
    Tratta-progettoTesto600SI
    CNOTesto SI
    LavorazioniTesto SI
    Note LavorazioniTesto NO
    Data GLDate SI
    Stato CantiereTesto SI
    Motivo (Stato Cantiere: Non Attivo)Testo NO
    MeteoTesto SI
    Presenza ArcheologoBool NO
    Ore lavorate ArcheologoIntero SI se presenza archologo 'SI'
    Nome LavoratoreTesto100SI
    Cognome LavoratoreTesto100SI
    Codice fiscale LavoratoreTesto100SI
    Impresa esecutrice LavoratoreTesto SI
    Qualifica LavoratoreTesto SI
    Tipologia LavoratoreTesto SI
    Ore lavorate LavoratoreIntero 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.

    WS2

    {
        "id_transaction":1234,
        "tratta_g4w": [ 
            {
                "nome_tratta": "ABI2ARIELLI00000" ,
                "esito_tratta": "KO",
                "giornate":[
                    {
                            "data_gl": "2023-02-06",
                            "esito": "OK",
                            "motivazione": ""
                    }
                    {
                            "data_gl": "2023-02-07",
                            "esito": "OK",
                            "motivazione": "Inserimento mezzi"
                    }
                    {
                            "data_gl": "2023-02-08",
                            "esito": "KO",
                            "motivazione": "Superamento ore Lavoratore,Ore Archeologo non compatibili,ecc"
                    }
                    {
                            "data_gl": "2023-02-09",
                            "esito": "Non Inserito",
                            "motivazione": "Giornata presente e approvata DL"
                    }
                ]
            }
        ]
    }

     

    5.6 Elenco codici errore previsti
    A valle della descrizione dei singoli Web Service, si riepiloga nella seguente tabella l’elenco dei possibili errori previsti in risposta alle comunicazioni ricevute da Geo4Wip.

     

     


    error_code

    error

    ERR_WORKORDER_NOTFOUND

    identificativo progetto non presente sul sistema

    ERR_INVALID_FIELD

    formato non valido/campo obbligatorio mancante per il campo nomecampo

    ERR_INVALID_VALUE

    valore non ammesso per il campo nomecampo

    ERR_UNEXPECTED_EVENT

    notifica non coerente con il flusso

    ERR_REQUESTID_NOTFOUND

    identificativo richiesta idrichiesta non presente a sistema

    ERR_UNEXPECTED_DATE

    nomecampodata non coerente con i dati a sistema

    ERR_GENERIC

    errore generico

     Verranno eventualmente aggiunti gli errori previsti da Geo4Wip in risposta alle Richieste provenienti da GISFO.