You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Очередь поднятия микро-сервисов (порядок важен для cdr и brt, так как при необходимости cdr получает нотификацию от brt (при самом первом запуске))
crm
hrs
cdr
brt
Важно знать
перед запуском всех сервисов должен быть поднят сервер кафки
при первом запуске создастся пользователь с правами менеджера (номер: 79024333333, пароль: admin). Запрос на ендпоинт ../auth/signin вернет jwt токен, который необходим для работы со всеми остальными ендпоинтами.
при первом запуске будут созданы пользователи с тестовыми данными (пароль test)
при первом запуске база заполняется четырьмя тарифами и тремя операторами при помощи миграции (FlyWay)
при первом запуске приложения будет создан файл cdr.txt и cdr+.txt с тестовыми данными CallDataRecord. Для него будет произведена тарификация автоматически
запрос на эндпоинт manager/billing создает новый файл cdr.txt и производит для него тарификацию (также можно передать параметр clearOld для отчистки старых данных о тарификации в бд, параметр является опциональным)
данные о пользователе кэшируются в CRM и BRT за счет брокера сообщений Apache Kafka (приходит сообщение об обновлении данных в базе)
расширяемость тарифов сделана за счет паттерна стратегия
документация по эндпоинтам находится в файле swagger_docs.yml
Задание
на основе примера CDR генерировать тестовые данные для проверки корректности работы приложения в разных условиях
создать и заполнить базу клиентов тестовыми данными (можно использовать стороннее API для генерации данных)добавить в базу таблицу с тарифами с возможностью расширяемости, т.е. организовать поля таким образом, чтобы легко можно было добавить новый тариф•
пользуясь Spring и Spring Boot поднять локальный сервер с Tomcat, который будет принимать и обрабатывать указанные запросы
Задание*
организовать кэш в системах CDR иB RT который будет хранить необходимые данные для работы. В случае изменения значений в базе (например пополнение счета), настроить нотификации соответствующим сервисам для автоматического изменеия значений в кэше.
организовать таблицу тарифов с возможностью добавить новый тариф:o82: Тариф Х: Исходящие и входящие звонки абонентам оператора Ромашка -бесплатно. Всем остальным -расчет по тарифу "поминутный".