Проект выполнен с использованием SpringBoot. В ходе работы реализованы следующие эндпоинты:
- Операции с пользователями:
- GET-Посмотреть список ползователей.
- GET-Получить пользователя по его ID.
- PATCH-Изменить роль пользователя.
- Операции с ававтаром:
- GET-Получить аватар пользователя по его ID.
- PATCH-Обновить аватар.
- Операции с заявками:
- GET-Посмотреть все заявки с сортировкой по возрастанию.
- GET-Для USER. Посмотреть все заявки? созданные пользователем, сортированные по дате и статусу и с пагинацией.
- GET-Для OPERATOR. Посмотреть все отправленные на рассмотрение заявки с возможностью сортировки по дате создания в оба направления (как от самой старой к самой новой, так и наоборот) и пагинацией по 5 элементов. Есть фильтрация по имени.
- GET-Для OPERATOR. Просматривать отправленные заявки только конкретного пользователя по его имени/части имени.
- Регистрация
- Авторизация
Настоящий SpringBoot прект имеет классическую трехслойную структуру:
- слой контроллеров, содержащий эндпоинты;
- слой сервисов, содержащий бизнесс логику;
- слой DAO(Data Access Object) или же слой репозиториев;
База данных используемая в проекте PostgreSQL.
Для выполнения поставленной задачи, были созданы три сущности:
В корневом каталоге проекта можно найти файл с экспортированной коллецией запросов Postman в формате JSON.
Проект использует следующие технологии и библиотеки:
- Spring Boot: Фреймворк для создания веб-приложений на языке Java.
- Hibernate: Фреймворк для работы с базой данных.
- PostgreSQL: База данных для разработки.
- Postman Инструменты для работы с эндпоинтами.