Skip to main content

WCF - Riconoscere se un Produttore - Titolare è stato migrato

Work in progress. Documentazione in fase di completamento.

Come riportato in questo articolo i produttori e titolari sono oggetto di una migrazione che porterà produttori e titolari all'interno dell'ecosistema digital. 

Durante il passaggio gli integratori potrebbero aver bisogno di sapere se una posizione è già stata oggetto di migrazione o meno. Proprio per questo è stata sviluppata una API specifica che, oltre a riportare lo stato corrente di un produttore sia rispetto alla migrazione fornisce utili informazioni sullo stato della posizione, sulla possibilità di effettuare conservazione sullo specifica coppia titolare / produttore e infine, consente di ricevere utili informazioni sullo stato della dichiarazione del responsabile della conservazione.

La documentazione della API è disponibile in test all'indirizzo: 

https://archive-config-read.test.teamsystem.digital/swagger-ui/index.html?url=/v3/api-docs#/Archive%20config%20read/getConfigStatusReport

La stessa API è disponibile in produzione all'indirizzo 

https://archive-config-read.teamsystem.digital/swagger-ui/index.html?url=/v3/api-docs#/Archive%20config%20read/getConfigStatusReport

L'endpoint è richiamabile da un utente del mondo digital che abbia i permessi in lettura su submitter per ottenere un report sullo stato di attivazione della configurazione e attivazione della coppia submitter e holder. 

Nel caso in cui non esistano credenziali digital che possano operare sul submitter e holder, oppure che la azienda non abbia una posizione correttamente registrata nel portale digital e quindi non siano disponibili gli UUID per effettuare la chiamata a questo servizio è implicito che la migrazione non è ancora stata effettuata e deve essere regolarizzata la posizione come descritto in questo articolo.

Di seguito un esempio di chiamata CURL al servizio

14
 
1
curl -X 'GET' 
2
  'https://archive-config-read.test.teamsystem.digital/api/v1/config/[submitterUUID]/[holderUUID]/config-status-report' 
3
  -H 'accept: application/json' 
4
  -H 'User-Agent: {replace-with-caller-user-agent}' 
5
  -H 'X-App-Name: {replace-with-caller-app-name}' 
6
  -H 'X-App-Version: {replace-with-caller-app-name}' 
7
  -H 'X-Request-ID: {random-request-id}' 
8
  -H 'X-Correlation-ID: {correlation-id}' 
9
  -H 'X-Item-ID: {holderUUId}' 
10
  -H 'X-User-ID: {replace-with-current-user-id}' 
11
  -H 'X-Manager-ID: {submitterUUID}' 
12
  -H 'Accept-Language: it' 
13
  -H 'X-Forwarded-For: {replace-with-forwarded-for-information}' 
14
  -H 'Authorization: Bearer  {auth jwt token}

Richiamando  il servizio con un token autorizzativo ottenuto dal sistema di autenticazione standard è possibile ottenere una risposta simile alla seguente:

10
 
1
{
2
  "lastModifiedDate": "2023-02-14T11:25:01.306098306Z",
3
  "configType": "DIGITAL",
4
  "preservationUploadAvailable": false,
5
  "userMessage": "Responsabile della conservazione non valorizzato;",
6
  "details": {
7
    "rdcConfigured": false,
8
    "readOnly": true
9
  }
10
}

si vede come nella sezione "configType" è riportato il termine DIGITAL, evidenza del fatto che la coppia produttore e titolare richiesti nella chiamata è stata effettivamente attivata nel nuovo sistema di configurazione.

Nel caso in cui invece il sistema venga utilizzato su una coppia di submitter e holder non ancora migrati troveremo una risposta smile alla seguente:

10
 
1
{
2
  "lastModifiedDate": null,
3
  "configType": "LEGACY",
4
  "preservationUploadAvailable": false,
5
  "userMessage": "Titolare non abilitato; Data attivazione Titolare non valida;",
6
  "details": {
7
    "rdcConfigured": true,
8
    "readOnly": false
9
  }
10
}



Vediamo inoltre altre informazioni interessanti nella risposta, infatti