Backend - приложение позволяет пользователям делиться информацией об интересных событиях и находить компанию для участия в них.
- Java 21
- Spring Boot (starters: web, validator, actuator, jpa)
- Maven
- DB: PostgreSQL (main), H2 (testing)
- Docker (including docker-compose)
- Lombok
- main (основной модуль)
- category-service
- user-service
- request-service
- compilation-service
- event-service
- stats (модуль сбора и передачи статистики)
- stats-client
- stats-dto
- stats-server
Управление событиями (Event
), категориями (Category
), подборками событий (Compilation
).
Public API
-
Получение одиночного события по id
-
Получение списка событий по заданным параметрам (содержание текста, категории, доступность, даты начала и окончания, размер)
-
Получение топ-просматриваемых событий
-
Получение топ-понравившихся событий
-
Получение категории по id
-
Получение списка категорий по параметрам
-
Получение компиляции событий по id
-
Получение списка компиляций по параметрам
Private API
- Создание события
- Получение собственного события по id.
- Получение списка собственных событий по параметрам
- Обновление собственного события
Admin API
-
Обновление события (в том числе подтверждение)
-
Получение списка событий по параметрам
-
Создание категории событий
-
Удаление категории событий
-
Обновление категории событий
-
Создание подборки событий
-
Удаление подборки событий
-
Обновление подборки событий
Управление пользователями (User
)
Admin API
- Добавление пользователя
- Удаление пользователя
- Получение списка пользователей по id
Управление заявками на участие в событии
Private API
- Создание заявки
- Отмена заявки
- Обновление статуса заявки на определенное событие
- Получение списка собственных заявок
- Получение списка заявок для собственного события
Управление комментариями событий
Private API
- Добавить комментарий событию
- Удалить комментарий события
- Получить все комментарии события
- Обновить комментарий
- Получить все комментарии пользователя
Admin API
- Обновить комментарий
- Удалить комментарий события