This commit is contained in:
KatykhinAA
2024-09-09 09:05:15 +03:00
parent e0abd0257b
commit b15ab20a18
17 changed files with 925 additions and 874 deletions

View File

@@ -1,58 +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: Отображает примененные акции
@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