Для запуска сервиса, необходимо:
- Клонировать репозиторий
- Настроить .env файл
docker compose up
Swagger-UI доступен после запуска проекта по адресу:
http://localhost:8080
Для работы авторизации через ВК требуется:
- перейти на страницу создания приложения ВК
- создать приложение типа Сайт
- перейти на вкладку Настройки
- значение поля ID приложения задать переменной окружения
SOCIAL_AUTH_VK_OAUTH2_KEY
в файле .env - значение поля Защищённый ключ задать переменной окружения
SOCIAL_AUTH_VK_OAUTH2_SECRET
в файле .env
GET - авторизация/регистрация через ВК.
GET - получить данные текущего пользователя.
POST - зарегистрировать нового пользователя.
PATCH - изменить данные текущего пользователя.
POST - авторизация по email и паролю (получить токен авторизации).
POST - отправить на почту запрос сброса пароля.
POST - сбросить пароль на новый.
GET - получить список всех контактов.
POST - создать контакт.
GET - получить контакт с id равным 1.
PATCH - изменить контакт с id равным 1.
DELETE - удалить контакт с id равным 1.
GET - получить список всех магазинов.
POST - создать магазин.
GET - получить магазин с id равным 1.
PATCH - изменить магазин с id равным 1.
GET - получить список всех категорий товаров
GET - получить категорию с id равным 1.
GET - Получить список всех товаров.
Доступна фильтрация товаров по:
name
= наименование товара
shop
= название магазина
min_price
= минимальная цена товара
max_price
= максимальная цена товара
min_price_rrc
= минимальная рекомендованная цена товара
max_price_rrc
= максимальная рекомендованная цена
category
= категория товара
quantity
= количество товара \
GET - получить товар с id равным 1.
GET - получить информацию о текущей корзине (если она есть).
POST - добавить товар/изменить количество по id.
DELETE - удалить из корзины товар(ы) с id из списка.
GET - получить все заказы.
POST - разместить заказ из корзины на предварительно созданный контакт.
GET - получить свой заказ с id равным 1.
DELETE - полностью отменить заказ для магазина, где id заказа магазина равен 1.
POST - импорт товаров в формате .yaml.
Требуется к запросу прикрепить файл в тело запроса, пример файла находится в /app/data.
GET - Проверить результат импорта товаров.
GET - получить список всех товаров своего магазина.
доступна фильтрация
POST - создать товар.
GET - получить товар своего магазина с id товара равным 1.
PATCH - изменить товар своего магазина с id товара равным 1
DELETE - обнулить количество товара в наличии.
GET - получить текущий статус своего магазина.
POST - изменить статус своего магазина.
GET - получить список всех заказов своего магазина.
GET - получить заказ своего магазина с id равным 5.
PATCH - изменить заказ своего магазина с id равным 5.