Versionen im Vergleich

Schlüssel

  • Diese Zeile wurde hinzugefügt.
  • Diese Zeile wurde entfernt.
  • Formatierung wurde geändert.

Beschreibung

TitelAuftrag (Kündigung durch AG) anlegen
Kurzbeschreibung

Folgender Ablauf beschreibt die typischen API-Interaktionen zwischen Auftraggeber und Leistungserbringer im Anwendungsfall "Kündigung durch Auftraggeber/Kunde".

Dieser Anwendungsfall behandelt die Kündigung eines Produktes durch den Auftraggeber. Die Kündigung muss sich auf ein im Bestand des jeweiligen Auftraggebers befindliches Produkt beziehen. Eine Kündigung ist nur dann möglich, wenn keine weiteren offenen Aufträge zum Bestand des Auftraggebers vorliegen. Dies gilt sowohl für Aufträge des bestandsführenden Auftraggebers als auch von anderen Auftraggebern (z.B. beim Geschäftsfall Providerwechsel). Voraussetzung für den Geschäftsfall Kündigung durch Auftraggeber ist ein bestehender Rahmenvertrag zwischen dem Auftraggeber und dem Leistungserbringer sowie die Angabe aller ausführungsrelevanten Daten. 

Entsprechung: KUE/KD in WITA, KUE/AG in SPRI

Vorbedingung
  • Rahmenvertrag ist vorhanden
  • Das zu kündigende Produkt befindet sich im Bestand des Auftraggebers
  • Es liegen keine offenen Aufträge zum Produkt vor
  • Der Auftrageber hat sich für seine Meldungen registiert
Auslöser

Der Auftraggeber legt einen Kündigungsauftrag an.

Ergebnis

Das Produkt wurde gekündigt

Ablauf

Img
src//www.plantuml.com/plantuml/png/hLDDQp8n4BxlhnWywS7bVJtq85JyS0k5RjMwz9xD3Z4qcuJPIQl_ll63ujg2M9h343BFnpm36JSiY4Dj4X7OsL2NI4dfjZ0DktZpiQcbzi8ob20Qw2oeGj9MTHBOdmDsZSOWGP4_t0q6BOvt1zAIN1Ka7xXVHEYFzlqXB1Vh0iuXNIaObQCTtCCS3JBs4k_w_L4PqOD__s56615LLyWtwpuCLWghNc8T8v1M6nv2aQrEFiVgtTwk_C7ig9Mze-LkxofwpH4ysmYhJXGX9Ng-j5zbqwjI4sRIPM1y5IQqDDjQcAeqrgr76NrchlPn8zhPUPpazdcrZMr5s3HjbyaqlrrC7eUvJ9-zFEL_7D-VCHyPw_Jqa39IhQtu_KAaSSst0Cz5depHLl5ZV080

Codeblock
languagetext
collapsetrue
@startuml
autonumber
box Buyer
participant b as "Ordering"
    
box Seller TMF622
participant po as "ProductOrder"
    
b -> po : POST ProductOrder(category = Delete)
po-->b : 201 Created(acknowledged)
note right: TEQ
    
    
po -> b: POST ProductOrderCreateEvent()
    
po -> b: POST ProductOrderStateChangeEvent(accepted)
note right: QEB
    
po -> b: POST ProductOrderAttributeValueChangeEvent()
note right: e.g.: expectedCompletionDate
    
po -> b: POST ProductOrderStateChangeEvent(inProgress)
note right: ABM
    
po -> b: POST ProductOrderStateChangeEvent(completed)
note right: ERLM
    
po -> b: POST ProductOrderAttributeValueChangeEvent()
note right: e.g.: productOrderItem/product.terminationDate
    
po -> b: POST ProductOrderStateChangeEvent(closed)
note right: ENTM
@enduml
DrawiobordertruediagramNameKuendigungsimpleViewerfalselinksautotbstyletoplboxtruediagramWidth1044revision7





Beispieldaten

ProductOrder (Kündigung)

