Update README.md

This commit is contained in:
Mikhail 2023-10-31 22:42:20 +00:00
parent 75d9515b1a
commit 907026d5d5

110
README.md

@ -21,4 +21,112 @@
## Развёртывание:
Подробно о развёртывании можно почитать [**тут**](https://penahub.gitlab.yandexcloud.net/devops/docs)
Подробно о развёртывании можно почитать [**тут**](https://penahub.gitlab.yandexcloud.net/devops/docs)
```[c4plantuml]
....
@startuml
!include <C4/C4_Context>
title Связи между компонентами PenaHUB
Person(marketplaceFront, "Marketplace", "Платформа, на которой пользователь приобретает подписки на наши сервисы")
Person(adminFront, "Admin", "Админка. Техподдержка, статистика, настройки")
Person(amoTemplategenFront, "AmoTemplategen", "Интеграция с amocrm. Позволяет шаблонизировать docx")
Person(servicesLanding, "Landing", "Лендинг с формой обратной связи")
Person(squizFront, "Squiz", "Фронт генератора опросов")
Person(metricaFront, "Metrica", "Фронт сервиса настройки сборщика метрик телеграм ботов")
System(authService, "AuthService", "Авторизация, Регистрация, Обновление токена, Изменение пароля")
System(customerService, "Customer", "Аккаунт клиента, Кошелёк, Корзина, Оплата, Покупка тарифов")
System(discountService, "Discount", "Создание скидок, Вычисление стоимости корзины")
System(adminBackend, "AdminBackend", "Создание тарифов, Роли, Привилегии, Допуски")
System(socialAuthService, "SocialAuth", "Авторизация через сторонние сервисы")
System(cbrfWorker, "CBRF", "Хранение котировок валют по ЦБ и конвертация валюты")
System(heryvym, "Heruvym", "Техподдержка")
System(trashlog, "Trashlog", "Логпомойка поверх Clickhouse")
System(treasurer, "Treasurer", "Платёжки, Генерация платёжной ссылки и колбеки на изменение статуса платежа")
System(feedbackSvc, "feedbackService", "Получить данные с формы и отправить их в телеграм канал")
System(verification, "VerificationService", "Сохранение верификационных документов и подтверждение статуса верификации пользователя")
System(templategenService, "templategenService", "Продуктовый сервис шаблонизации docx")
System(templategenWorker, "templategenWorker", "Воркер, выполняющий шаблонизацию документа")
System(squizService, "SquizService", "Продуктовый сервис опросника")
System(squizStorer, "squizStorer", "Сервис сохранения файлов кастомизации опроса")
System(squizAnswerer, "squizAnswerer", "Выдача опросов и сохранение результатов")
System(penaDisk, "penaDisk", "Промежуточный сервис хранения файлов пользователей")
System(metricaService, "metricaService", "Продуктовый сервис сбора статистики телеграм ботов")
System(sink, "sink", "Сервис сохранения логов телеграм ботов")
System_Ext(mail_system, "smtp.biz", "")
System_Ext(amocrm, "Amocrm", "")
System_Ext(cbrf, "ЦБРФ", "")
System_Ext(yookasa, "Yookassa", "")
System_Ext(s3, "YandexS3", "")
System_Ext(bot, "ClientBot", "")
Rel(treasurer, yookasa, "получение платёжной ссылки")
Rel(cbrfWorker, cbrf, "курс валют")
Rel_Back(yookasa, treasurer, "Вебхук оплаты")
Rel(templategenService, mail_system, "Отправка акта")
Rel_Back(templategenService, amocrm, "создание аккаунта")
Rel(templategenWorker, amocrm, "Данные для шаблонизации")
Rel(templategenWorker, penaDisk, "Сохранение результатов")
Rel(penaDisk, templategenWorker, "Получение шаблона")
Rel(templategenService, penaDisk, "Сохранение шаблона")
Rel(penaDisk, s3, "Сохранение файла")
Rel_Back(penaDisk, s3, "Получение файла")
Rel_Back(sink, bot, "Передача логов")
Rel(sink, trashlog, "Сохранение логов в помойку")
Rel(squizStorer, s3, "Сохранение файла кастомизации")
Rel(squizAnswerer, trashlog, "Сохранение ответов в помойку")
Rel(verification, s3, "Сохранение файлов верификации")
Rel(customerService, treasurer, "Запрос платёжной ссылки")
Rel(treasurer, customerService, "Пополнение кошелька, запись в историю")
Rel(customerService, cbrfWorker, "Пересчёт кошелька пользователя, вычисление стоимости корзины в нужной валюте")
Rel_Neighbor(socialAuthService, authService, "Создание модели входа для пользователя внешней системы")
Rel_Back(adminBackend, customerService, "Список тарифов и привилегий")
Rel(templategenService, adminBackend, "Публикация привилегий")
Rel(templategenService, customerService, "Запись в историю о окончании привилегии")
Rel(customerService, discountService, "Вычисление стоимости корзины")
Rel(customerService, verification, "Получение данных верификации")
Rel(customerService, authService, "email для отправки акта")
Rel(customerService, templategenService, "запрос шаблонизации акта проделанных работ")
Rel(servicesLanding, feedbackSvc, "")
Rel(servicesLanding, heryvym, "")
Rel(metricaFront, metricaService, "")
Rel(metricaFront, authService, "")
Rel(metricaFront, heryvym, "")
Rel(squizFront, squizService, "")
Rel(squizFront, squizStorer, "")
Rel(squizFront, squizAnswerer, "")
Rel(squizFront, authService, "")
Rel(squizFront, heryvym, "")
Rel(amoTemplategenFront, templategenService, "")
Rel(amoTemplategenFront, heryvym, "")
Rel(adminFront, adminBackend, "")
Rel(adminFront, discountService, "")
Rel(adminFront, customerService, "")
Rel(adminFront, authService, "")
Rel(adminFront, heryvym, "")
Rel(adminFront, verification, "")
Rel(adminFront, templategenService, "")
Rel(adminFront, squizService, "")
Rel(adminFront, penaDisk, "")
Rel(adminFront, sink, "")
Rel(marketplaceFront, adminBackend, "")
Rel(marketplaceFront, discountService, "")
Rel(marketplaceFront, customerService, "")
Rel(marketplaceFront, authService, "")
Rel(marketplaceFront, heryvym, "")
Rel(marketplaceFront, verification, "")
Rel(marketplaceFront, socialAuthService, "")
Rel(marketplaceFront, penaDisk, "")
```