mirror of
https://github.com/firstBitSportivnaya/PSSL.git
synced 2025-01-12 02:28:02 +02:00
Create workflow for generate puml (#109)
Добавлен воркфлоу генерации .svg-файлов из .puml. Добавлена ER-диаграмма подсистемы управления интеграциями в документацию
This commit is contained in:
parent
c64d466d08
commit
38c9027ad0
23
.github/workflows/generate-puml-svg.yml
vendored
Normal file
23
.github/workflows/generate-puml-svg.yml
vendored
Normal file
@ -0,0 +1,23 @@
|
||||
name: generate plantuml
|
||||
on: push
|
||||
jobs:
|
||||
generate_plantuml:
|
||||
runs-on: ubuntu-latest
|
||||
permissions:
|
||||
contents: write
|
||||
pull-requests: write
|
||||
repository-projects: write
|
||||
name: plantuml
|
||||
steps:
|
||||
- name: checkout
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
fetch-depth: 1
|
||||
- name: plantuml
|
||||
id: plantuml
|
||||
uses: grassedge/generate-plantuml-action@v1.5
|
||||
with:
|
||||
message: "Render PlantUML files"
|
||||
path: docs/images
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
3
docs/ERДиаграммаПодсистемыУправленияИнтеграциями.md
Normal file
3
docs/ERДиаграммаПодсистемыУправленияИнтеграциями.md
Normal file
@ -0,0 +1,3 @@
|
||||
# ER-диаграмма подсистемы управление интеграциями
|
||||
|
||||
![image](images/ERArchitectureIntegrationsSubsystem.svg)
|
1
docs/images/ERArchitectureIntegrationsSubsystem.svg
Normal file
1
docs/images/ERArchitectureIntegrationsSubsystem.svg
Normal file
File diff suppressed because one or more lines are too long
After Width: | Height: | Size: 69 KiB |
210
docs/puml/ERArchitectureIntegrationsSubsystem.puml
Normal file
210
docs/puml/ERArchitectureIntegrationsSubsystem.puml
Normal file
@ -0,0 +1,210 @@
|
||||
@startuml integrations_subsystem
|
||||
|
||||
title ER-Diagram integrations subsystem
|
||||
|
||||
entity "Справочник: Интегрируемые системы" as eSysInt {
|
||||
*УникальныйИдентификатор : uuid <<generated>>
|
||||
--
|
||||
*Код : строка (9)
|
||||
*Наименование : строка (100)
|
||||
Родитель (иерархия групп) : uuid <<FK>>
|
||||
ИдентификаторНастройки : строка (100)
|
||||
}
|
||||
|
||||
entity "Справочник: Настройки интеграции" as eIntSettings {
|
||||
*УникальныйИдентификатор : uuid <<generated>>
|
||||
--
|
||||
*Код : строка (9)
|
||||
*Наименование : строка (100)
|
||||
Родитель (иерархия групп) : uuid <<FK>>
|
||||
ИнтегрируемаяСистема : uuid <<FK>>
|
||||
ТипИнтеграции : uuid <<FK>>
|
||||
СтрокаПодключения : строка (100)
|
||||
Порт : строка (7)
|
||||
ВнешняяКомпонента : хранилище значений
|
||||
УчетнаяЗапись : uuid <<FK>>
|
||||
ТипАвторизации : uuid <<FK>>
|
||||
ИдентификаторНастройки : строка (100)
|
||||
ИспользоватьПользовательскиеФункции : булево
|
||||
Имя объекта : строка (100)
|
||||
ИзмененВручную : булево
|
||||
ИмяФайлаВнешнейКомпоненты : строка (100)
|
||||
}
|
||||
|
||||
entity "Безопасное хранилище" as eSecureStorage {
|
||||
*Ссылка : uuid <<FK>>
|
||||
*Ключ : строка : "Логин", "Пароль", "Токен"
|
||||
Значение : строка
|
||||
}
|
||||
|
||||
entity "Справочник: Типы интеграций" as eIntTypes {
|
||||
*УникальныйИдентификатор : uuid <<generated>>
|
||||
--
|
||||
*Код : строка (9)
|
||||
*Наименование : строка (100)
|
||||
Родитель (иерархия элементов) : uuid <<FK>>
|
||||
}
|
||||
|
||||
enum "Справочник: Типы интеграций - предопределенные элементы" as eIntTypes_predetermined {
|
||||
+ Файловые обмены:
|
||||
- Каталог
|
||||
- FTP-ресурсы
|
||||
- Почтовый клиент
|
||||
+ Прямое подключение к БД:
|
||||
- -
|
||||
+ Вызов внешней процедуры:
|
||||
- SOAP
|
||||
- REST API
|
||||
- COM
|
||||
- Внешняя компонента
|
||||
- Командная строка
|
||||
+ Брокеры сообщений:
|
||||
- RabbitMq
|
||||
- Kafka
|
||||
}
|
||||
|
||||
entity "Справочник БСП: Учетные записи электронной почты" as eEmailAccounts {
|
||||
УникальныйИдентификатор : uuid <<generated>>
|
||||
}
|
||||
|
||||
enum "Перечисление: Типы авторизации" as eAuthorizationTypes {
|
||||
+ Базовая
|
||||
+ Токен
|
||||
}
|
||||
|
||||
entity "Справочник: Интеграционные потоки" as eIntFlows {
|
||||
*УникальныйИдентификатор : uuid <<generated>>
|
||||
--
|
||||
*Код : строка (9)
|
||||
*Наименование : строка (100)
|
||||
Родитель (иерархия элементов) : uuid <<FK>>
|
||||
ИдентификаторНастройки : строка (100)
|
||||
НастройкаИнтеграции : uuid <<FK>>
|
||||
ТочкаВхода : строка (неогр)
|
||||
ПользовательскаяФункция : uuid <<FK>>
|
||||
ИзмененВручную : булево
|
||||
--
|
||||
Параметры входа
|
||||
--
|
||||
- НомерСтроки
|
||||
- Имя : строка (неогр)
|
||||
- Тип : uuid <<FK>>
|
||||
- ПараметрURL : булево
|
||||
- ЗначениеПоУмолчанию : булево, строка, число, дата, любая ссылка
|
||||
- ПолеОбъекта : строка (100)
|
||||
}
|
||||
|
||||
enum "Перечисление: Методы запроса REST" as eRestMethodTypes {
|
||||
+ GET
|
||||
+ POST
|
||||
+ PUT
|
||||
+ PATCH
|
||||
+ DELETE
|
||||
}
|
||||
|
||||
entity "Справочник: Пользовательские функции" as eUserFunctions {
|
||||
УникальныйИдентификатор : uuid <<generated>>
|
||||
}
|
||||
|
||||
enum "Перечисление: Типы параметров интеграций" as eIntParamsTypes {
|
||||
+ Строка
|
||||
+ Число
|
||||
+ Булево
|
||||
+ Null
|
||||
+ Массив
|
||||
+ Объект
|
||||
+ Дата
|
||||
}
|
||||
|
||||
entity "Справочник: История интеграции" as eIntHistory {
|
||||
*УникальныйИдентификатор : uuid <<generated>>
|
||||
--
|
||||
*Код : строка (36)
|
||||
ДатаИнтеграции : дата и время
|
||||
ДатаИнтеграцииВМиллисекундах : число (20, 0)
|
||||
ИнтегрируемаяСистема : uuid <<FK>>
|
||||
Статус : uuid <<FK>>
|
||||
ФорматИнтеграции : uuid <<FK>>
|
||||
ИсходящееСообщение : строка (неогр)
|
||||
ВходящееСообщение : строка (неогр)
|
||||
ОписаниеОшибки : строка (неогр)
|
||||
ПротоколОбмена : строка (неогр)
|
||||
ИнтеграционныйПоток : uuid <<FK>>
|
||||
Ошибка : булево
|
||||
Пользователь : uuid <<FK>>
|
||||
ДлительностьОбмена : число (5, 0)
|
||||
ДлительностьВызова : число (5, 0)
|
||||
--
|
||||
Объекты интеграции
|
||||
--
|
||||
- НомерСтроки
|
||||
- ОбъектИнтеграции : любая ссылка
|
||||
- СозданОбновлен : uuid <<FK>>
|
||||
}
|
||||
|
||||
enum "Перечисление: Статусы интеграции" as eIntStatuses {
|
||||
+ Выгружено
|
||||
+ Загружено
|
||||
+ ОшибкаВыгрузки
|
||||
+ ОшибкаЗагрузки
|
||||
}
|
||||
|
||||
enum "Перечисление: Форматы интеграции" as eIntFormates {
|
||||
+ XML
|
||||
+ JSON
|
||||
+ DBF
|
||||
+ CSV
|
||||
+ TXT
|
||||
+ XLS / XLSX
|
||||
+ BAT / SH
|
||||
+ DLL
|
||||
+ HTML
|
||||
+ ПроизвольныйФормат
|
||||
}
|
||||
|
||||
entity "Справочник БСП: Пользователи" as eUsers {
|
||||
УникальныйИдентификатор : uuid <<generated>>
|
||||
}
|
||||
|
||||
enum "Перечисление: Создан обновлен" as eCreatedUpdated {
|
||||
+ Создан
|
||||
+ Обновлен
|
||||
}
|
||||
|
||||
|
||||
|
||||
eSysInt <- eSysInt : Родитель
|
||||
|
||||
eIntSettings <- eIntSettings : Родитель
|
||||
eIntSettings ---> eSysInt : ИнтегрируемаяСистема
|
||||
eIntSettings ---> eIntTypes : ТипИнтеграции
|
||||
eIntSettings ..> eSecureStorage : Хранение параметров подключения
|
||||
eIntSettings ---> eEmailAccounts : УчетнаяЗапись
|
||||
eIntSettings ---> eAuthorizationTypes : ТипАвторизации
|
||||
eIntSettings .. eIntTypes_predetermined
|
||||
|
||||
eIntFlows <- eIntFlows : Родитель
|
||||
eIntFlows --> eIntSettings : НастройкаИнтеграции
|
||||
eIntFlows --> eUserFunctions : ПользовательскаяФункция
|
||||
eIntFlows --> eIntParamsTypes : Тип (параметры входа)
|
||||
|
||||
eIntHistory --> eSysInt : ИнтегрируемаяСистема
|
||||
eIntHistory --> eIntStatuses : Статус
|
||||
eIntHistory --> eIntFormates : ФорматИнтеграции
|
||||
eIntHistory --> eIntFlows : ИнтреграционныйПоток
|
||||
eIntHistory --> eUsers : Пользователь
|
||||
eIntHistory -> eCreatedUpdated : СозданОбновлен (объекты интеграции)
|
||||
|
||||
|
||||
newpage
|
||||
|
||||
|
||||
note as eIntSettings_predetermined
|
||||
Справочник: Настройки интеграции - предопределенные элементы
|
||||
<#lightblue,#black>|= Код |= Наименование |= Родитель |= ИнтегрируемаяСистема |= ТипИнтеграции |= СтрокаПодключения |= Порт |= ВнешняяКомпонента |= УчетнаяЗапись |= ТипАвторизации |= ИдентификаторНастройки |= ИспользоватьПользовательскиеФункции |= Имя COM-объекта |= ИзмененВручную |
|
||||
<#white>| 000000001 | RabbitMQ | <пустая ссылка> | RabbitMQ | RabbitMQ | <путь к серверу> | <порт сервера> | - | <пустая ссылка> | "базовая" по умолчанию | <идентификатор> | Ложь | - | Ложь |
|
||||
<#white>| 000000002 | Kafka | <пустая ссылка> | Kafka | Kafka | <путь к серверу> | <порт сервера> | - | <пустая ссылка> | "базовая" по умолчанию | <идентификатор> | Ложь | - | Ложь |
|
||||
<#white>| 000000003 | ActiveDirectory | <пустая ссылка> | ActiveDirectory | COM | Provider="ADsDSOObject" | - | - | <пустая ссылка> | "базовая" по умолчанию | <идентификатор> | Ложь | ADODB.Connection | Ложь |
|
||||
end note
|
||||
|
||||
@enduml
|
Loading…
Reference in New Issue
Block a user