[ ESC // НАЗАД_В_ХАБ ]
// СТАТУС: РЕЛИЗ_АКТИВЕН
// ДЕТАЛЬНЫЙ_ОТЧЕТ_ПО_КЕЙСУ

SKLAD SYSTEM crm

CRM-система для автоматизации складской сборки с тремя ролями: менеджер создает задания, старший смены распределяет их между упаковщиками, упаковщики выполняют сборку. Интеграция с Google-таблицами для автопарсинга данных и учета статистики.

ТЕХНИЧЕСКАЯ_СПЕЦИФИКАЦИЯ

Один из моих крупных коммерческих проектов. CRM-система для учета работников склада по сборке товаров. Текста будет много.

Примечание: На всех скриншотах из приложения в верхнем правом углу видны 3(уже 5) кнопки управления — это отдельная CEO-роль для простого администрирования. В реальном использовании каждый сотрудник работает под своей ролью.

Приложение разбито на 3 роли: Менеджер, Старший смены, Упаковщики.

МЕНЕДЖЕР:
В этой роли отображается календарь на текущий месяц и на один вперед. В нем видны дни с задачами, а также можно выбрать даты для добавления технических заданий (ТЗ). После выбора дня отображаются уже созданные ТЗ (если они есть) или можно добавить новые. При создании ТЗ указываются необходимые данные, а также добавляются "Товары" — в них тоже вносятся соответствующие параметры. Товары — это то, что в будущем собирают упаковщики, причем в одном ТЗ может быть любое количество товаров. ТЗ формируются на основе запросов от юридических лиц (обычно в формате Excel), и менеджер вручную их обрабатывает. Позже, после основной разработки, было решено добавить автоматический парсинг ТЗ из Google-таблиц (из общей папки компании).

СТАРШИЙ СМЕНЫ:
Этот сотрудник тоже видит сформированные менеджером задачи в календаре, но не может их редактировать. Карточки товаров у него выглядят иначе: он выбирает параметры сборки и назначает исполнителя (упаковщика). При выборе исполнителя система предлагает только тех работников, которые сейчас находятся на складе (данные берутся из Google-таблиц компании). После назначения задачи упаковщик (если он в системе) получает уведомление. Далее старший смены может отслеживать все назначенные задачи и их статусы на странице "Назначенные задачи". Он может:
- Удалить задачу
- Поменять исполнителя
- Принять на проверку (если упаковщик отправил задачу)
- Завершить проверку
- Отправить на доработку

При проверке старший смены может корректировать количество "Собранных единиц товара".

Важно:
- Если задача завершена ("Закончить проверку и завершить"), статистика записывается в Google-таблицу компании. Если количество единиц изменено, это тоже фиксируется.
- Если выбран вариант "Закончить и отправить повторно", задача возвращается упаковщику и так же записывается в таблицу. Если поставлено "0 собранных единиц", задача пересоздается, но не записывается в таблицу.

Цветовая индикация статусов:
- Оранжевый — задача назначена/в работе
- Синий — требует проверки или на проверке
- Розовый — подтверждена
- Зеленый — выполнена (если старший смены поставил галочку)

Приоритет выделения ТЗ:
0. Синий (самый важный)
1. Оранжевый
2. Розовый
3. Зеленый

УПАКОВЩИК:
Здесь отображаются назначенные задачи. Можно создать рабочее пространство (кнопка "+") и работать с несколькими задачами. Интерфейс максимально простой (по просьбе заказчика), так как некоторые работники могут плохо владеть компьютером. После выбора задачи можно:
- Запустить таймер
- Поставить на паузу
- Завершить задачу

Важно: Сборка товара подтверждается сканированием штрихкода (используется физический сканер). После завершения задачи (в рамках одного рабочего пространства) она отправляется на проверку. Если проверка пройдена, рабочее пространство удаляется.

Итог:
Это основная часть системы. Проект был выполнен на фриланс-бирже Kwork за 30 000 руб. (без учета комиссий). Заказчик остался доволен и планирует дальнейшее развитие системы, включая модули "Отгрузки и поставки".

P.S. Исходный код проекта предоставить не могу, по понятным причинам.

Обновлено: 22 мая 2025, 16:00

// ИНТЕРФЕЙС_И_ЛОГИ / МЕДИА

ДАТА РАЗРАБОТКИ 20.05.2025
ИСПОЛЬЗОВАННЫЙ СТЕК
Python Flet FastAPI MySql MQTT