Attachments
Création d'une pièce jointe
Route
POST /rest/attachments
Paramètres
Body
Valeur |
Type |
Obligatoire |
Description |
format |
string |
Oui |
Format du fichier transmit |
encodedFile |
base64 |
Oui |
Fichier encodé en base64 |
data |
array |
Oui |
Tableau de données |
version |
boolean |
Non |
Créer une nouvelle version |
Le tableau data contient les informations du courrier à enregistrer sous la forme (JSON) :
[
{"column" : "res_id_master", "value" : "101"},
{"column" : "title", "value" : "Ma pièce jointe préférée"},
{"column" : "attachment_type", "value" : "response_project"}
]
Les "column" res_id_master et attachment_type sont obligatoire pour la création d'une pièce jointe
Les différentes "column" disponibles sont celles de la table res_attachments visible ici.
Exemple
// JSON
{
"encodedFile": "JVBERi0xLjQgLi4u",
"format" : "PDF",
"data" : [
{"column" : "res_id_master", "value" : "99"},
{"column" : "title", "value" : "Attestation notariale"},
{"column" : "attachment_type", "value" : "response_project"},
{"column" : "typist", "value" : "bbain"},
{"column" : "identifier", "value" : "MAARCH/2019D/25"},
{"column" : "dest_user", "value" : "bboule"}
]
}
Retour
Code Http |
Type |
Description |
Exemple |
200 |
array |
La pièce jointe a bien été créé |
['resId' => 123] |
400 |
array |
Un paramètre obligatoire est manquant |
['errors' => 'Bad Request'] |
500 |
array |
Une erreur s'est produite |
['errors' => '[AttachmentController create] ...'] |
Récupération des pièces jointes associées à un courrier
Route
GET /resources/{resId}/attachments
Paramètres
URL
Valeur |
Type |
Obligatoire |
Description |
resId |
int |
Oui |
Identifiant du courrier |
Exemple
// URL
http://localhost/cs_maarch/rest/res/100/attachments
Retour
Code Http |
Type |
Description |
Exemple |
200 |
array |
Informations liées aux pièces jointes du courrier |
['attachments' => '[...]'] |
403 |
array |
Document hors du périmètre de l'utilisateur |
['errors' => 'Document out of perimeter'] |
Données
Valeur |
Type |
Description |
attachments |
array |
Liste des pièce jointes du courrier |
Données attachments
Valeur |
Type |
Description |
res_id |
int |
Identifiant de la pièce jointe |
identifier |
string |
Numéro chrono de la pièce jointe |
title |
string |
Objet de la pièce jointe |
format |
string |
Extension de la pièce jointe |
creation_date |
timestamp without time zone |
Date de création de la pièce jointe |
update_date |
timestamp without time zone |
Date de dernière modification de la pièce jointe |
return_date |
timestamp without time zone |
Date de retour théorique de la pièce jointe |
real_return_date |
timestamp without time zone |
Date de retour effective de la pièce jointe |
firstname_updated |
string |
Prénom de la dernière personne ayant modifié la pièce jointe |
laststname_updated |
string |
Nom de la dernière personne ayant modifié la pièce jointe |
relation |
int |
Numéro de version de la pièce jointe |
docserver_id |
string |
Identifiant de la zone de stockage utilisé |
path |
string |
Chemin d'accès au fichier stocké sur la zone de stockage |
filename |
string |
Nom du fichier de la pièce jointe |
fingerprint |
string |
Empreinte numérique du fichier de la pièce jointe |
filesize |
int |
Taille du fichier de la pièce jointe |
status |
string |
Statut de la pièce jointe |
attachment_type |
string |
Type de la pièce jointe |
dest_contact_id |
int |
Identifiant contact associé à la pièce jointe |
dest_address_id |
string |
Identifiant adresse associé à la pièce jointe |
firstname_typist |
string |
Prénom du créateur de la pièce jointe |
lastname_typist |
string |
Nom du créateur de la pièce jointe |
Exemple
// JSON
{
"attachments": [
{
"res_id": 1,
"identifier": "MAARCH/2019D/1",
"title": "courrier départ",
"format": "odt",
"creation_date": "2019-01-01 16:52:04.973028",
"update_date": "2019-01-13 17:02:19.798702",
"return_date": null,
"real_return_date": null,
"firstname_updated": "Bernard",
"lastname_updated": "BLIER",
"relation": 1,
"docserver_id": "FASTHD_MAN",
"path": "2019#01#0001##",
"filename": "0001_1900098502.odt",
"fingerprint": "02752fd6ec0f0205c35895d27b6b05bff3c5c60d9805fdb6ccbe9e2b08817c3c62b1b6f83e3f973da8ace6c592477d70de28fd5bb2059c4020ef12edf19760d8",
"filesize": 29973,
"status": "PJ à traiter",
"attachment_type": "outgoing_mail",
"dest_contact_id": 1,
"dest_address_id": 3,
"firstname_typist": "Bernard",
"lastname_typist": "BLIER"
}
]
}
Récupération du fichier pdf pièce jointe associées à un courrier
Route
GET /res/{resIdMaster}/attachments/{resId}/content
Paramètres
URL
Valeur |
Type |
Obligatoire |
Description |
resIdMaster |
int |
Oui |
Identifiant du courrier |
resId |
int |
Oui |
Identifiant de la pièce jointe |
Exemple
// URL
http://localhost/cs_maarch/rest/res/100/attachments/2/content
Retour
Code Http |
Type |
Description |
Exemple |
200 |
flux |
Données du fichier rétournées dans une chaîne |
Flux pdf |
403 |
array |
Document hors du périmètre de l'utilisateur |
['errors' => 'Document out of perimeter'] |
403 |
array |
La pièce jointe n'existe pas |
['errors' => 'Attachment not found'] |
400 |
array |
La zone de stockage des pièces jointes n'éxiste pas |
['errors' => 'Docserver does not exist'] |
400 |
array |
L'empreinte numérique du fichier ne correspond pas à celui de la base de données |
['errors' => 'Fingerprints do not match'] |
404 |
array |
Le fichier de de la pièce jointe est introuvable |
['errors' => 'Attachment not found on docserver'] |
404 |
array |
La fichier pdf de la pièce jointe n'a pas pu être renvoyé |
['errors' => 'Document not found on docserver'] |
Données
Valeur |
Type |
Description |
Flux pdf |
flux |
Flux pdf |
Récupération de l'imagette pièce jointe associées à un courrier
Route
GET /res/{resIdMaster}/attachments/{resId}/thumbnail
Paramètres
URL
Valeur |
Type |
Obligatoire |
Description |
resIdMaster |
int |
Oui |
Identifiant du courrier |
resId |
int |
Oui |
Identifiant de la pièce jointe |
Exemple
// URL
http://localhost/cs_maarch/rest/res/100/attachments/2/thumbnail
Retour
Code Http |
Type |
Description |
Exemple |
200 |
flux |
Données du fichier rétournées dans une chaîne |
Flux image |
403 |
array |
Document hors du périmètre de l'utilisateur |
['errors' => 'Document out of perimeter'] |
403 |
array |
La pièce jointe n'existe pas |
['errors' => 'Attachment not found'] |
400 |
array |
La zone de stockage des imagettes n'éxiste pas |
['errors' => 'Docserver does not exist'] |
404 |
array |
Le fichier imagette de la pièce jointe est introuvable |
['errors' => 'Thumbnail not found on docserver'] |
Données
Valeur |
Type |
Description |
Flux image |
flux |
Flux image |
Récupération des types de pièce jointes
Route
GET /res/attachmentsTypes
Retour
Code Http |
Type |
Description |
Exemple |
200 |
array |
Informations des types |
['attachment_types' => '[...]'] |
500 |
array |
Erreur serveur |
['errors' => '...'] |
Données
Valeur |
Type |
Description |
attachmentTypes |
array |
Liste des types de pièce jointe disponibles pour l'application |
[identifiant du type de pièce jointe] =>
Valeur |
Type |
Description |
label |
string |
Nom du type de pièce jointe |
icon |
string |
Lettre icone (Utilisé dans le parapheur) |
sign |
boolean |
Flag si le type de pièce jointe peut être signé dans le parapheur |
show |
boolean |
Flag si le type de pièce peut être utilisé graphiquement dans le logiciel |
Exemple
// JSON
{
"attachment_types": {
"response_project": {
"label": "Projet de réponse",
"icon": "R",
"sign": true,
"show": true
},
"transmission": {
"label": "Transmission",
"icon": "TR",
"sign": false,
"show": true
},
"signed_response": {
"label": "Réponse signée",
"icon": "",
"sign": false,
"show": false
},
"outgoing_mail_signed": {
"label": "Courrier départ signé",
"icon": "DS",
"sign": true,
"show": true
},
"simple_attachment": {
"label": "Pièce jointe",
"icon": "PJ",
"sign": false,
"show": true
},
"incoming_mail_attachment": {
"label": "Pièce jointe capturée",
"icon": "",
"sign": false,
"show": true
},
"waybill": {
"label": "Bordereau d'envoi",
"icon": "BE",
"sign": true,
"show": true
},
"routing": {
"label": "Fiche de circulation",
"icon": "FC",
"sign": false,
"show": false
},
"outgoing_mail": {
"label": "Courrier départ spontané",
"icon": "DS",
"sign": true,
"show": true
},
"converted_pdf": {
"label": "PDF converti par la solution",
"icon": "",
"sign": false,
"show": false
},
"print_folder": {
"label": "Dossier",
"icon": "",
"sign": false,
"show": false
},
"sva": {
"label": "SVA",
"icon": "VA",
"sign": true,
"show": true
},
"svr": {
"label": "SVR",
"icon": "VR",
"sign": true,
"show": true
},
"document_with_notes": {
"label": "Document annoté",
"icon": "",
"sign": false,
"show": false
}
}
}