Обработка кредитных заявок
Приложение Spring Boot со встроенным движком Camunda 7 BPM для автоматизации рабочих процессов кредитных заявок.
📌 Обзор
Этот проект реализует процесс одобрения кредитной заявки с использованием Camunda 7. Рабочий процесс включает:
- Валидацию заявки
- Оценка кредитоспособности клиента
- Маршрутизацию решений (одобрение/отказ)
Ключевые технологии:
- Spring Boot 3.x
- Camunda 7 BPM Engine
- H2 Database (встроенная, для разработки)
🚀 Возможности
- BPMN 2.0 Workflow: Визуальное проектирование процессов с помощью Camunda Modeler.
- Оценка кредитоспособности клиента: Имитация интеграции с тестовыми сервисами кредитного рейтинга.
- OpenBPM Control: Мониторинг бизнес-процессов.
⚙️ Требования
- Java 21+
- Gradle
- OpenBPM Studio
🛠️ Установка
-
Клонировать репозиторий:
git clone https://github.com/openbpm-platform/openbpm-spring-boot-sample.git cd openbpm-spring-boot-sample -
Собрать и запустить приложение:
./gradle bootRun -
Запустить OpenBPM Control:
cd docker docker compose up -d -
Доступ:
Приложение: http://localhost:8080
OpenBPM Control: http://localhost:8081
H2 Console: http://localhost:8080/h2-console (JDBC URL: jdbc:h2:mem:camunda)
🔧 Конфигурация
Файл src/main/resources/application.properties:
spring.application.name=openbpm-spring-boot-sample
# Настройки H2
spring.datasource.url: jdbc:h2:file:./h2/camunda-h2-database
spring.h2.console.enabled=true
spring.h2.console.path=/h2-console
# Camunda 7 - встроенная конфигурация
camunda.bpm.admin.user-id=admin
camunda.bpm.admin-user.password=admin
camunda.bpm.auto-deployment-enabled=true
camunda.bpm.deployment-resource-pattern=classpath*:processes/*.bpmn, classpath*:process-forms/*.form
server.port=8080
📂 Определение процесса
В проект добавлен тестовый бизнес-процесс для запроса одобрения кредита.
Файл BPMN: src/main/resources/processes/approval-process.bpmn
Логика процесса:
-
Заполнение случайными данными (Service Task):
Автоматическая генерация тестовых данных (имя, фамилия, телефон, email) для имитации заявки.
-
Валидация данных (Service Task):
Проверка полноты данных.
-
Проверка данных (Service Task):
Логика принятия решения: ➔ Кредитный рейтинг ≥70 → одобрение.
➔ Кредитный рейтинг <70 → отказ. -
Уведомление об одобрении (Service Task):
Автоматическая отправка уведомления об одобрении в лог приложения.
-
Уведомление об отказе (Service Gateway):
Автоматическая отправка уведомления об отказе в лог приложения.
🛠 Быстрый старт
Вход в систему
Чтобы войти в приложение, выполните следующие шаги:
- Перейдите по адресу http://localhost:8081.
- Введите данные:
- Логин: admin
- Пароль: admin
Подключение к BPM-движкам
Чтобы добавить подключение к запущенному BPM-движку:
- Нажмите Add.
- В форме New BPM engine укажите:
- Имя: Localhost
- Base URL: http://host.docker.internal:8080/engine-rest
- Authentication: false
- Нажмите OK для сохранения подключения.

Запуск процесса
Чтобы запустить тестовый бизнес-процесс:
- Перейдите в меню Processes.
- Нажмите кнопку Start.


Управление экземплярами процессов
После запуска процесса перейдите на экран Process Instances.
Здесь отображаются все активные бизнес-процессы.

Затем нажмите View, чтобы открыть экран с подробным статусом процесса.

Подробное описание OpenBPM Control можно найти здесь.
📊 Мониторинг
OpenBPM Control:
URL: http://localhost:8081/
Анализ метрик процессов и отладка выполнения.