46 lines
2.0 KiB
Plaintext
46 lines
2.0 KiB
Plaintext
@startuml
|
||
scale 1000*1000
|
||
mainframe Получение данных для отрисовки таблицы оплат MVP
|
||
participant WTIS as WTIS
|
||
collections Redis as redis
|
||
participant payments as payments
|
||
participant workflow as workflow
|
||
participant gateway as gateway
|
||
participant ARM as ARM
|
||
actor user as user
|
||
autonumber
|
||
hnote over WTIS: После MVP WTIS изменится\nна сервис баланса
|
||
|
||
autonumber 1
|
||
user -> ARM: Открывает заказ
|
||
ARM -> gateway: Запрашивает\nдокументы к заказу
|
||
activate gateway
|
||
== Получение данных о наличной оплате ==
|
||
gateway -> redis: Проверяет наличие\nданных в кэше
|
||
alt данные есть в кэше
|
||
redis --> gateway: Возвращает\nдокументы\n к заказу
|
||
else данных нет в кэше
|
||
redis --> gateway: Возвращает\nпустой ответ
|
||
gateway -> workflow: Триггерит на\nобновление данных
|
||
activate workflow
|
||
workflow -> WTIS: API GET order_doc_info()
|
||
activate WTIS
|
||
WTIS --> workflow: answer
|
||
deactivate WTIS
|
||
workflow -> redis: Сохраняет в кэш\nКраткую форму на 7 дней\nПолную форму на 3 дня (спорно)
|
||
redis --> workflow: Сообщение об успешном сохранении
|
||
workflow --> gateway: Возвращает\nдокументы\n к заказу
|
||
end
|
||
== Получение данных о других типах оплаты ==
|
||
workflow -> payments: Запрашивает данные\nоб онлайн оплате И\nпо счету
|
||
activate payments
|
||
payments --> workflow: answer
|
||
deactivate payments
|
||
workflow -> workflow: Агрегирует данные\nс источников
|
||
workflow --> gateway: answer
|
||
deactivate workflow
|
||
gateway --> ARM: возвращает\nданные об оплатах
|
||
deactivate gateway
|
||
ARM --> user: Рендерит блок\nдокументов
|
||
|
||
@enduml |