MTS Bank Hackathon
Создание сервиса автоматической организации командировок.
В рамках этого кейса необходимо разработать инновационный веб-сервис, который позволит компаниям автоматизировать и оптимизировать процесс организации командировок для сотрудников.
Основной целью кейсаявляется упрощение и ускорение процесса планирования,бронирования и оформления поездок, а также повышение эффективности управления корпоративными командировками.
В рамках этого MVP был разработал Frontend и Backend.
Для пользователей были определены 3 основные роли: сотрудник
, руководитель
и бухгалтер
.
Для каждой роли был создан отдельный интерфейс с различным функционалом.
Для всех ролей предусмотрен функционал создания заявки на командировку, просмотра статуса заявок, а также формирование авансового отчёта.
Для Руководителя
доступен функционал принятия заявки.
Для Бухгалтера
доступны функции одобрения заявки и просмотра авансового отчёта.
Для удобства развёртывания всегор проекта был использован Docker Compose
.
Для каждого сервиса представлена Swagger
документация.
Ниже представлена информация о всех релизованных компонентах системы.
На стороне фронтанда были реализованы основные операции над заявками:
- Создание заявки
- Согласование руководителем
- Согласование бухгалтером
- Прикрепление финансового отчета
- Перенос в архив
- Отображение всех заявок пользователя и его профиля
Основной компонент системы, с которым Frontend обменивается информацией.
Подробнее с документацией по этому компоненту можно ознакомиться тут
Mock-сервис авторизации, к которму обращается Frontend в момент аутентификации и авторизации сотрудника.
Подробнее с документацией по этому компоненту можно ознакомиться тут
Mock-сервис с данным о сотрудниках внутри компании, используется при работе Backend'а.
Подробнее с документацией по этому компоненту можно ознакомиться тут
Mock-сервис, который позволяет выбрать рейс, отель и остальные необходимые для коммандировки услуги.
Подробнее с документацией по этому компоненту можно ознакомиться тут
- JavaScript
- React
- Java 17
- Spring-Boot
- Spring-Cloud
- Swagger
- Maven
- Docker
Для запуска необходимо иметь установленный Docker
версии 2.25
и выше.
$ bash mvnw clean install spring-boot:build-image
$ chmod +x ./assets/*
$ docker-compose up
Для запуска необходимо иметь установленный npm
версии 10.5
и выше.
$ cd frontend
$ npm install
$ npm start
Сервис будет доступен по адресу http://localhost:3000
По умолчанию в систему добавлены 3 тестовых пользователя:
- Руководитель
- Login: lead
- Password: test
- Сотрудник
- Login: test2
- Password: test
- Бухгалтер
- Login: acco
- Password: test