# tech-services
# Общие положения
## Назначение платформы
1. Создание ядра платформы
- настройка docker (развертывание контейнеров)
- настройка maven (сборка проектов)
- подготовка powershell скриптов (запуск/перезапуск сервисов)
- подготовка сервисов управления ресурсами (субд, api доступа к СУБД, api для работы с файловой системой)
- оформление проектной документации по сервисам (erd-диаграммы, описание api сервисов)
- ограничение прав доступа к данным
- поддержка сессий
- мониторинг нагрузки на сервер
2. Внесение данных реестра обученных в СУБД
- импорт данных из xlsx (Реестра обученных) в группу таблиц базы данных
3. Генерация форм для загрузки в ФРДО (xlsx документ с заданной *.xsd схемой)
- ручное внесение дополнительных данных, отсутствующих в реестре обученных
4. Генерация форм для загрузки в ЕИСОТ (*.xml документ по заданной xsd схеме)
- ручное внесение дополнительных данных, отсутствующих в реестре обученных
5. Автоматизация процесса внесения данных в реестр обученных
- Заявка на обучение
- Списочный состав
6. Генерация приказов о зачислении на курс
7. Генерация приказов об отчислении с курса
8. Генерация протоколов об обучении
9. Генерация форм для печати удостоверений
10. Формирование онлайн отчетов и визуализация статистических данных по сведеним реестра обученных
# Описание микросервисов
## resource-service-api (http://localhost:81/hello)
Хранение данных реестра обученных.
## client-service-teachers (http://localhost:84/hello)
сервис для редактирования данных каждой таблицы по отдельности
добавление записей по одному обучению
добавление записей пакетом
добавление не полных данных об обучении
## storage_rs (http://localhost:82/hello)
Сервис работы с файлами:
- загрузка файлов на сервер
- скачивание файлов с сервера
- просмотр списка файлов
- хранение сведений о файлах в базе данных
- представление данных xlsx файлов в json
## gates (http://localhost:83/hello)
Сервис для работы с документами пользователя
Графический интерфейс, обеспечивающий взаимодействие между сервисами (логика).
## postgres-service (http://localhost:5432)
СУБД postgres
POSTGRES_USER='tech-services'
POSTGRES_PASSWORD='password'
POSTGRES_DB='tech-services'
## eurika-service
Обеспечение бесперебойного доступа к сервисам, запуск экземпляров сервисов на различных серверных устройствах, перенаправление пользователя на свободный сервер
## monitoring-service
Средства мониторинга нагрузки на сервер
## registration-service
Регистрация пользователей на платформе
## authorization-service
Авторизация пользователей на платформе (физически пользователей и сторонних сервисов)
# Развертывание платформы
Микросервисы располагаются в контейнерах docker
Развертывание сервисов в windows осуществляется PowerShell скриптом (run.ps1)
10.100.113.239