add new schemes
This commit is contained in:
@@ -0,0 +1,33 @@
|
||||
@startuml
|
||||
scale 1200*1200
|
||||
mainframe Получение свободных остатков
|
||||
actor Пользователь as user
|
||||
participant ARM as ARM
|
||||
participant OMS as OMS
|
||||
collections Cache as cache
|
||||
participant Shcat as Shcat
|
||||
participant Susanin as Susanin
|
||||
autonumber
|
||||
|
||||
user -> ARM: Нажимает на остатки товара\nв товарной строке заказа
|
||||
ARM -> OMS: API GET /quantity-list-by-office
|
||||
activate OMS
|
||||
OMS -> OMS: валидирует запрос
|
||||
|
||||
OMS -> cache: Забрать все офисы из кэша
|
||||
activate cache
|
||||
return answer
|
||||
|
||||
OMS -> Shcat: POST method rests.get
|
||||
activate Shcat
|
||||
return answer API POST
|
||||
|
||||
OMS -> Susanin: POST method get_logistic_chains_with_priority
|
||||
activate Susanin
|
||||
return answer API POST
|
||||
|
||||
OMS -> OMS: Формирует два массива:\n1. По лог.цепям\n2. Прочие склады
|
||||
|
||||
return answer API GET
|
||||
ARM --> user: Рендерит данные в модальном окне
|
||||
@enduml
|
||||
@@ -0,0 +1,24 @@
|
||||
@startuml
|
||||
scale 1200*1200
|
||||
mainframe Получение остатков под резервом
|
||||
actor Пользователь as user
|
||||
participant ARM as ARM
|
||||
participant OMS as OMS
|
||||
participant Susanin as Susanin
|
||||
autonumber
|
||||
|
||||
user -> ARM: Нажимает на остатки товара\nв товарной строке заказа
|
||||
ARM -> OMS: API GET /quantity-list-by-office
|
||||
activate OMS
|
||||
OMS -> OMS: валидирует запрос
|
||||
|
||||
OMS -> Susanin: POST method get_logistic_chains_with_priority
|
||||
activate Susanin
|
||||
return answer API POST
|
||||
|
||||
OMS -> OMS: запрос в mongodb Order с фильтрами по товару
|
||||
OMS -> OMS: Формирует два массива:\n1. По лог.цепям\n2. Прочие склады
|
||||
|
||||
return answer API GET
|
||||
ARM --> user: Рендерит данные в модальном окне
|
||||
@enduml
|
||||
52
oms/interface-arm/journals/order-journal/filters.puml
Normal file
52
oms/interface-arm/journals/order-journal/filters.puml
Normal file
@@ -0,0 +1,52 @@
|
||||
@startuml
|
||||
mainframe Получение заказов для отображения фильтров
|
||||
autonumber
|
||||
actor user
|
||||
participant ARM
|
||||
participant OMS
|
||||
collections Redis
|
||||
participant MSKB
|
||||
database Database
|
||||
|
||||
user -> ARM: Устанавливает фильтры
|
||||
alt устанавливает фильтр по ПВЗ
|
||||
user -> ARM: Начинает вводить наименование ПВЗ
|
||||
ARM -> OMS: Запрашивает список подходящих ПВЗ
|
||||
OMS -> Redis: Запрашивает список ПВЗ
|
||||
Redis --> OMS: Возвращает список ПВЗ
|
||||
OMS --> ARM: Возвращает список ПВЗ
|
||||
user -> ARM: Выбирает необходимый ПВЗ
|
||||
ARM -> ARM: Запоминает идентификатор ПВЗ
|
||||
else устанавливает фильтр по менеджеру
|
||||
user -> ARM: Начинает вводить ФИО менеджера
|
||||
ARM -> OMS: Запрашивает список подходящих менеджеров
|
||||
OMS -> Redis: Запрашивает список менеджеров
|
||||
Redis --> OMS: Возвращает список менеджеров
|
||||
OMS --> ARM: Возвращает список менеджеров
|
||||
user -> ARM: Выбирает необходимого менеджера
|
||||
ARM -> ARM: Запоминает идентификатор менеджера
|
||||
else устанавливает фильтр по КА
|
||||
user -> ARM: Нажимает на фильтр по КА
|
||||
ARM --> user: Открывает модальное окно "Поиск КА"
|
||||
user -> ARM: Ищет необходимого КА
|
||||
ARM -> OMS: Запрашивает список подходящих КА
|
||||
OMS -> MSKB: Запрашивает список КА
|
||||
MSKB --> OMS: Возвращает список КА
|
||||
OMS --> ARM: Возвращает список КА
|
||||
user -> ARM: Выбирает необходимого КА
|
||||
ARM -> ARM: Запоминает идентификатор КА
|
||||
end
|
||||
|
||||
alt Необходимы сортировки
|
||||
user -> ARM: Выбирает необходимую сортировку
|
||||
ARM -> ARM: Запоминает выбор пользователя
|
||||
else Не устанавливаются сортировки
|
||||
end
|
||||
user -> ARM: Нажимает кнопку Enter или "Обновить"
|
||||
ARM -> ARM: Формирует запрос на bf
|
||||
ARM -> OMS: Отправляет запрос
|
||||
OMS -> Database: Запрашивает список заказов\nс установленными фильтрами
|
||||
Database --> OMS: Ответ
|
||||
OMS --> ARM: Ответ
|
||||
ARM --> user: Отображает журнал заказов
|
||||
@enduml
|
||||
29
oms/interface-arm/journals/order-journal/search.puml
Normal file
29
oms/interface-arm/journals/order-journal/search.puml
Normal file
@@ -0,0 +1,29 @@
|
||||
@startuml
|
||||
mainframe Получение заказов для отображения фильтров
|
||||
autonumber
|
||||
actor user
|
||||
participant ARM
|
||||
participant OMS
|
||||
database Database
|
||||
|
||||
user -> ARM: Вводит один или несколько номеров заказов
|
||||
ARM -> ARM: Делит строку по пробелам
|
||||
alt Необходимы сортировки
|
||||
user -> ARM: Выбирает необходимую сортировку
|
||||
ARM -> ARM: Запоминает выбор пользователя
|
||||
else Не устанавливаются сортировки
|
||||
end
|
||||
user -> ARM: Нажимает кнопку Enter или "Обновить"
|
||||
ARM -> ARM: Формирует запрос
|
||||
ARM -> OMS: Отправляет запрос на bf
|
||||
OMS -> OMS: Проверяет есть ли объекты длиной 5 символов
|
||||
alt Если такие объекты есть
|
||||
OMS -> OMS: Формирует запрос с регулярным выражением,\nгде поиск осуществляется\nпо последним 5 символам строки
|
||||
else Если таких объектов нет
|
||||
OMS -> OMS: Формирует стандартный запрос в БД
|
||||
end
|
||||
OMS -> Database: Запрашивает список заказов по выбранным параметрам
|
||||
Database --> OMS: Ответ
|
||||
OMS --> ARM: Ответ
|
||||
ARM --> user: Отображает журнал заказов
|
||||
@enduml
|
||||
23
oms/interface-arm/personal-cabinet/change note.puml
Normal file
23
oms/interface-arm/personal-cabinet/change note.puml
Normal file
@@ -0,0 +1,23 @@
|
||||
@startuml
|
||||
mainframe Добавление/удаление заметки пользователя в ЛК
|
||||
scale 1500x1500
|
||||
actor user as user
|
||||
participant ARM
|
||||
participant Gateway
|
||||
participant personalCabinet
|
||||
|
||||
autonumber
|
||||
user -> ARM: Нажимает кнопку "Главная"
|
||||
alt Пользователь ввел текст и снял фокус с поля
|
||||
ARM -> Gateway: Отправляет запрос на\nPUT personal-cabinet/v1/note
|
||||
else Пользователь нажал кнопку "Очистить"
|
||||
ARM -> Gateway: Отправляет запрос на\nDELETE personal-cabinet/v1/note
|
||||
end
|
||||
|
||||
|
||||
ARM -> Gateway: Отправляет запрос на GET personal-cabinet/v1/note
|
||||
Gateway -> personalCabinet: Вызывает методы для\nизменения заметок по пользователю
|
||||
personalCabinet --> Gateway: answer
|
||||
Gateway --> ARM: answer
|
||||
ARM --> user: answer
|
||||
@enduml
|
||||
23
oms/interface-arm/personal-cabinet/favorites.puml
Normal file
23
oms/interface-arm/personal-cabinet/favorites.puml
Normal file
@@ -0,0 +1,23 @@
|
||||
@startuml
|
||||
mainframe Взаимодействие с избранным
|
||||
scale 1500x1500
|
||||
actor user as user
|
||||
participant ARM
|
||||
participant Gateway
|
||||
participant Order
|
||||
|
||||
autonumber
|
||||
user -> ARM: Нажимает иконку\nсердечка в любом заказе
|
||||
|
||||
alt Поле было предварительно выделено (активное состояние)
|
||||
ARM -> Gateway: Отправляет запрос на\nDELETE orders/v1/{orderID}/favorite
|
||||
else Поле было предварительно не выделено (не активное состояние)
|
||||
ARM -> Gateway: Отправляет запрос на\nPOST orders/v1/{orderID}/favorite
|
||||
end
|
||||
|
||||
Gateway -> Order: Вызывает метод\nвзаимодействия с заказом
|
||||
Order -> Order: Обновляет модель order\n(Либо добавляет uuid юзера\nлибо удаляет)
|
||||
Order --> Gateway: answer
|
||||
Gateway --> ARM: answer
|
||||
ARM --> user: answer
|
||||
@enduml
|
||||
17
oms/interface-arm/personal-cabinet/get-info-order.puml
Normal file
17
oms/interface-arm/personal-cabinet/get-info-order.puml
Normal file
@@ -0,0 +1,17 @@
|
||||
@startuml
|
||||
mainframe Получение данных о заказах для ЛК пользователя
|
||||
scale 1500x1500
|
||||
actor user as user
|
||||
participant ARM
|
||||
participant Gateway
|
||||
participant Order
|
||||
|
||||
autonumber
|
||||
user -> ARM: Нажимает кнопку "Главная"
|
||||
user -> ARM: Нажимает кнопку "Статистика по заказам"
|
||||
ARM -> Gateway: Отправляет запрос на GET personal-cabinet/v1/stats
|
||||
Gateway -> Order: Вызывает методы для получения всех необходимых срезов по заказам
|
||||
Order --> Gateway: answer
|
||||
Gateway --> ARM: answer
|
||||
ARM --> user: Рендерит информационные блоки
|
||||
@enduml
|
||||
16
oms/interface-arm/personal-cabinet/get-note.puml
Normal file
16
oms/interface-arm/personal-cabinet/get-note.puml
Normal file
@@ -0,0 +1,16 @@
|
||||
@startuml
|
||||
mainframe Получение заметки пользователя для ЛК
|
||||
scale 1500x1500
|
||||
actor user as user
|
||||
participant ARM
|
||||
participant Gateway
|
||||
participant personalCabinet
|
||||
|
||||
autonumber
|
||||
user -> ARM: Нажимает кнопку "Главная"
|
||||
ARM -> Gateway: Отправляет запрос на GET personal-cabinet/v1/note
|
||||
Gateway -> personalCabinet: Вызывает методы для получения заметок по пользователю
|
||||
personalCabinet --> Gateway: answer
|
||||
Gateway --> ARM: answer
|
||||
ARM --> user: Рендерит текст в блоке заметок
|
||||
@enduml
|
||||
85
oms/interface-arm/personal-cabinet/personal-cabinet.puml
Normal file
85
oms/interface-arm/personal-cabinet/personal-cabinet.puml
Normal file
@@ -0,0 +1,85 @@
|
||||
@startuml
|
||||
mainframe Получение данных о заказах для ЛК пользователя
|
||||
scale 1500x1500
|
||||
actor user as user
|
||||
participant ARM
|
||||
participant Gateway
|
||||
participant Order
|
||||
|
||||
autonumber
|
||||
user -> ARM: Нажимает кнопку "Главная"
|
||||
user -> ARM: Нажимает кнопку "Статистика по заказам"
|
||||
ARM -> Gateway: Отправляет запрос на GET personal-cabinet/v1/stats
|
||||
Gateway -> Order: Вызывает методы для получения всех необходимых срезов по заказам
|
||||
Order --> Gateway: answer
|
||||
Gateway --> ARM: answer
|
||||
ARM --> user: Рендерит информационные блоки
|
||||
@enduml
|
||||
|
||||
|
||||
@startuml
|
||||
mainframe Получение заметки пользователя для ЛК
|
||||
scale 1500x1500
|
||||
actor user as user
|
||||
participant ARM
|
||||
participant Gateway
|
||||
participant personalCabinet
|
||||
|
||||
autonumber
|
||||
user -> ARM: Нажимает кнопку "Главная"
|
||||
ARM -> Gateway: Отправляет запрос на GET personal-cabinet/v1/note
|
||||
Gateway -> personalCabinet: Вызывает методы для получения заметок по пользователю
|
||||
personalCabinet --> Gateway: answer
|
||||
Gateway --> ARM: answer
|
||||
ARM --> user: Рендерит текст в блоке заметок
|
||||
@enduml
|
||||
|
||||
|
||||
@startuml
|
||||
mainframe Взаимодействие с избранным
|
||||
scale 1500x1500
|
||||
actor user as user
|
||||
participant ARM
|
||||
participant Gateway
|
||||
participant Order
|
||||
|
||||
autonumber
|
||||
user -> ARM: Нажимает иконку\nсердечка в любом заказе
|
||||
|
||||
alt Поле было предварительно выделено (активное состояние)
|
||||
ARM -> Gateway: Отправляет запрос на\nDELETE orders/v1/{orderID}/favorite
|
||||
else Поле было предварительно не выделено (не активное состояние)
|
||||
ARM -> Gateway: Отправляет запрос на\nPOST orders/v1/{orderID}/favorite
|
||||
end
|
||||
|
||||
Gateway -> Order: Вызывает метод\nвзаимодействия с заказом
|
||||
Order -> Order: Обновляет модель order\n(Либо добавляет uuid юзера\nлибо удаляет)
|
||||
Order --> Gateway: answer
|
||||
Gateway --> ARM: answer
|
||||
ARM --> user: answer
|
||||
@enduml
|
||||
|
||||
|
||||
@startuml
|
||||
mainframe Добавление/удаление заметки пользователя в ЛК
|
||||
scale 1500x1500
|
||||
actor user as user
|
||||
participant ARM
|
||||
participant Gateway
|
||||
participant personalCabinet
|
||||
|
||||
autonumber
|
||||
user -> ARM: Нажимает кнопку "Главная"
|
||||
alt Пользователь ввел текст и снял фокус с поля
|
||||
ARM -> Gateway: Отправляет запрос на\nPUT personal-cabinet/v1/note
|
||||
else Пользователь нажал кнопку "Очистить"
|
||||
ARM -> Gateway: Отправляет запрос на\nDELETE personal-cabinet/v1/note
|
||||
end
|
||||
|
||||
|
||||
ARM -> Gateway: Отправляет запрос на GET personal-cabinet/v1/note
|
||||
Gateway -> personalCabinet: Вызывает методы для\nизменения заметок по пользователю
|
||||
personalCabinet --> Gateway: answer
|
||||
Gateway --> ARM: answer
|
||||
ARM --> user: answer
|
||||
@enduml
|
||||
58
oms/interface-arm/products/add-promotion.puml
Normal file
58
oms/interface-arm/products/add-promotion.puml
Normal file
@@ -0,0 +1,58 @@
|
||||
@startuml
|
||||
mainframe TO BE применение акций и скидок в заказе B2C
|
||||
scale 1500x1500
|
||||
actor user as user
|
||||
participant ARM
|
||||
participant Sherlock
|
||||
participant Gateway
|
||||
participant Order
|
||||
participant PDM
|
||||
participant Druz
|
||||
participant SCROOGE
|
||||
participant Promo
|
||||
|
||||
autonumber
|
||||
user -> ARM: Нажимает кнопку "Применить скидки"
|
||||
ARM -> ARM: Рендерит модальное окно
|
||||
ARM -> ARM: Акции сайта - чекбокс активен
|
||||
ARM -> ARM: Скидки, выбрано: Без скидки
|
||||
autonumber 5.1
|
||||
alt Выбирает только скидки уровня ОПТ
|
||||
user -> ARM: Выбирает тип ОПТа для клиента
|
||||
user -> ARM: Снимает чекбокс "Акции сайта"
|
||||
user -> ARM: Нажимает кнопку "Применить"
|
||||
ARM -> Gateway: Передает запрос
|
||||
Gateway -> Gateway: Получает название региона из кэша
|
||||
Gateway -> SCROOGE: Запрашивает цены из SCROOGE согласно уровню ОПТа
|
||||
SCROOGE --> Gateway: answer
|
||||
autonumber 6.1
|
||||
else Выбирает только акции сайта
|
||||
user -> ARM: Оставляет чекбокс "Акции сайта"
|
||||
user -> ARM: Оставляет скидку с типом "Без скидки"
|
||||
user -> ARM: Нажимает кнопку "Применить"
|
||||
ARM -> Gateway: Передает запрос
|
||||
Gateway -> Gateway: Получает название региона из кэша
|
||||
Gateway -> Gateway: Готовит запрос в promo
|
||||
Gateway -> Promo: Запрашивает акции и цены по товарам из Promo
|
||||
Promo --> Gateway: answer
|
||||
autonumber 7.1
|
||||
else Выбирает акции и скидки ОПТ
|
||||
user -> ARM: Выбирает тип ОПТа для клиента
|
||||
user -> ARM: Оставляет чекбокс "Акции сайта"
|
||||
user -> ARM: Нажимает кнопку "Применить"
|
||||
ARM -> Gateway: Передает запрос
|
||||
Gateway -> Gateway: Получает название региона из кэша
|
||||
Gateway -> Gateway: Готовит запрос в promo
|
||||
Gateway -> Promo: Запрашивает акции и цены по товарам из Promo
|
||||
Promo --> Gateway: answer
|
||||
Gateway -> SCROOGE: Запрашивает цены из SCROOGE согласно уровню ОПТа
|
||||
SCROOGE --> Gateway: answer
|
||||
Gateway -> Gateway: Применяет наименьшие цены\nк каждому из товаров
|
||||
end
|
||||
autonumber 8
|
||||
Gateway -> Order: Записывает изменения в модель
|
||||
Order --> Gateway: Изменения успешно применены
|
||||
Gateway -> Gateway: Собирает ответ для frontend
|
||||
Gateway --> ARM: Answer
|
||||
ARM -> user: Отображает примененные акции
|
||||
@enduml
|
||||
Reference in New Issue
Block a user