Stalar Vision
ApprovalFlow — система согласования внутренних заявок на Java / Spring Boot/
Stalar Vision
#Разработка программного обеспечения

ApprovalFlow — система согласования внутренних заявок на Java / Spring Boot/

25 
Stalar Vision Россия, Санкт-Петербург
Поделиться: 0 0 0
ApprovalFlow — система согласования внутренних заявок на Java / Spring Boot/
Сфера

Информационные технологии и интернет

Сдано

Август 2026

Задача

Создать демонстрационную fullstack-систему для автоматизации внутренних процессов согласования заявок в компании.

Требовалось реализовать понятный workflow, в котором сотрудник может создать и отправить заявку на согласование, руководитель — рассмотреть её и принять решение, а система — контролировать допустимые переходы между состояниями и сохранять историю действий.

Отдельными требованиями были разграничение доступа по ролям, защита данных разных пользователей, обработка конкурентных изменений, предсказуемые API-контракты, фильтрация и пагинация списков, а также возможность повторно открыть отклонённую заявку, внести изменения и снова отправить её на согласование.

Проект создавался как демонстрация архитектуры корпоративного workflow-приложения и инженерных подходов, применимых при разработке внутренних бизнес-систем.

Решение

ApprovalFlow реализован как разделённое fullstack-приложение с Java/Spring Boot backend и отдельным интерфейсом на React и TypeScript.

На серверной стороне реализована ролевая модель доступа с использованием Spring Security. Сотрудник может создавать заявки в статусе черновика, редактировать их, отправлять на согласование, просматривать историю изменений и повторно открывать отклонённые заявки. Руководитель работает с отдельной очередью заявок и может принимать или отклонять их с указанием причины.

Все переходы между состояниями проверяются сервером. Для защиты от конфликтов при параллельном изменении данных используется optimistic locking, а история переходов хранится отдельно и позволяет восстановить последовательность действий по заявке.

Данные хранятся в PostgreSQL. Структура базы управляется миграциями Flyway, а Hibernate используется в режиме проверки соответствия схемы модели приложения.

Frontend реализован на React и TypeScript с защищёнными маршрутами и интерфейсом, который учитывает роль текущего пользователя.

Для проверки бизнес-логики и работы с реальной PostgreSQL используется интеграционное тестирование через Testcontainers. В проекте настроен CI через GitHub Actions, а для локальной демонстрации подготовлен контейнеризированный контур на Docker Compose с PostgreSQL, backend и frontend через Nginx.

В результате получился воспроизводимый демонстрационный контур корпоративной workflow-системы, на котором можно показать полный цикл обработки заявки — от создания сотрудником до решения руководителя и сохранения истории процесса.

Результат

В результате был создан рабочий демонстрационный контур корпоративной системы согласования заявок с разделением пользователей по ролям и контролируемым жизненным циклом бизнес-процесса.

Реализован полный сценарий работы сотрудника и руководителя: создание и редактирование заявки, отправка на согласование, просмотр очереди руководителем, принятие или отклонение заявки, повторное открытие отклонённой заявки и сохранение истории переходов между состояниями.

Серверная часть обеспечивает разграничение доступа, проверку допустимых переходов, защиту данных пользователей и обработку конфликтов конкурентного изменения. Для хранения данных используется PostgreSQL с управляемыми миграциями схемы.

Проект получил отдельный frontend на React и TypeScript, backend на Java/Spring Boot, интеграционный тестовый контур с PostgreSQL через Testcontainers и воспроизводимое локальное окружение на Docker Compose.

На текущем этапе реализован и проверен основной MVP и демонстрационный workflow. Проект предназначен для демонстрации архитектурных и инженерных подходов к разработке внутренних корпоративных систем и не позиционируется как готовая публичная production-система.

Комментарий агентства

Станислав Ларин
Станислав Ларин

Fullstack-разработчик

ApprovalFlow создавался не как очередной CRUD-пример, а как модель реального внутреннего бизнес-процесса. Поэтому основной акцент был сделан на жизненном цикле заявки, разграничении ролей, истории действий, защите от конфликтующих изменений и тестируемости бизнес-логики. Проект показывает подход Stalar Vision к разработке систем, где важна не только работа интерфейса, но и предсказуемость поведения всей системы.

https://approvalflow.stalarvision.ru/

Стек технологий

  • HTML HTML Язык программирования
  • Java Java Язык программирования
  • JavaScript JavaScript Язык программирования
  • React.js React.js Фреймворк/библиотека
  • Spring Spring Фреймворк/библиотека
  • PostgreSQL PostgreSQL База данных
  • Docker Docker Среда разработки
  • Intellij IDEA Intellij IDEA Среда разработки
  • NGINX NGINX Веб-сервер

Над проектом работали:


Оцените кейс
Спасибо за оценку
Выскажите мнение
Авторизуйтесь, чтобы добавить свой комментарий.
оставить заявку

Хотите заказать похожий проект?

Stalar Vision с удовольствием обсудит вашу задачу

Оставить заявку