Initial commit

This commit is contained in:
Andrey
2024-04-08 19:15:50 +03:00
commit 072ced2815
51 changed files with 2926 additions and 0 deletions

46
oms/autoorder/FRQ-1.puml Normal file
View File

@@ -0,0 +1,46 @@
@startuml
mainframe "FRQ-1 Заказ.ПолучениеДанных."
Actor USER
participant SITE
participant WTIS
queue Названиеопика_1
queue Названиеопика_2
participant OMS
participant Officer
autonumber 1
USER -> USER: Создает заказ на сайте
USER -> SITE: Сущность "Заказ"\nс набором атрибутов
SITE -> WTIS: Сущность "Заказ"\nс набором атрибутов
WTIS -> WTIS: Проверка условий\nи отбор заказов
WTIS -> Названиеопика_1: Записывает Сущность\n"Заказ" с набором\nатрибутов
OMS -> Названиеопика_1: Читает Сущность\n"Заказ" с набором\nатрибутов
OMS -> OMS: Валидация КА
autonumber 7.1
alt валидация пройдена
OMS -> OMS: Продолжение сценария
else валидация не пройдена
OMS -> Названиеопика_2: Сущность "Заказ"\nс набором атрибутов
end
autonumber 8
OMS <-> Officer: Получение лимитов офиса
OMS -> OMS: Валидация способа получения
alt валидация пройдена
autonumber 9.1
OMS -> OMS: Продолжение сценария
else валидация не пройдена
OMS -> Названиеопика_2: Сущность "Заказ"\nс набором атрибутов
end
autonumber 10
OMS -> OMS: Валидация способа оплаты
alt валидация пройдена
autonumber 10.1
OMS -> OMS: Продолжение сценария
else валидация не пройдена
OMS -> Названиеопика_2: Сущность "Заказ"\nс набором атрибутов
end
autonumber 11
OMS -> OMS: Данные о заказе\nполучены и провалидированы
OMS -> OMS: Переход к бизнес-проверкам
@enduml

55
oms/autoorder/FRQ-2.puml Normal file
View File

@@ -0,0 +1,55 @@
@startuml
mainframe "FRQ-2 Заказ.БизнесПроверки."
queue Названиеопика_2
database ClickHouse
participant OMS
participant DRUZ
participant PDM
autonumber 1
OMS -> PDM: Запрашивает\nGUID производителя товара
OMS -> OMS: Проверка на возможность\nпродажи товара
alt валидация пройдена
autonumber 2.1
OMS -> OMS: Продолжение сценария
else валидация не пройдена
OMS -> ClickHouse: Логирование не\nпройденных проверок
OMS -> Названиеопика_2: Сущность "Заказ"\nс набором атрибутов
end
autonumber 3
OMS -> DRUZ: Запрашивает \nпризнак "Наличие"
OMS -> OMS: Проверка что товары\nиз заказа в наличии
alt валидация пройдена
autonumber 4.1
OMS -> OMS: Продолжение сценария
else валидация не пройдена
OMS -> ClickHouse: Логирование не\nпройденных проверок
OMS -> Названиеопика_2: Сущность "Заказ"\nс набором атрибутов
end
autonumber 5
OMS -> PDM: Запрашивает ВГХ товара
OMS -> OMS: Расчитывает объем и\nобщий вес заказа
OMS -> OMS: Проверка на лимиты\nВГХ ТТ
alt валидация пройдена
autonumber 7.1
OMS -> OMS: Продолжение сценария
else валидация не пройдена
OMS -> ClickHouse: Логирование не\nпройденных проверок
OMS -> Названиеопика_2: Сущность "Заказ"\nс набором атрибутов
end
autonumber 8
OMS -> OMS: Проверка способа\nоплаты на ТТ
alt валидация пройдена
autonumber 8.1
OMS -> OMS: Продолжение сценария
else валидация не пройдена
OMS -> ClickHouse: Логирование не\nпройденных проверок
OMS -> Названиеопика_2: Сущность "Заказ"\nс набором атрибутов
end
@enduml

View File

@@ -0,0 +1,39 @@
@startuml
scale 1500x1500
mainframe Автооформление заказов
actor user as user
participant SITE
queue kafka
participant Gateway
participant workflow
participant wtis
user -> SITE: Оформляет заказ
SITE -> SITE: Сохраняет заказ в БД
SITE --> kafka: Пишет заказ в kafka
Gateway --> kafka: Забирает заказ
Gateway -> workflow: CreateB2CAO
workflow -> workflow: Проверяет условия АО
workflow -> workflow: Проверяет тип доставки
alt Тип доставки "Курьером"
workflow -> workflow: Устанавливает таймер на N минут
alt Поступила оплата в заказ до истечения срока таймера
workflow -> workflow: Заканчивает автооформление\nУстанавливает дату доставки\nзаказа
else Не поступила оплата в заказ до истечения срока таймера
workflow -> wtis: Заказ передается во WTIS\nМеняется мастер система
end
else Тип доставки "Самовывоз"
workflow -> workflow: Проверяет наличие\nкрупногабаритных товаров\nв заказе
alt Крупногабаритных товаров в заказе нет
workflow -> workflow: Заканчивает автооформление\nУстанавливает дату доставки\nзаказа
else Крупногабаритные товары в заказе есть
workflow -> workflow: Устанавливает таймер на N минут
alt Поступила оплата в заказ до истечения срока таймера
workflow -> workflow: Заканчивает автооформление\nУстанавливает дату доставки\nзаказа
else Не поступила оплата в заказ до истечения срока таймера
workflow -> wtis: Заказ передается во WTIS\nМеняется мастер система
end
end
end
@enduml