Перейти к основному содержимому

Общий подход интеграции сервиса бизнес-логики в Атомкод

Чтобы в проекте Gradle подключить функционал Атомкод необходимо:

  • Добавить зависимости в проекте Gradle;
  • Настроить импорты BOM-файлов для управления версиями.

Реализации сервисов Атомкод предоставляются в следующих пакетах:

  • JavaPlatformServiceStarter: основной Spring Boot Starter;
  • mdjavaapiclient: клиент для взаимодействия с API Атомкод.

Следующий блок кода файла build.gradle демонстрирует добавление зависимостей от этих пакетов.

plugins {
id 'java'
id 'org.springframework.boot' version '3.4.4'
id 'io.spring.dependency-management' version '1.1.5'
}

dependencies {
// Вариант 1: Использование артефактов из репозитория, если доступ есть
// implementation 'ru.platform:JavaPlatformServiceStarter:1.4.3'
// implementation 'ru.platform:mdjavaapiclient:1.1.5'

// Вариант 2: Использование локальных JAR-файлов
implementation files('externalJars\\JavaPlatformServiceStarter-1.4.3.jar')
implementation files('externalJars\\mdjavaapiclient-1.1.5.jar')
}

group = 'ru.platform'
version = '1.0.0'

java {
sourceCompatibility = '17'
}

springBoot {
buildInfo() # Включает генерацию информации о сборке
}

Модули шаблона сервиса управляются следующими группами параметров в файле application.yaml:

platform:
core:
api-client
identity
platform-settings
discovery
system-api
microservice-interaction
swagger
otel
logging
security
datasource
kafka
mdcamundaproxy-client
audit
identity-admin-api

Основной модуль Атомкод активируется параметром platform.core.starter.enabled. Этот модуль является обязательным для работы всех зависимых компонентов.

Следующий блок кода файла application.yaml демонстрирует включение базовой функциональности Атомкод.

platform:
core:
starter:
enabled: true # Активирует основной функционал Атомкод
api-client:
nginx-url: https://pmd-bpms.plm.md.local # Базовый URL-адрес Nginx
identity-issuer: https://pmd-bpms.plm.md.local/identity # URL-адрес сервиса аутентификации
client-id-0: mdcamundaproxy-client # Идентификатор клиента
client-secret-0: LwB7M6wx7xNp29v17neKCx8ihEg1lAdGw5N9YkGwjDfntO5sywVYW5NqdGmB10cC # Секрет клиента
identity:
current-client-id: mdcamundaproxy-client # Идентификатор текущего клиента

При активации модуля Core автоматически настраиваются следующие артефакты:

Все остальные модули Атомкод требуют активного модуля Core. При отключении модуля Core (enabled: false) зависимые модули работать не будут.