Stashincludebyfilepath
repoSlugfit-root
branchIdrefs/heads/main
projectKeyTFIT
filepathtmf622/examples/ftth-no-opts/product-order-delete-0-create.json
showLineNumberstrue
progLangplain
collapsibletrue
applicationLinkcbfa78ef-cb5e-30f5-8b3b-ec5f9d824e1d

fachliche FelderDaten API FelderBemerkung
technische Daten 
fachliches Bestelldatum des AG2022-05-11T10:30:00+02:00orderPostedDate
Produktdaten
 
GeschäftsfalldeleteproductOrderItem.action

 

Identifikation des Inventars

  • Produkt Identifier (ODER)
  • Einzelvertragsnummer


  • (ODER)
  • 555001


  • Product.id (ODER)
  • Product.singleContractId

Annahme = Identifikation des Inventars über Product.id

Auftragsdaten
Kündigungswunschtermin 2022-12-01T12:00:00+01:00
(Uhrzeit fachlich nicht relevant, aber technisch erforderlich)

ProductOrder.requestedCompletionDate


Kündigungswunschtermin 01.12.2022ProductOrder.requestedCompletionTimePeriod
Auftraggeberdaten

Leistungs-Nummer500012

Agreement.businessId (agreementType = BuyerServiceContract)


Auftraggeber-Nummer
500011Agreement.engagedParty.businessId
Externe Auftragsnr1000111externalIdenitifier.id 

ProductOrderStateChangeEvent: Acknowledged

Stashincludebyfilepath
repoSlugfit-root
branchIdrefs/heads/main
projectKeyTFIT
filepathtmf622/examples/ftth-no-opts/product-order-delete-1-state-change-event-acknowledged.json
showLineNumberstrue
progLangplain
collapsibletrue
applicationLinkcbfa78ef-cb5e-30f5-8b3b-ec5f9d824e1d

fachliche FelderDaten API Felder
Orderstatus acknowledgedstate 
OrderstatusChangeDate2022-05-11T10:31:00+01:00stateChangeDate 
technisches EventDatum2022-05-11T10:32:00+01:00eventTime
Grund der Änderung

0000

"Keine Änderung zum Auftrag"

stateChangeReason.code

stateChangeReason.description





ProductOrderAttributeValueChange (setzen von Auftragsmanagment & VLT)

Stashincludebyfilepath
repoSlugfit-root
branchIdrefs/heads/main
projectKeyTFIT
filepathtmf622/examples/ftth-no-opts/product-order-delete-2-attribute-value-change-event-supplier-contact.json
showLineNumberstrue
progLangplain
collapsibletrue
applicationLinkcbfa78ef-cb5e-30f5-8b3b-ec5f9d824e1d

fachliche FelderDatenAPI Felder
technisches EventDatum 2022-05-11T10:32:00eventTime
Pointer auf die gemachte Änderung

/relatedParty/

/expectedCompletionTimePeriod/

fieldPath.path

fieldPath.typeOfChange = add

Verbindlicher Kündigungstermin2022-12-01T12:00:00+01:00
(Uhrzeit fachlich nicht relevant, aber technisch erforderlich)

ProductOrder.expectedCompletionDate

Verbindlicher Kündigungstermin01.12.2022ProductOrder.expectedCompletionTimePeriod
Rolle orderManagementSupplierContactrelatedParty.role
AnredeFraurelatedParty.salutation (Ms)
VornameLisarelatedParty.givenName
NachnameBachrelatedParty.familyName
Telefonnummer0221/789456

relatedParty/contactMedium.mediumType = phone

relatedParty/contactMedium/characteristic.contactType = fixed

relatedParty/contactMedium/characteristic.phoneNumber 

Mobilfunknummer0178/78787878

relatedParty/contactMedium.mediumType = phone

relatedParty/contactMedium/characteristic.contactType = mobile

relatedParty/contactMedium/characteristic.phoneNumber 

Faxnummer
 
Email-adressel.bach@example.net

relatedParty/contactMedium.mediumType = email

relatedParty/contactMedium/characteristic.contactType = email

relatedParty/contactMedium/characteristic.emailAddress

ProductOrderStateChangeEvent: inProgress

