Разработка модуля заявок для системы-маркетплейса ( Python / Flask )

30 000 руб. за проект
30 апреля 2020, 09:29 • 12 откликов • 116 просмотров
В разрабатываемой системе (marketplace) необходимо реализовать модуль формирования заявок на закупку товаров.

На данный момент в системе реализованы профили пользователей, карточка товаров, каталог товаров. Необходимо добавить следующие функции:
  • Создать заявку за закупку товаров (= карточка заявки, набор полей с описанием заявки)
  • Добавить в заявку один или более товаров (использовать существующий каталог товаров)
  • Отправить заявку другим пользователям-поставщикам (выбор пользователей осуществляется исходя из выбранных товаров – каждый пользователь-поставщик выбирает товары (или группу товаров в каталоге), которые он поставляет)
  • Получить ответы от поставщиков (т.е. к заявке должны прикрепиться один или более ответов с комментариями, предложением цены от поставщика и пр.)

Описан сценарий только для покупателя, сценарий поставщика (т.е. формирование ответа, предложение цены и пр.) является отдельной задачей.

В рамках текущей задачи необходимо:
  • Расширить модель данных текущей версии системы – добавить такие сущности, как "Заявка", "Ответ на заявку", при этом модели должны быть связаны с уже существующими – каталог разделов, товар и пр.
  • Реализовать статусную модель заявки (драфт, отправлена, скрыта и пр.)
  • Реализовать базовый интерфейс пользователя – использовать уже существующую тему оформления и компоненты. Требуется поддержка динамических форм (например, карточка заявки – должна быть возможность добавить один или более товаров без перезагрузки страницы. Уже реализовано аналогичное решение для других модулей – возможно его переиспользовать с некоторой доработкой)
  • Реализовать пересечение со сценарием продавца на уровне "заглушек" (т.е. достаточно автоматически создавать несколько тестовых ответов)
  • Покрыть код тестами (в т.ч. функциональными Selenium)

Стек:
  • Python 3.x
  • Flask + ряд "батареек"
  • SQLAlchemy / PostgreSQL
  • WTForms
  • pytest
  • Bootstrap 4.x / jQuery
Реализация frontend'а сейчас простейшая, для большинства экранов используется готовая тема и компоненты.

Условия
  • Перед началом работ необходимо подписать NDA
  • Вся работа ведется в репозитории заказчика, требуется соблюдение Commit Best Practices. Со стороны заказчика будет проводиться регулярный ревью
Ожидаем заявок от исполнителей с опытом разработки не менее 3 лет. Большим плюсом будет наличие GitHub/Bitbucket/аналогичного аккаунта с примерами работ. Обязательно знание и применение на практике PEP-8 и аналогов, гайдлайнов Flask.

Стоимость работ согласовывается с кандидатом при обсуждении полной постановки задачи.