Files
plantUML/oms/site-integration/AS IS.puml
2024-05-24 12:17:32 +03:00

59 lines
2.5 KiB
Plaintext
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
@startuml
scale 1300x1300
mainframe AS IS обмен по созданию заказа на сайте
Actor USER
participant SITE
database SITE_database
queue kafka_1
participant WTIS
database WTIS_database
queue kafka_2
participant OMS
database OMS_database
'-------------------------------------------action-------------------
autonumber
USER -> SITE: Нажимает кнопку оформить заказ
SITE -> SITE_database: Проводит внутренние проверки\nи сохраняет в БД
SITE_database -> SITE: Заказ успешно сохранен
autonumber 4.1
alt Тип доставки в заказе: Самовывоз
SITE -> kafka_1: Записывает заказ в топик kafka: site.order.pickup.created
else Тип доставки в заказе: Курьером
SITE -> kafka_1: Записывает заказ в топик kafka: site.order.courier.created
else Тип доставки в заказе: ТК
SITE -> kafka_1: Записывает заказ в топик kafka: site.order.transport_company.created
end
autonumber 5
WTIS -> kafka_1: Читает сообщения из топика
WTIS -> WTIS_database: Сохраняет заказ
WTIS_database -> WTIS: Заказ успешно сохранен
WTIS -> WTIS: Проверяет условия для MVP\nсогласно настроек в wtis_settings
autonumber 9.1
alt Заказ подходит под условия OMS
WTIS -> kafka_2: Записывает заказ в топик: wtis.order_oms.created
else Заказ не подходит под условия OMS
WTIS -> WTIS: Продолжает процедуру автооформления\nзаказа и обогащения данными
WTIS -> WTIS: Конец процесса
end
autonumber 10
OMS -> kafka_2: Читает событие из топика
OMS -> OMS_database: Сохраняет заказ в БД
OMS_database -> OMS: Заказ успешно сохранен
OMS -> OMS: Проводит бизнес проверки
OMS -> WTIS: Резервирует товары
autonumber 15.1
alt Успешно зарезервировано
WTIS -> OMS: Товары в заказе успешно зарезервированы
else Не успешно зарезервировано
WTIS -> WTIS: Ставит задачу на менеджера, меняет мастер-систему
WTIS -> WTIS: Конец процесса
end
@enduml