docs: important usecases

This commit is contained in:
Kirill 2023-06-28 18:07:22 +03:00
parent 2c583b64bb
commit 6ca0038d41

@ -1,4 +1,6 @@
**UseCase оплата корзины (успешно):**
# Диаграммы последовательности и зависимостей
## UseCase оплата корзины (успешно)
```plantuml
participant Frontend
@ -7,8 +9,8 @@ participant HubAdminService
participant DiscountService
database CustomerServiceDB
Frontend -> CustomerService : Начало оплаты
CustomerService -> CustomerServiceDB : Поиск аккаунта по ID
Frontend -> CustomerService : Запрос на оплату
CustomerService -> CustomerServiceDB : Поиск аккаунта по ID пользователья единой авторизации
CustomerService <-- CustomerServiceDB : Найденный аккаунт
CustomerService -> HubAdminService : Получение тарифов из массива id тарифов в корзине
CustomerService <-- HubAdminService : Список тарифов
@ -29,7 +31,7 @@ Frontend <-- CustomerService : Ответ об успешной оплате к
---
**UseCase оплата корзины (недостаточно средств):**
## UseCase оплата корзины (недостаточно средств)
```plantuml
participant Frontend
@ -38,8 +40,8 @@ participant HubAdminService
participant DiscountService
database CustomerServiceDB
Frontend -> CustomerService : Начало оплаты
CustomerService -> CustomerServiceDB : Поиск аккаунта по ID
Frontend -> CustomerService : Запрос на оплату
CustomerService -> CustomerServiceDB : Поиск аккаунта по ID пользователья единой авторизации
CustomerService <-- CustomerServiceDB : Найденный аккаунт
CustomerService -> HubAdminService : Получение тарифов из массива id тарифов в корзине
CustomerService <-- HubAdminService : Список тарифов
@ -52,7 +54,65 @@ CustomerService <-- CustomerService : Средств не достаточно
Frontend <-- CustomerService : Ответ об ошибке по причине нехватки средств (insufficient funds: 50)
```
## Relationships
---
## UseCase получение ссылки на оплату для пополнения средств в корзине (успешно)
```plantuml
participant Frontend
participant CustomerService
participant PaymentService
database CustomerServiceDB
Frontend -> CustomerService : Запрос на получение ссылки
CustomerService -> CustomerService : Определение способа оплаты
CustomerService <-- CustomerService : Успешно определено
CustomerService -> PaymentService : Запрос на получение платёжной ссылки
CustomerService <-- PaymentService : Платёжная ссылка
Frontend <-- CustomerService : Платёжная ссылка
```
---
## UseCase изменения валюты в кошельке (успешно)
```plantuml
participant Frontend
participant CustomerService
participant CbrfService
database CustomerServiceDB
Frontend -> CustomerService : Запрос на изменения валюты
CustomerService -> CustomerServiceDB : Получение аккаунта по ID пользователья единой авторизации
CustomerService <-- CustomerServiceDB : Найденный аккаунт
CustomerService -> CbrfService : Перевод валюты с одной на другую
CustomerService <-- CbrfService : Результат перевода валюты
CustomerService -> CustomerServiceDB : Обновление кошелька аккаунта
CustomerService <-- CustomerServiceDB : Обновлённый аккаунт
Frontend <-- CustomerService : Обновлённый аккаунт
```
---
## UseCase регистрация аккаунта (успешно)
```plantuml
participant Frontend
participant CustomerService
participant AuthService
database CustomerServiceDB
Frontend -> CustomerService : Запрос на регистрацию аккаунта
CustomerService -> CustomerServiceDB : Поиск аккаунта по ID пользователя единой авторизации
CustomerService <-- CustomerServiceDB : Ошибка: аккаунт не найден
CustomerService -> AuthService : Поиск пользователя единой авторизации по ID
CustomerService <-- AuthService : Найденный пользователь
CustomerService -> CustomerServiceDB : Создание аккаунта с прикрученным \nID пользователя единой авторизации
CustomerService <-- CustomerServiceDB : Созданный аккаунт
Frontend <-- CustomerService : Созданный аккаунт
```
## Диаграмма зависимостей
```plantuml
!include https://raw.githubusercontent.com/plantuml-stdlib/C4-PlantUML/master/C4_Container.puml