mirror of
https://github.com/pretix/pretix.git
synced 2026-04-28 00:02:37 +00:00
40 lines
1.1 KiB
Plaintext
40 lines
1.1 KiB
Plaintext
@startuml
|
|
|
|
state "Approval Pending" as AP
|
|
state "Canceled (with paid fee)" as CP
|
|
AP: status = "n"
|
|
AP: require_approval = true
|
|
Pending: status = "n"
|
|
Pending: require_approval = false
|
|
Pending: Tickets reserved: yes
|
|
Expired: status = "e"
|
|
Expired: Tickets reserved: no
|
|
Paid: status = "p"
|
|
Paid: count(positions | !canceled) > 0
|
|
Paid: Tickets reserved: yes
|
|
CP: status = "p"
|
|
CP: count(positions | !canceled) = 0
|
|
Canceled: status = "c"
|
|
Canceled: Tickets reserved: no
|
|
|
|
|
|
[*] -> Pending: order placed\ntotal > 0
|
|
[*] -> Paid: order placed\ntotal = 0
|
|
[*] -> AP: order placed\napproval required
|
|
Pending --> Paid: order paid
|
|
Pending --> Expired: after payment\ndeadline
|
|
Expired --> Paid: order paid\n(only if quota left)
|
|
Expired -[dashed]-> Canceled
|
|
Expired -[dashed]-> Pending: order extended
|
|
Paid --> Canceled: order canceled
|
|
Pending --> Canceled: order canceled
|
|
Paid -[dashed]-> Pending: refund
|
|
AP --> Pending: order approved
|
|
AP --> Canceled: order denied
|
|
Paid --> CP: order canceled\n(with cancellation fee)
|
|
Canceled -[dashed]-> Pending: order reactivated
|
|
Canceled -[dashed]-> Paid: order reactivated
|
|
CP -[dashed]-> Canceled: fee canceled
|
|
|
|
@enduml
|