Skip to content

Andreymazo/diplom

Repository files navigation

## Задача

Необходимо реализовать эндпоинт, который будет формировать цену товара с учетом всех надбавок. Эндпоинт используется для
маркетплейса, поэтому необходимо цену, которая была передана в запросе, увеличить на определенную сумму. Маркетплейс
должен заплатить налоги в размере 6%, также комиссию банку за проведение транзакции покупки в размере 2%,
также комиссию за проведение транзакцию перевода оплаты автору продукта и оставить себе комиссию в размере 20%.
При этом пользоваться этим эндпоинтом могут только авторизованные пользователи со статусом "продавец".

#########################

Реализация
Вьюсет, ДРФ. логирование и регистрация черерз ДРФ ендпоинты: "rest-auth/", "rest-auth/registration/". При регистрации
пользователь выбирает быть ему Продавцом или нет. Продавец может создать товар и указать цену, но в базу поступит
 уже измененная цена товара. Тоже самое с изменением уже существующего товара (эндпоинт: product_list, product_create, product_detail/1).
 База Постгрес. Создавать, изменять может только продавец и свой товар, чужие - смотреть.

 В моделях закомментирован кастомный метод криейт def create_product(self, product_name: int, category_id: int, user_id:
  int, price_value: int, product_description: str):
  Это если криейтим командой, а не через эндпоинт, тоже самое в create_product4.py - два варианта создания товаров (первый закомментрован), обычным криейтом
  и кастомным, закомментрованным в моделях.
 Чтобы получить в первый раз токен (с эндпоинта), если пользователь уже зарегистрирован, то /api/v1/rest-auth/login/ иначе
 rest-auth/registration/
 В документацию swagger/ можно зайти аутенфицированным, либо снимите запрет в urls.py

## В командныйх файлах, например, в price/management/commands/slide1.py код демонстрирующий како-то проект. Каждый слайд раскрывается по нажатию клавиши. Библиотека тинкер.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages