...
enum Role { o Originator o ServiceProvider o Vendor }
Participants:
ServiceProvider
ServiceVendor
Customer
participant ServiceProvider identified by providerId { o String providerId o String name } participant ServiceVendor identified by vendorId { o String vendorId o String name } participant Customer identified by custId { o String custId o String name }
Assets:
TroubleTicket
asset TroubleTicket identified by incidentId { o String incidentId o String vendorTicketId optional o String type o Severity severity o String description o DateTime creationDate o String status o DateTime acknowledgedDate optional o DateTime resolutionDate optional o DateTime targetAcceptedTimestamp optional o DateTime targetClosedTimestamp optional o String acceptanceSLA optional o String closureSLA optional o Note[] note optional -->ServiceProvider SP -->ServiceVendor SV optional -->Customer C }
Transactions:
CreateTicket
AssignVendor
UpdateTicket
ResolveTicket
CloseTicket
transaction CreateTicket{ --> Customer C --> ServiceProvider SP --> ServiceVendor SV o String incidentId o String type o Severity severity o String description o DateTime creationDate o String status } transaction AssignVendor{ --> TroubleTicket ticket -->ServiceVendor SV o String status o DateTime statusChangeDate o String statusChangeReason } transaction UpdateTicket{ --> TroubleTicket ticket
-->ServiceVendor SV o String status o DateTime statusChangeDate o String statusChangeReason } transaction ResolveTicket{ --> TroubleTicket ticket
-->ServiceVendor SVo String status o DateTime resolutionDate o String statusChangeReason } transaction CloseTicket{ --> TroubleTicket ticket
--> ServiceProvider SP o String status o DateTime statusChangeDate o String statusChangeReason }
Testing:
To test this Business Network Definition in the Test tab on the playground or in your Angular app:
1- In the Customer
, ServiceProvider
, ServiceVendor
participant registry, create new participants with appropriate input values.
Alternatively, you can also use the SetupDemo
tranaction which would populate the network with 2xCustomers, 2xServiceProviders, 2xServiceVendors.
2- Creat a ticket using the Submit Transaction
button and fill in the information based on the created participants. Upon submission, you should see a new asset added to the asset lists under 'TroubleTicket'.
4. SLA Back & Front-End
The following figure shows the Participants in the app and the process of creating them.
...