Skip to content

Vladislav-76/ya-pack-solution

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ya-pack-solution - Проект рекомендации упаковки для товара со склада

Краткое описание

Проект позволяет работнику склада(упаковщику) при помощи данного приложения получать от модели машинного обучения рекомендации по наиболее оптимальному использованию упаковки для товаров при сборе заказа. Рекомендация включает в себя вид упаковки и ее количество.

Установка приложения

Клонируйте репозиторий по ссылке

Установка и запуск приложения включает в себя 4 стадии:

  • установка виртуального окружения и зависимостей
  • запуск backend составляющей
  • запуск data science составляющей
  • запуск frontend составляющей

1 Установка виртуального окружения и зависимостей:

Установить интерпретатор python:

Ссылка на файл установки(для windows)

  • ПРИ УСТАНОВКЕ ПОСТАВИТЬ ГАЛОЧКУ НА ПЕРВОМ ЭКРАНЕ УСТАНОВЩИКА "Добавить в PATH"
  • Перезагрузить комп
  • Находясь в корне скаченного репозитория, выполнить поочереди следующие комманды в терминале:
python -m venv venv

source venv/Scripts/activate  #для windows

python -m pip install --upgrade pip

pip install -r requirements.txt

2 Запуск backend составляющей:

В окне терминала с активированным виртуальным окружением перейти в папку backend/yapack/ и выполнить команду

python manage.py runserver

3 Запуск data science составляющей:

Открыть новое окно терминала и в корне репозитория активировать виртуальное окружение командой:

source venv/Scripts/activate  #для windows

Далее выполнить команду

python ds_model/app.py

4 Запуск frontend составляющей:

  • Установите node.js
  • Откройте еще одно окно терминала, перейдите в папку frontend и выполните команды:
npm install

npm start

Перейдите по адресу:

Как работает проект

После того как вы запустите все составляющие и перейдете по адресу http://localhost:3000 вам будет доступна страница с интерфесом в котором должны отображаться товары, упаковка и прочие интересные вещи. Но изначально при запуске товары и упаковка не отобразятся.
А дело вот в чем:
Чтобы запустить нашу модель машинного обучения, необходимо перейти по адресу:

  • http://127.0.0.1:8000/ds_exchange/get_orders/
    Здесь вы увидите несложную форму, которая предлагает на выбор 3 варианта запроса данных у модели машинного обучения:
  • на 1 заказ
  • на 10 заказов
  • на 100 заказов

Выбирайте и нажимайте отправить, после этого увидите ответ

Количество N
Ответ ['id_заказа']

Вот теперь переходим по адресу http://localhost:3000 и смотрим на заказ который нам надо упаковать.

А что тут можно?

  • Можно скопировать номер штрихкода товара нажатием леовй кнопки мыши на синий ряд чисел в правой части карточки товара.
  • Можно нажать на кнопку "Ввести с клавиатуры" и вставить туда штрихкод скопированный в предыдущем пункте и нажать "Готово". Вот так мы "вручную" сканируем товары.
  • Если вам кажется что у вас есть проблема - жмите кнопку "Есть проблема", после чего выберете из предложенных вариантов наиболее подходящий вам и перейдете к упаковке другого заказа.
  • А если проблем нет, то после сканирования товаров, вам нужно отсканировать упаковку. Но где же взять номер штрихкода упаковки?! Не беда - надо зайти в админку и посмотреть его вручную. Для этого перейдем по адресу http://127.0.0.1:8000/admin/
  • логин: admin
  • пароль: 123
  • переходим в раздел "Виды упаковок"
  • кликаем на любой вид упаковки из таблицы и нам откроется детальное описание типа упаковки, содержащее данные штрихкода.

Теперь можно вернуться к нашему отсканированному товару. Вновь нажать на кнопку "Ввести с клавиатуры" и вставить туда штрихкод скопированный в админке. Выбранный вид упаковки появится прямо под рекомендованным. Нажимаем кнопку "Закрыть посылку". Нажимаем кнопку "Готово". Прерходим к следующему заказу.

Cсылка на Github Pages

Для перехода на сайт проекта, нажмите здесь

Сведения о команде

FRONTEND:

DATA SCIENCE:

BACKEND:

DESIGN:

PRODUCT MANAGER:

Стэк технологий

FRONTEND:

  • React
  • ESLint
  • Prettier
  • Commitizen
  • Husky
  • В проекте используются шрифты YS Disp и YS Text.
  • Адаптирован под разрешения от 1280px до 1920px.

DATA SCIENCE:

  • FastAPI
  • Pandas
  • Numpy
  • Catboost
  • Sklearn

BACKEND:

  • django
  • djangorestframework

Releases

No releases published

Packages

No packages published

Languages

  • Jupyter Notebook 90.2%
  • Python 6.3%
  • JavaScript 2.4%
  • Other 1.1%