Двухмодульное приложение на основе микросервисной архитектуры для размещения и поиска событий. Функционал различается в зависимости от уровня доступа — публичный, авторизованный пользователь или администратор.
Приложение состоит из основного сервиса, основной базы данных, сервиса статистики просмотров и базы данных для статистики. Каждая часть запускается в отдельном docker-контейнере.
- Java 11
- Spring Boot
- Hibernate
- PostgreSQL
- Maven
- Lombok
- MapStruct
- Postman
- Docker
- ТЗ для API основного сервиса
- ТЗ для API сервиса статистики
- В качестве дополнительной функциональности реализована возможность комментирования событий.
[GET] /admin/comments?from={from}&size={size}— получение списка всех комментариев с пагинацией[DELETE] /admin/comments/{commentId}— удаление комментария[POST] /users/{userId}/comments?eventId={eventId}— создание нового комментария к событию[PATCH] /users/{userId}/comments/{commentId}— редактирование своего комментария[DELETE] /users/{userId}/comments/{commentId}— удаление своего комментария[GET] /users/{userId}/comments?eventId={eventId}&from={from}&size={size}— получение списка всех комментариев пользователяuserIdк событиюeventIdс пагинацией[GET] /users/{userId}/comments?from={from}&size={size}— получение списка всех комментариев пользователяuserIdс пагинацией[GET] /comments?eventId={eventId}&from={from}&size={size}— получение списка всех комментариев к событиюeventIdс пагинацией[GET] /comments/{commentId}— получение отдельного комментария по айди
