48 lines
1.3 KiB
Plaintext
48 lines
1.3 KiB
Plaintext
|
@startuml
|
||
|
'https://plantuml.com/state-diagram
|
||
|
|
||
|
'scale 600 width
|
||
|
[*] --> CreateProduct
|
||
|
[*] --> LoadAllProducts
|
||
|
|
||
|
state CreateProduct {
|
||
|
HttpCreateProduct --> CallRpcCreateProduct : RPC
|
||
|
CallRpcCreateProduct --> InsertRecord
|
||
|
|
||
|
InsertRecord ---> RpcReturnDetailedProduct : RPC
|
||
|
InsertRecord ---> ProductCreatedEvent : MQTT
|
||
|
|
||
|
RpcReturnDetailedProduct --> [*]
|
||
|
ProductCreatedEvent --> [*]
|
||
|
}
|
||
|
|
||
|
state LoadAllProducts {
|
||
|
state "Received Load all HTTP Request" as HttpLoadAll
|
||
|
state "Call RPC Load All" as CallRpcLoadAll
|
||
|
state "Load add required data from DB" as LoadAllData
|
||
|
state "Load all products" as LoadProducts
|
||
|
state "Load all variants for all products" as LoadProductsVariants
|
||
|
state "Load all products photos" as LoadProductsPhotos
|
||
|
|
||
|
HttpLoadAll --> CallRpcLoadAll : RPC
|
||
|
CallRpcLoadAll --> LoadAllData
|
||
|
|
||
|
LoadAllData --> LoadProducts : concurrently
|
||
|
LoadProducts --> CombineData
|
||
|
|
||
|
LoadAllData --> LoadProductsVariants : concurrently
|
||
|
LoadProductsVariants --> CombineData
|
||
|
|
||
|
LoadAllData --> LoadProductsPhotos : concurrently
|
||
|
LoadProductsPhotos --> CombineData
|
||
|
|
||
|
LoadAllData --> LoadProductsStock : concurrently
|
||
|
LoadProductsStock --> CombineData
|
||
|
|
||
|
CombineData --> RpcReturnsList : RPC
|
||
|
|
||
|
RpcReturnsList --> [*]
|
||
|
}
|
||
|
|
||
|
@enduml
|