Skip to content

Quando l'operatore assegna un case a un ufficio, bisogna assegnare la pratica all'ufficio corrispondente 

Quando si riceve la notifica di modifica di un case sul CzRM è necessario fare quanto segue:

Struttura notifica in arrivo:

{
  "X-Forwarded-For": "85.222.158.8",
  "entity": "Case",
  "event_created_at": "2023-05-04T10:04:15.673617841Z",
  "event_id": "8573e9d6-dfa4-4489-9be2-ec63a981025d",
  "event_version": 1,
  "id": "5005E00000H0LCHQA3",
  "segnalaCiId": null,
  "updated_at": "2023-05-02T14:47:02.000Z"
}
  1. Eseguo sul CzRM un GET /Case/{id} e prendo il valore del campo Direzione_Ufficio__c, Stato_Front_End__c e SegnalaciId__c
  2. Eseguo su SegnalaCi una GET /applications/byexternal-id/{externalId} dove externalId è il campo id della notifica ricevuta, se viene ritornato un 404 significa che è una nuova segnalazione e bisogna quindi crearla ex novo prima di procedere con gli step successivi (issue #29)
  3. Se Stato_Front_End__c sul case ha valore diverso da Chiuso e Direzione_Ufficio__c sul case non è null procedo con gli step successivi, altrimenti significa che la segnalazione è stata chiusa o che la segnalazione non è stata ancora assegnata sul CzRM ad un ufficio e quindi non è necessario assegnarla e/o operare un cambio di stato lato nostro
  4. Eseguo su segnalaci una GET /user-groups
  5. Prendo il campo id dell'ufficio che ha come valore del campo name il valore del campo Direzione_Ufficio__c
  6. se non si trova l'ufficio allora si esegue una POST /user-groups con il seguente body. Questa call mi ritornerà l'id_ufficio da usare al punto 6
{
  "name": "<Direzione_Ufficio__c>",
}
  1. Eseguo una POST /applications/{SegnalaciId__c}/transition/assign con payload(questa serve a fare il cambio di stato)
{
   "user_group_id": {id_ufficio},
   "message": "string", # opzionale
   "assigned_at": "2023-04-24T12:40:24.779Z" # opzionale
}

┆Issue is synchronized with this Wrike task

Edited by Mouslim Fatnassi