L'importation des fichiers IFC est basée au niveau du modèle Site.
Dans le contrôleur Site
, le fichier est téléchargé est transformé pour l'importation dans la base de données Mongo :
POST /three/site/:siteId/import/ifc
multipart/form-data
ifc
contenant le fichier IFC à envoyerRemarque importante: cette requête n'attend pas la fin de l'importation du fichier pour renvoyer une réponse. Au contraire, si l'API reçoit un fichier correct elle renvoie immédiatement pour avertir le client que le fichier est bien reçu et qu'il est en traitement.
Le fichier doit être envoyé en mode multipart
et attaché à la requête sous le nom de ifc
.
La fonction importIfc
est appelée pour lancer le processus :
/src/controllers/three.core.controller.ts
Envoi du fichier
HttpResponse<String> response = Unirest.post("http://localhost:3001/three/site/5dea56767e6ac104dac9fde0/import/ifc?apiKey=e4be3bd3fb61")
.header("content-type", "multipart/form-data; boundary=---011000010111000001101001")
.header("authorization", "Bearer 0761528b2a3c1d969d85767c686dafb2")
.body("-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"ifc\"\r\n\r\n\r\n-----011000010111000001101001--\r\n")
.asString();
Réponse
{
"id":"60991bd286960500085cfec8",
"_createdAt":"2021-05-07T10:41:06.209Z",
"_updatedAt":"2021-05-07T11:41:06.209Z",
"status":"in-progress",
"startedAt":"07-05-2021"
}
/src/controllers/three.site.controller.ts
GET /three/site/:siteId/import/ifc/:operationId
application/json
Réponse
{
"id":"60991bd286960500085cfec8",
"_createdAt":"2021-05-07T11:41:06.209Z",
"_updatedAt":"2021-05-07T11:41:06.209Z",
"status":"in-progress",
"startedAt":"07-05-2021"}
Status
Workflow
Generated using TypeDoc