====== Appalti ====== ===== Gestione delle schede preparatorie ===== La gestione delle schede preparatorie avviene tramite il servizio di storage ed è composta dai seguenti passaggi. Di seguito il flusso operativo per la gestione di una scheda preparatoria. +------------------------+ | Inizio | +-----------+------------+ | v +------------------------+ | Creazione file vuoto | | /v1/media/create/file | +-----------+------------+ | | restituisce mediaUUID v +------------------------+ | Upload del file | | /v1/media/upload/:uuid | +-----------+------------+ | v +-------------------------------+ | Impostazione autorizzazioni | | /v1/auth/:mediaUUID | +-----------+-------------------+ | v +-----------------------------------------------+ | Aggiornamento metadati risorsa booking | | /booking/v1/book/entity/update/resource/:id | +-----------+-----------------------------------+ | v +------------------------+ | Fine | +------------------------+ ==== 1. Creazione del file vuoto ==== Utilizzare il servizio di storage per creare un nuovo file vuoto tramite l’API: /v1/media/create/file Nel body della richiesta specificare il percorso di destinazione, ad esempio: { "path": "/booking/appalti/schede_preparatorie/edificio_14" } La risposta dell’API restituisce un payload contenente l’identificativo univoco del file. È necessario conservarlo per le operazioni successive, ad esempio: { "errorCode": 0, "payload": "696f5dd158b473231bfca779" } ==== 2. Upload del file ==== Per caricare il file all’interno dell’entry appena creata, utilizzare l’API: /v1/media/upload/:uuid Sostituire `:uuid` con l’identificativo restituito nel campo `payload` della risposta precedente e allegare il file da caricare. ==== 3. Abilitazione del download per il servizio di booking ==== Per consentire il download del file da parte del servizio di booking, è necessario configurare le autorizzazioni tramite l’API: /v1/auth/:mediaUUID Dove `mediaUUID` è l’ID del file. Nel body della richiesta POST inserire: { "authorizedUUID": [ "305f164d-2a14-46d0-920b-e0f4b03611e2" ] } dove l'UUID 305f164d-2a14-46d0-920b-e0f4b03611e2 corrisponde all'APP di booking ==== 4. Aggiornamento dei metadati della risorsa di booking ==== Infine, aggiornare i metadati della risorsa di booking in modo che punti al file caricato, utilizzando l’API: /booking/v1/book/entity/update/resource/:resourceID Sostituire `:resourceID` con l’identificativo della risorsa e inviare il seguente body nella richiesta POST: { "metadata": [ { "name": "appalti:scheda-preparatoria", "value": "{ID del file}" } ] }