Stashincludebyfilepath
repoSlugfit-root
branchIdrefs/heads/main
projectKeyTFIT
filepathtmf622/examples/ftth-no-opts/product-order-delete-3-state-change-event-in-progress.json
showLineNumberstrue
progLangplain
collapsibletrue
applicationLinkcbfa78ef-cb5e-30f5-8b3b-ec5f9d824e1d

fachliche FelderDaten API Felder
Orderstatus inProgressstate 
fachliches Änderungsdatum 2022-05-20T10:40:00+01:00stateChangeDate 
technisches EventDatum2022-05-20T10:40:00+01:00eventTime
Grund der Änderung

0000

"Keine Änderung zum Auftrag"

stateChangeReason.code

stateChangeReason.description

Historisierung acknowledged

fachliches Änderungsdatum 

Grund der Änderung


2022-05-11T10:31:00+01:00

0000

"Keine Änderung zum Auftrag"

stateChangeHistory.@type = StateChange

stateChangeHistory.changeDate

stateChangeHistory.changeReason.code

stateChangeHistory.changeReason.description

ProductOrderStateChangeEvent: completed

Stashincludebyfilepath
repoSlugfit-root
branchIdrefs/heads/main
projectKeyTFIT
filepathtmf622/examples/ftth-no-opts/product-order-delete-4-state-change-event-completed.json
showLineNumberstrue
progLangplain
collapsibletrue
applicationLinkcbfa78ef-cb5e-30f5-8b3b-ec5f9d824e1d

fachliche FelderDaten API Felder
Orderstatus completedstate 
fachliches Änderungsdatum 2022-12-16T10:45:00+01:00stateChangeDate 
technisches EventDatum2022-12-16T10:45:00+01:00eventTime
Grund der Änderung

0010

"Auftrag ausgeführt."

stateChangeReason.code

stateChangeReason.description

Historisierung inProgress

fachliches Änderungsdatum 

Grund der Änderung


2022-05-20T10:40:00+01:00

0000

"Keine Änderung zum Auftrag"

stateChangeHistory.@type = StateChange

stateChangeHistory.changeDate

stateChangeHistory.changeReason.code

stateChangeHistory.changeReason.description


ProductOrderAttributeValueChange (setzen von terminationDate)

Stashincludebyfilepath
repoSlugfit-root
branchIdrefs/heads/main
projectKeyTFIT
filepathtmf622/examples/ftth-no-opts/product-order-delete-5-attribute-value-change-event-termination-date.json
showLineNumberstrue
progLangplain
collapsibletrue
applicationLinkcbfa78ef-cb5e-30f5-8b3b-ec5f9d824e1d

fachliche FelderDatenAPI Felder
technisches EventDatum 2022-12-16T10:45:30+01:00eventTime
Pointer auf die gemachte Änderung/terminationDate/

fieldPath.path

fieldPath.typeOfChange = add

Nutzungsdatum 2022-12-16T10:45:00+01:00product.terminationDate


ProductOrderStateChangeEvent: closed

Stashincludebyfilepath
repoSlugfit-root
branchIdrefs/heads/main
projectKeyTFIT
filepathtmf622/examples/ftth-no-opts/product-order-delete-6-state-change-event-closed.json
showLineNumberstrue
progLangplain
collapsibletrue
applicationLinkcbfa78ef-cb5e-30f5-8b3b-ec5f9d824e1d

fachliche FelderDaten API Felder
Orderstatus closedstate 
fachliches Änderungsdatum 2022-12-16T10:46:00+01:00stateChangeDate 
technisches EventDatum2022-12-16T10:46:00+01:00eventTime
Grund der Änderung

0010

"Auftrag ausgeführt."

stateChangeReason.code

stateChangeReason.description

Historisierung completed

fachliches Änderungsdatum 

Grund der Änderung


2022-05-20T10:45:30+01:00

0000

"Keine Änderung zum Auftrag"

stateChangeHistory.@type = StateChange

stateChangeHistory.changeDate

stateChangeHistory.changeReason.code

stateChangeHistory.changeReason.description