...
Titel | Auftrag (Providerwechsel / Verbundleistung) anlegen |
---|---|
Kurzbeschreibung | Folgender Ablauf beschreibt für den Gut-Fall die typischen API Interaktionen zwischen dem aufnehmenden Auftrageber (EKPauf und TNBauf, aka AGauf), dem Leistungserbringer (LE, aka ANE) und dem abgebenden Auftraggeber (EKPab und TNBab, aka ABab) im Anwendungsfall "Auftrag (Providerwechsel / Verbundleistung) anlegen" von der Anlage des Auftrags bis zu seinem Abschluss. Dabei werden die für diesen Ablauf erforderlichen Auftrags-Status durchlaufen und die für diesen Ablauf relevanten Informationen übermittelt. Folgender Ablauf beschreibt die typischen API Interaktionen zwischen dem aufnehmenden Auftrageber (EKPauf und TNBauf, im Sequenzdiagramm ), dem Leistungserbringer (LE, aka ANE) und dem abgebenden Auftraggeber (EKPab und TNBab, aka ABab) für die Anwendungsfälle "Auftrag (Providerwechsel / Verbundleistung) anlegen - Gutfall". Zu diesen Anwendungsfall sind zwei Sequenzen relevant:
|
Vorbedingung |
|
Auslöser | Der aufnehmende Auftraggeber legt einen Auftrag für den Providerwechsel bzw. die Verbundleistung beim Leistungserbringer (ANE) an. |
Ergebnis | Das Produkt wurde erfolgreich bereitgestellt |
...
Codeblock | ||||
---|---|---|---|---|
| ||||
@startuml autonumber box TMF622 Product Order, category=PV participant eauf as "Buyer of new line: Ordering" participant tauf as "Seller of new line: Product Order" box TMF622 Product Order, category=TerminationProvider participant leab as "Seller of old line: Product Order" participant tab as "Buyer of old line: Ordering" eauf -> tauf: POST ProductOrder(productOrderItemCreate, VAId) eauf <-- tauf: 201 Created(acknowledged) note right: PV alt Kaufmännische Validierung schlägt fehl eauf <- tauf: ProductOrderStatusChangeEvent(PO, Rejected) note right: ABBM else Kaufmännische Validierung erfolgreich eauf <- tauf: ProductOrderStatusChangeEvent(PO, Accepted) note right: QEB tauf -> leab: notifyKUE note over leab, tab: Die Sequenz [[https://confluence.t-systems-mms.eu/pages/viewpage.action?pageId=547957140 Auftrag (Kündigung durch LE, GF PV/VBL) anlegen]] wird hier inkludiert leab ->tauf:notifyRUEM-PV(approval, reason) alt negative RUEM-PV note over eauf, tauf: Siehe [[https://confluence.t-systems-mms.eu/pages/viewpage.action?pageId=587837181 1) Negative RespondProviderChange (RUEM-PV)]] else positive RUEM-PV alt Fehlschlag Technische Validierung und Erteilung eauf <- tauf: ProductOrderStatusChangeEvent(PO, Rejected) note right: ABBM tauf -> leab: notifyRejected leab -> tab: ProductOrderStatusChangeEvent(PO2, Rejected) note right: ABBM-PV else Technische Validierung und Erteilung erfolgreich eauf <- tauf: POST ProductOrderAttributeValueChangeEvent() note right: e.g.: expectedCompletionDate eauf <- tauf: ProductOrderStateChangeEvent(PO,InProgress) note right: ABM tauf -> leab:notifyInProgress leab -> tab:POST ProductOrderAttributeValueChangeEvent() note right: e.g.: expectedCompletionDate leab -> tab: ProductOrderStatusChangeEvent(PO2, InProgress) note right: ABM-PV alt Fehlschlag während der Realisierung note over eauf, tauf: Siehe [[https://confluence.t-systems-mms.eu/display/tfit/2%29+Fehlschlag+beim+Leistungserbringer 2) Fehlschlag beim Leistungserbringer]] else Realisierung erfolgreich alt Fehlschlag am Schalttag note over eauf, tauf: Siehe [[https://confluence.t-systems-mms.eu/display/tfit/3%29+Fehlschlag+am+Schalttag 3) Fehlschlag am Schalttag]] else Schaltung erfolgreich eauf <- tauf: ProductOrderStateChangeEvent(PO,Completed) note right: ERLM tauf -> leab:notifyInCompleted leab -> tab: ProductOrderStatusChangeEvent(PO2, Completed) note right: ERLM-PV eauf <- tauf: POST ProductOrderAttributeValueChangeEvent() note right: e.g.: productOrderItem.product.startDate eauf <- tauf: ProductOrderStateChangeEvent(PO,Closed) note right: ENTM tauf -> leab:notifyInClosed leab -> tab: POST ProductOrderAttributeValueChangeEvent() note right: e.g.: productOrderItem.product.endDateterminationDate leab -> tab: ProductOrderStatusChangeEvent(PO2, Closed) note right: ENTM-PV end end end end end @enduml |
...