This repository was archived by the owner on Jun 29, 2023. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathsequence_multi_api.puml
More file actions
68 lines (56 loc) · 3.78 KB
/
Copy pathsequence_multi_api.puml
File metadata and controls
68 lines (56 loc) · 3.78 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
@startuml
'https://plantuml.com/sequence-diagram
autonumber
group Pré requis dépot ticket
"Customer" -> "Anomalie IPE API": **POST /anomalieIpe** : Définition de l'anomalie
"Anomalie IPE API" -> "Customer": **HTTP 201** Renvoi de l'url / id de l'anomalie déclarée
note right: "json" : { "id": "monIdentifiantAnomalie", "href": "le lien vers l'api anomalie"}
"Customer" -> "Attachment API": **POST /attachment** Upload d'un fichier
... Upload du fichier ...
"Attachment API" --> "Customer": **HTTP 201** Renvoi de l'url / id fichier
end
group Création / mise à jour par le client
Customer -> "Ticketing API" : **POST /troubleTicket** Création du ticket à **acknowledged** \navec ses références de **documents** et d'**anomalie**
note right: json : {\n"type": "addresse.modification", \n"relatedEntity": [{\n "id": "monIdentifiantAnomalieIpe", \n "href": "le lien vers l'api anomalie"\n }]}
"Ticketing API" --> Customer : **HTTP 201** Identifiant du ticket
... ...
Customer -> "Ticketing API" : **PATCH /troubleTicket/{id}** Ajout d'informations complémentaires via les notes
"Ticketing API" --> Customer : **HTTP 200** Ticket mis à jour
... ...
group Abonnement si nécessaire
Customer -> "Ticketing API" : **POST /hub** Abonnement aux notifications \n pour une requete du client avec url de callback
"Ticketing API" --> Customer : **HTTP 201** Abonnement effectué
end
end
group Traitement du ticket
... ...
"Ticketing API" -> "Ticketing API" : Maj du ticket : Passage en **inProgress** \n suite à qualification OK
"Ticketing API" -> "Customer" : **POST callbackUrl/troubleTicketStatusChangeEvent** \n avec évènement passage à **inProgress**.\n Valorisation de la complexité et de la date de résolution estimée
"Customer" --> "Ticketing API" : **HTTP 201** Evènement reçu
... ...
"Ticketing API" -> "Ticketing API" : Maj du ticket : Passage en **pending** \npour demande d'info client
"Ticketing API" -> "Customer" : **POST callbackUrl/troubleTicketStatusChangeEvent** \n avec évènement passage à **pending**
"Customer" --> "Ticketing API" : **HTTP 201** Evènement reçu
group Traitement client
"Customer" -> "Attachment API": **POST /attachment** Upload d'un fichier supplémentaire
... Upload du fichier ...
"Attachment API" --x "Customer": **HTTP 500** Ko lors de l'envoi du fichier
Customer -> "Ticketing API" : **PATCH /troubleTicket/{id}** Ajout de notes seulement car fichier KO
"Ticketing API" --> Customer : **HTTP 200** Ticket mis à jour
... retry quelques heures après ...
"Customer" -> "Attachment API": **POST /attachment** Upload d'un fichier
"Attachment API" --> "Customer": **HTTP 201** Renvoi de l'url / id fichier
Customer -> "Ticketing API" : **PATCH /troubleTicket/{id}** Ajout des pieces jointes
"Ticketing API" --> Customer : **HTTP 200** Ticket mis à jour
end
"Ticketing API" -> "Ticketing API" : Maj du ticket : Passage en **inProgress**
"Ticketing API" -> "Customer" : **POST callbackUrl/troubleTicketStatusChangeEvent** \n avec évènement passage à **inProgress**
"Customer" --> "Ticketing API" : **HTTP 201** Evènement reçu
"Ticketing API" -> "Ticketing API" : Maj du ticket : Passage en **resolved**
"Ticketing API" -> "Customer" : **POST callbackUrl/troubleTicketStatusChangeEvent** \n avec évènement passage à **resolved**
"Customer" --> "Ticketing API" : **HTTP 201** Evènement reçu
"Ticketing API" -> "Ticketing API" : Maj du ticket : Passage en **closed**
"Ticketing API" -> "Customer" : **POST callbackUrl/troubleTicketStatusChangeEvent** \n avec évènement passage à **closed**
"Customer" --> "Ticketing API" : **HTTP 201** Evènement reçu
end
@enduml