# ПРАВИЛА СИСТЕМЫ СКЛАДА ПОСТАВЩИКА > ⚠️ **ВАЖНОЕ ПРИМЕЧАНИЕ**: Данные из этого файла могут быть удалены только с разрешения пользователя. Все изменения должны согласовываться. ## 1. 🎯 ОСНОВНЫЕ ПРИНЦИПЫ ### 1.0 Структура системы по кабинетам **🏢 КАБИНЕТ ПОСТАВЩИКА** - управляет созданием и поставкой: - **ТОВАР** - базовые товары от поставщика - **РАСХОДНИКИ** - материалы и вспомогательные товары **🏭 КАБИНЕТ ФУЛФИЛМЕНТА** - принимает, обрабатывает и управляет всеми типами: - **ТОВАР** - базовые товары от поставщиков (принятые на склад) - **БРАК** - товары с дефектами (производные от товара) - **ПРОДУКТ** - готовые к продаже товары (производные от товара) - **РАСХОДНИКИ ФУЛФИЛМЕНТА** - операционные материалы фулфилмента - **РАСХОДНИКИ СЕЛЛЕРОВ** - материалы для товаров селлеров ### 1.1 Типизация предметов - **ОБЯЗАТЕЛЬНО**: Каждый предмет должен иметь один из следующих типов: **ТИПЫ ПРЕДМЕТОВ ПО КАБИНЕТАМ:** **🏢 КАБИНЕТ ПОСТАВЩИКА:** 1. **ТОВАР** - базовый тип товара от поставщика 2. **РАСХОДНИКИ** - материалы и вспомогательные товары от поставщика **🏭 КАБИНЕТ ФУЛФИЛМЕНТА:** 1. **ТОВАР** - базовые товары от поставщиков (принятые на склад) 2. **БРАК** - производная от товара (товар с дефектами) 3. **ПРОДУКТ** - производная от товара (готовый к продаже товар) 4. **РАСХОДНИКИ ФУЛФИЛМЕНТА** - операционные материалы фулфилмента 5. **РАСХОДНИКИ СЕЛЛЕРОВ** - материалы для товаров селлеров - **ЗАПРЕЩЕНО**: Создание предметов без указания типа - **ВАЖНО**: Товар ≠ Продукт (это разные сущности в системе) - **ПРАВИЛО**: Тип определяет логику обработки, отображения и workflow в системе - **КЛАССИФИКАЦИЯ РАСХОДНИКОВ**: Поставщик создает просто "РАСХОДНИКИ". При заказе, в зависимости от типа заказчика, они становятся: - **Расходники фулфилмента** - если заказывает фулфилмент-центр - **Расходники селлеров** - если заказывает селлер ### 1.2 Правила производных типов - **БРАК**: - **ПРОИСХОЖДЕНИЕ**: Создается на основе существующего товара - **СВЯЗЬ**: Обязательная связь с родительским товаром - **УЧЕТ**: Отдельный учет в статистике потерь - **WORKFLOW**: Особый процесс списания и утилизации - **ПРОДУКТ**: - **ПРОИСХОЖДЕНИЕ**: Создается на основе товара после обработки - **ОТЛИЧИЕ**: Товар - сырье, Продукт - готовая единица к продаже - **СТАТУС**: Имеет собственный жизненный цикл - **УЧЕТ**: Отдельная статистика от базового товара - **РАСХОДНИКИ ФУЛФИЛМЕНТА**: - **НАЗНАЧЕНИЕ**: Для внутренних операций фулфилмент-центра - **ЗАКАЗЧИК**: Фулфилмент-центр заказывает для себя - **УЧЕТ**: В статистике операционных расходов фулфилмента - **РАСХОДНИКИ СЕЛЛЕРОВ**: - **НАЗНАЧЕНИЕ**: Для товаров и операций селлеров - **ЗАКАЗЧИК**: Селлер заказывает через фулфилмент - **УЧЕТ**: В статистике расходов селлера ### 1.3 Уникальность артикулов - **ОБЯЗАТЕЛЬНО**: Артикул должен быть уникальным в рамках организации - **ПРАВИЛО**: Система должна автоматически генерировать артикул СФ при создании - **ФОРМАТ**: `СФ-{ТИП}-{КОД_КАТЕГОРИИ}-{КОД_ОРГАНИЗАЦИИ}-{TIMESTAMP}-{RANDOM}` - **ТИПЫ В АРТИКУЛЕ**: - `TOV` - Товар - `BRK` - Брак - `R` - Расходники (классифицируются при заказе) - `PRD` - Продукт ### 1.4 Обязательные поля - **КРИТИЧЕСКИ ВАЖНО**: Название, артикул, цена > 0, тип предмета - **ОБЯЗАТЕЛЬНО**: Количество (может быть 0 для предзаказа) - **ДЛЯ ПРОИЗВОДНЫХ ТИПОВ**: Обязательная связь с родительским предметом (для брака и продукта) - **ДЛЯ РАСХОДНИКОВ**: Обязательно указание подтипа (фулфилмента или селлеров) - **РЕКОМЕНДУЕТСЯ**: Описание, категория, основное изображение ## 2. 🔒 ПРАВИЛА ДОСТУПА И БЕЗОПАСНОСТИ ### 2.1 Контроль доступа - **ЗАПРЕЩЕНО**: Поставщик не может добавлять собственные предметы в корзину - **ПРАВИЛО**: Только активные предметы (`isActive: true`) отображаются в маркете - **ОГРАНИЧЕНИЕ**: Доступ к заказам только для участников процесса (создатель, поставщик, фулфилмент) - **ПО ТИПАМ ПРЕДМЕТОВ**: - **ТОВАР**: Доступен всем типам организаций для заказа - **БРАК**: Доступен только для просмотра, заказ запрещен - **РАСХОДНИКИ**: Доступны всем типам организаций для заказа - При заказе фулфилмент-центром классифицируются как "расходники фулфилмента" - При заказе селлером классифицируются как "расходники селлеров" - **ПРОДУКТ**: Доступен для заказа после подтверждения готовности ### 2.2 Проверка остатков - **ОБЯЗАТЕЛЬНО**: Проверять наличие предмета перед добавлением в корзину - **ПРАВИЛО**: Количество в заказе не может превышать остаток на складе - **ИСКЛЮЧЕНИЕ**: Предзаказы (если реализована функция) - **ОСОБЕННОСТИ ПО ТИПАМ**: - **ТОВАР/ПРОДУКТ**: Стандартная проверка остатков - **БРАК**: Остатки учитываются, но заказ запрещен - **РАСХОДНИКИ**: Проверка с учетом резервирования под активные заказы ### 2.3 Валидация данных - **ОБЯЗАТЕЛЬНО**: Проверка корректности всех числовых значений (цена, вес, количество) - **ПРАВИЛО**: Цена должна быть больше 0 - **ОГРАНИЧЕНИЕ**: Вес и габариты должны быть положительными числами ## 3. 📊 ПРАВИЛА СТАТИСТИКИ И АНАЛИТИКИ ### 3.1 Актуализация данных - **КРИТИЧЕСКИ ВАЖНО**: При изменении количества в карточке данные актуализируются во всей системе - **ПРАВИЛО**: Статистика обновляется в реальном времени - **ОБЯЗАТЕЛЬНО**: Отслеживание изменений для аналитики ### 3.2 Отображение метрик - **ОБЯЗАТЕЛЬНО**: Блок статистики в верхней части раздела склад - **СОСТАВ**: Общие остатки, заказано, в пути, остаток, продано - **ПРАВИЛО**: Подсвечивать предметы с остатками ниже критического уровня - **РАЗДЕЛЕНИЕ ПО ТИПАМ И КАБИНЕТАМ**: **В КАБИНЕТЕ ПОСТАВЩИКА**: - **ТОВАРЫ**: Общая статистика товаров поставщика - **РАСХОДНИКИ**: Материалы и вспомогательные товары (классифицируются при заказе) **В КАБИНЕТЕ ФУЛФИЛМЕНТА**: - **ТОВАРЫ**: Базовые товары от поставщиков (принятые на склад) - **ПРОДУКТЫ**: Отдельный блок готовой продукции - **БРАК**: Статистика потерь и списаний - **РАСХОДНИКИ ФУЛФИЛМЕНТА**: Операционные материалы фулфилмента - **РАСХОДНИКИ СЕЛЛЕРОВ**: Материалы для товаров селлеров ## 4. 🚚 ПРАВИЛА WORKFLOW ПОСТАВОК ### 4.1 Жизненный цикл статусов ``` PENDING → SUPPLIER_APPROVED → CONFIRMED → LOGISTICS_CONFIRMED → SHIPPED → IN_TRANSIT → DELIVERED ``` - **ЗАПРЕЩЕНО**: Пропускать промежуточные статусы - **ПРАВИЛО**: Каждое изменение статуса должно сопровождаться уведомлением - **ОБЯЗАТЕЛЬНО**: Логирование всех изменений статусов ### 4.2 Уведомления - **АВТОМАТИЧЕСКИ**: Отправка уведомления поставщику при создании заказа - **ОБЯЗАТЕЛЬНО**: Уведомление всех участников при изменении статуса - **ФОРМАТ**: Структурированные сообщения с деталями заказа ### 4.3 Роли и ответственность - **ПОСТАВЩИК**: Создание товаров, одобрение заказов, отгрузка - **СЕЛЛЕР**: Создание заказов, отслеживание поставок - **ФУЛФИЛМЕНТ**: Приемка товаров, выбор логистики, управление складом - **ЛОГИСТИКА**: Подтверждение доставки, транспортировка ## 5. 🖼️ ПРАВИЛА РАБОТЫ С ИЗОБРАЖЕНИЯМИ ### 5.1 Управление изображениями - **РЕКОМЕНДУЕТСЯ**: Загружать несколько изображений для каждого товара - **ОБЯЗАТЕЛЬНО**: Выбирать основное изображение для отображения в списках - **ПРАВИЛО**: Изображения должны быть в поддерживаемых форматах (JPG, PNG, WebP) - **ОГРАНИЧЕНИЕ**: Максимальный размер файла изображения ### 5.2 Отображение товаров - **ПРАВИЛО**: 5 карточек в ряд в карточном режиме - **ОБЯЗАТЕЛЬНО**: Возможность переключения между строчным и карточным режимами - **ФУНКЦИЯ**: Предпросмотр изображений при наведении/клике ## 6. 🛒 ПРАВИЛА КОРЗИНЫ И ИЗБРАННОГО ### 6.1 Система корзины - **ПРАВИЛО**: Одна корзина на организацию - **ПРОВЕРКА**: Автоматическая проверка доступности товаров при добавлении - **ОГРАНИЧЕНИЕ**: Нельзя добавлять неактивные товары - **ФУНКЦИЯ**: Автоматическое обновление количества при повторном добавлении ### 6.2 Система избранного - **ПРАВИЛО**: Индивидуальные избранные для каждого пользователя - **ФУНКЦИЯ**: Быстрое добавление из избранного в корзину - **СИНХРОНИЗАЦИЯ**: Проверка актуальности товаров в избранном ## 7. 🔄 ПРАВИЛА ИНТЕГРАЦИИ ### 7.1 Интеграция с маркетплейсами - **WILDBERRIES**: Обязательная проверка активности API ключа - **СИНХРОНИЗАЦИЯ**: Регулярное обновление данных из внешних источников - **ПРАВИЛО**: Сохранение локальных копий данных для офлайн работы ### 7.2 Глобальная интеграция - **ОБЯЗАТЕЛЬНО**: Товары поставщиков отображаются в глобальном маркете - **ПРАВИЛО**: Разделение по типам (товары/расходники) в интерфейсе - **СИНХРОНИЗАЦИЯ**: Данные склада синхронизируются с модулем аналитики ### 7.3 Интеграция с модулем "Услуги" - **РАСХОДНИКИ ФУЛФИЛМЕНТА В УСЛУГАХ**: - Селлеры могут использовать расходники фулфилмента в разделе "Услуги / Расходники" - Для создания продукта из товара - Расходники списываются с остатков фулфилмента - Стоимость включается в стоимость услуги - **WORKFLOW ИСПОЛЬЗОВАНИЯ**: 1. Селлер выбирает услугу "Создание продукта" 2. Указывает базовый товар 3. Выбирает необходимые расходники фулфилмента 4. Фулфилмент обрабатывает заказ и создает продукт 5. Расходники списываются, создается готовый продукт ## 8. 💰 ПРАВИЛА ЦЕНООБРАЗОВАНИЯ И ЛОГИСТИКИ ### 8.1 Система тарификации - **ОБЯЗАТЕЛЬНО**: Указание тарифов для грузов до 1м³ и свыше 1м³ - **ПРАВИЛО**: Автоматический расчет стоимости доставки по объему - **ФУНКЦИЯ**: Отображение примерной стоимости доставки при заказе ### 8.2 Управление ценами - **ПРАВИЛО**: Цена за единицу и цена за комплект (если применимо) - **ВАЛИДАЦИЯ**: Все цены должны быть больше 0 - **ФУНКЦИЯ**: История изменения цен для аналитики ## 9. 🔍 ПРАВИЛА ПОИСКА И ФИЛЬТРАЦИИ ### 9.1 Система поиска - **ПОИСК ПО**: Название, артикул, категория, бренд, описание - **ПРАВИЛО**: Поиск должен быть регистронезависимым - **ФУНКЦИЯ**: Автодополнение при вводе поискового запроса ### 9.2 Фильтрация и сортировка - **ФИЛЬТРЫ**: По категории, типу товара, статусу активности, остаткам - **СОРТИРОВКА**: По дате создания, названию, цене, остаткам - **ПРАВИЛО**: Сохранение настроек фильтров для пользователя ## 10. 📱 ПРАВИЛА ПОЛЬЗОВАТЕЛЬСКОГО ИНТЕРФЕЙСА ### 10.1 Отзывчивость интерфейса - **ОБЯЗАТЕЛЬНО**: Интерфейс должен работать на всех устройствах - **ПРАВИЛО**: Адаптивная сетка для карточек товаров - **ФУНКЦИЯ**: Оптимизация для мобильных устройств ### 10.2 Обратная связь пользователю - **ОБЯЗАТЕЛЬНО**: Уведомления об успешных/неуспешных операциях - **ПРАВИЛО**: Индикаторы загрузки для длительных операций - **ФУНКЦИЯ**: Подтверждение критических действий (удаление, деактивация) ## 11. 🚨 ПРАВИЛА ОБРАБОТКИ ОШИБОК ### 11.1 Обработка ошибок - **ОБЯЗАТЕЛЬНО**: Логирование всех ошибок - **ПРАВИЛО**: Понятные сообщения об ошибках для пользователя - **ФУНКЦИЯ**: Автоматическое восстановление после сбоев ### 11.2 Резервное копирование - **КРИТИЧЕСКИ ВАЖНО**: Регулярное резервное копирование данных товаров - **ПРАВИЛО**: Версионность изменений для возможности отката - **ФУНКЦИЯ**: Автоматическое восстановление связей при сбоях ## 12. 📈 ПРАВИЛА ПРОИЗВОДИТЕЛЬНОСТИ ### 12.1 Оптимизация загрузки - **ПРАВИЛО**: Пагинация для больших списков товаров - **ФУНКЦИЯ**: Ленивая загрузка изображений - **ОПТИМИЗАЦИЯ**: Кэширование часто запрашиваемых данных ### 12.2 Масштабируемость - **АРХИТЕКТУРА**: Модульная структура для легкого расширения - **ПРАВИЛО**: Использование индексов для быстрого поиска - **ФУНКЦИЯ**: Горизонтальное масштабирование при росте нагрузки ## 13. 🔐 ПРАВИЛА БЕЗОПАСНОСТИ ДАННЫХ ### 13.1 Защита данных - **ОБЯЗАТЕЛЬНО**: Шифрование чувствительных данных - **ПРАВИЛО**: Аудит всех действий пользователей - **ФУНКЦИЯ**: Контроль доступа на уровне API ### 13.2 Соответствие требованиям - **GDPR**: Право на удаление и экспорт данных - **ПРАВИЛО**: Прозрачность обработки персональных данных - **ФУНКЦИЯ**: Логирование согласий пользователей ## 14. 🎯 ПРАВИЛА КАЧЕСТВА КОДА ### 14.1 Стандарты разработки - **ОБЯЗАТЕЛЬНО**: Покрытие тестами критической функциональности - **ПРАВИЛО**: Следование принципам SOLID - **ФУНКЦИЯ**: Автоматическое тестирование при развертывании ### 14.2 Документация - **ОБЯЗАТЕЛЬНО**: Документирование всех API методов - **ПРАВИЛО**: Комментарии к сложной бизнес-логике - **ФУНКЦИЯ**: Автоматическая генерация документации --- ## 15. 📦 СПЕЦИАЛЬНЫЕ ПРАВИЛА ДЛЯ ТИПОВ ПРЕДМЕТОВ ### 15.1 Правила для ТОВАРА - **СОЗДАНИЕ**: Базовый тип, создается поставщиком - **СТАТУС**: Может быть активным/неактивным - **ЗАКАЗ**: Доступен для заказа всеми типами организаций - **ТРАНСФОРМАЦИЯ**: Может быть преобразован в ПРОДУКТ или БРАК - **УЧЕТ**: Основная единица складского учета - **ЦЕНА**: Обязательна, больше 0 ### 15.2 Правила для БРАКА - **СОЗДАНИЕ**: Только на основе существующего ТОВАРА - **СВЯЗЬ**: Обязательная связь с родительским товаром (parentId) - **СТАТУС**: Всегда неактивен для заказа - **ЗАКАЗ**: ЗАПРЕЩЕН заказ брака - **ОТОБРАЖЕНИЕ**: Виден только для учета потерь - **СПИСАНИЕ**: Особый workflow списания и утилизации - **СТАТИСТИКА**: Учитывается в потерях и браке - **ЦЕНА**: Может быть 0 (списанный товар) ### 15.3 Правила для ПРОДУКТА - **СОЗДАНИЕ**: Только на основе существующего ТОВАРА через процесс "Создания продукта" - **СВЯЗЬ**: Обязательная связь с родительским товаром (parentId) - **ОТЛИЧИЕ**: Товар = сырье, Продукт = готовая единица - **СТАТУСЫ ЖИЗНЕННОГО ЦИКЛА**: - Товар "на складе" → "в работе" → Продукт "готов к отправке" - **РЕЦЕПТУРА**: Определяется селлером при создании поставки - **СОСТАВ**: Товар + Услуга фулфилмента + Расходники (опционально) - **АРТИКУЛЫ**: Наследует от товара + артикул MP (если связан) - **ЗАКАЗ**: Доступен только в статусе "готов к отправке" - **ПРОЦЕСС**: Обязательно проходит этап обработки на фулфилменте - **УЧЕТ**: Отдельная статистика от базового товара - **ЦЕНА**: Формируется из стоимости товара + услуг + расходников - **СВЯЗЬ С MP**: Опциональная связь с карточкой маркетплейса ### 15.4 Правила для РАСХОДНИКОВ - **СОЗДАНИЕ**: Поставщик создает карточки типа "РАСХОДНИКИ" - **УНИВЕРСАЛЬНОСТЬ**: Один тип расходников для всех заказчиков - **ПРИМЕРЫ**: Упаковочные материалы, этикетки, пленка, коробки, бирки, вкладыши - **ДОСТУП**: Видны всем типам организаций в маркете - **ЗАКАЗ**: Любая организация может заказать расходники ### 15.5 Классификация при заказе **РАСХОДНИКИ → РАСХОДНИКИ ФУЛФИЛМЕНТА (при заказе фулфилмент-центром):** - **НАЗНАЧЕНИЕ**: Для внутренних операций фулфилмент-центра и услуг селлерам - **УЧЕТ**: В операционных расходах фулфилмента - **WORKFLOW**: Поставщик → фулфилмент (прямая поставка) - **ИСПОЛЬЗОВАНИЕ**: Для операций фулфилмента и услуг селлерам **РАСХОДНИКИ → РАСХОДНИКИ СЕЛЛЕРОВ (при заказе селлером):** - **НАЗНАЧЕНИЕ**: Для товаров и операций селлеров - **УЧЕТ**: В расходах селлера - **WORKFLOW**: Поставщик → фулфилмент → селлер - **ПРИВЯЗКА**: Могут быть привязаны к конкретным товарам селлера ## 16. ⚠️ КРИТИЧЕСКИЕ ЗАПРЕТЫ ### 16.1 НИКОГДА НЕ ДЕЛАТЬ: 1. ❌ Удалять предметы с существующими заказами 2. ❌ Изменять статусы заказов без уведомлений 3. ❌ Обходить проверки остатков предметов 4. ❌ Давать доступ к чужим данным 5. ❌ Игнорировать ошибки валидации 6. ❌ Сохранять пароли в открытом виде 7. ❌ Пропускать логирование критических операций 8. ❌ Блокировать интерфейс без индикации загрузки 9. ❌ Создавать брак или продукт без связи с родительским товаром 10. ❌ Создавать отдельные типы расходников (только общий тип "РАСХОДНИКИ") 11. ❌ Разрешать заказ брака 12. ❌ Нарушать иерархию типов предметов --- ## 17. 🏢 ПРАВИЛА СИСТЕМЫ СКЛАДА ФУЛФИЛМЕНТА ### 17.1 Структура раздела склад фулфилмента #### 17.1.1 Блок статистика склада **ОБЯЗАТЕЛЬНАЯ ПОСЛЕДОВАТЕЛЬНОСТЬ МОДУЛЕЙ:** 1. **ПРОДУКТ** - готовые к продаже товары 2. **ТОВАР** - базовые товары от поставщиков 3. **БРАК** - товары с дефектами 4. **ВОЗВРАТЫ С ПВЗ** - возвращенные товары 5. **РАСХОДНИКИ СЕЛЛЕРОВ** - материалы для селлеров 6. **РАСХОДНИКИ ФУЛФИЛМЕНТ** - операционные материалы **ТРЕБОВАНИЯ К МОДУЛЯМ:** - **ОБЯЗАТЕЛЬНО**: Каждый модуль отображает текущее наличие на складе - **ПРАВИЛО**: Последовательность модулей не может быть изменена - **СТАТУС**: Все модули отображают актуальные данные в реальном времени #### 17.1.2 Система учёта движения товаров **ОСНОВНЫЕ ПРИНЦИПЫ:** - **ПРИХОД**: Товары поступают через принятые поставки (из состояния "в пути" → "на складе") - **ОБРАБОТКА**: Товары переходят в статус "в работе" для создания продуктов - **РАСХОД**: Товары убывают при отгрузке, списании, возврате, превращении в продукты - **УЧЁТ**: Ведется учет прихода и расхода для каждого типа предметов - **ВИЗУАЛИЗАЦИЯ**: Движение отображается в дополнительных значениях **ДОПОЛНИТЕЛЬНЫЕ ЗНАЧЕНИЯ (показатели движения):** - **ПРИБЫЛО**: Количество предметов, поступивших на склад - **УБЫЛО**: Количество предметов, списанных со склада - **ВЛИЯНИЕ**: От этих значений зависят основные значения (общее количество) **ОСНОВНЫЕ ЗНАЧЕНИЯ (текущие остатки):** - **ОПРЕДЕЛЕНИЕ**: Итоговое количество предметов на складе - **РАСЧЁТ**: Основные значения = Предыдущие остатки + Прибыло - Убыло - **ОТОБРАЖЕНИЕ**: Показываются в каждом модуле статистики - **РАЗДЕЛЕНИЕ ТОВАРОВ**: - Товары "на складе" - готовы к обработке - Товары "в обработке" - находятся в процессе создания продукта #### 17.1.3 Модуль "Расходники фулфилмента" **ОСОБЕННОСТИ МОДУЛЯ:** - **ИНТЕРАКТИВНОСТЬ**: Является кликабельным элементом - **ФУНКЦИОНАЛЬНОСТЬ**: Содержит полноценный раздел учёта - **ДОСТУП**: Переход к детальному управлению расходниками фулфилмента - **СОДЕРЖАНИЕ**: Полный функционал работы с расходниками фулфилмента #### 17.1.4 Блок детализация по Магазинам **НАЗНАЧЕНИЕ**: Распределение товаров по торговым точкам/магазинам **ФУНКЦИИ**: - Отображение остатков по каждому магазину - Управление распределением товаров - Контроль движения между магазинами ### 17.2 Правила движения товаров в системе фулфилмента #### 17.2.1 Поступление товаров **ИСТОЧНИКИ ПОСТУПЛЕНИЯ:** - **ПОСТАВКИ**: От поставщиков через систему заказов - **ВОЗВРАТЫ**: Товары, возвращенные с ПВЗ - **ПЕРЕМЕЩЕНИЯ**: Между складами и магазинами **ПРОЦЕСС ПРИЁМКИ:** 1. Поставка переходит в статус "принято" 2. Товары из "в пути" → "на складе" 3. Обновляются основные значения 4. Фиксируется в дополнительных значениях как "прибыло" #### 17.2.2 Расход товаров **ПРИЧИНЫ РАСХОДА:** - **ОТГРУЗКА**: Товары отправлены селлерам - **СПИСАНИЕ**: Брак, утрата, утилизация - **ВОЗВРАТ**: Возврат поставщику - **ИСПОЛЬЗОВАНИЕ**: Расходники для операций ### 17.3 Процесс "Создания продукта" #### 17.3.1 Workflow создания продукта **ЭТАПЫ ПРОЦЕССА:** 1. **ПОСТУПЛЕНИЕ**: Товар приходит на склад фулфилмента (статус "на складе") 2. **СОРТИРОВКА**: Перебор товара, отсеивание брака 3. **ПОДГОТОВКА К РАБОТЕ**: Менеджер задает параметры работы 4. **ОБРАБОТКА**: Превращение товара в продукт по "рецептуре" селлера 5. **ЗАВЕРШЕНИЕ**: Готовый продукт (статус "готов к отправке") #### 17.3.2 Управление процессом **РАЗДЕЛ "СОЗДАНИЕ ПРОДУКТА":** - **НОВЫЕ**: Поставки после нажатия "принято", ожидающие назначения - **В РАБОТЕ**: Поставки в процессе обработки - **ВЫПОЛНЕНО**: Завершенные поставки с готовыми продуктами **ДЕЙСТВИЯ МЕНЕДЖЕРА В "НОВЫЕ":** - **ДЕДЛАЙН**: Указание срока выполнения работы - **ОТВЕТСТВЕННЫЙ**: Назначение исполнителя - **МЕСТО ХРАНЕНИЯ**: Указание локации для готовых продуктов (опционально) - **ЗАПУСК**: Нажатие кнопки "В работе" #### 17.3.3 Рецептура продукта (задается селлером) **СЕЛЛЕР УКАЗЫВАЕТ В ПОСТАВКЕ:** - **БАЗОВЫЙ ТОВАР**: Исходный материал (например, футболка) - **УСЛУГА ФУЛФИЛМЕНТА**: Из каталога услуг (например, "погладить") - **РАСХОДНИК СЕЛЛЕРА**: Материалы селлера (например, фирменный пакет) - **РАСХОДНИК ФУЛФИЛМЕНТА**: Материалы фулфилмента (например, короб + маркировка) **РЕЗУЛЬТАТ**: ПРОДУКТ = Товар + Услуга + Расходники #### 17.3.4 Учет план/факт в процессе работы **ПЛАН**: Количество товара из поставки селлера **ФАКТ**: Реальное количество после сортировки **ФИКСАЦИЯ БРАКА:** - **КОГДА**: В процессе работы (вкладка "В работе") - **КТО**: Ответственный исполнитель - **ДЕТАЛИЗАЦИЯ**: По каждому предмету (размер/объем) - **ОБНОВЛЕНИЕ**: Можно вносить изменения до нажатия "Выполнено" **ВЛИЯНИЕ НА СТАТИСТИКУ:** - При принятии поставки: +План в статистику - При выявлении факта: корректировка на реальные данные - **ФОРМУЛА**: Факт = Брак + Хороший товар - **ЛОГИКА**: Фактическое количество = сумма всех пересчитанных предметов #### 17.3.5 Связь с маркетплейсами **АРТИКУЛЫ ПРОДУКТА:** - **ОСНОВНОЙ**: Наследует артикул исходного товара - **ДОПОЛНИТЕЛЬНЫЙ**: Артикул карточки маркетплейса (если связан) **СВЯЗЫВАНИЕ С MP:** - **МОМЕНТ**: При создании поставки селлером - **ПОЛЕ**: "Связать с карточкой маркетплейса" (опционально) - **ИСТОЧНИК**: Карточки, полученные через API маркетплейсов - **ПРАВИЛО**: Карточка товара селлера на MP = карточке продукта в системе ### 17.4 Валидация и контроль в складе фулфилмента **ОБЯЗАТЕЛЬНЫЕ ПРОВЕРКИ:** - **ОСТАТКИ**: Не могут быть отрицательными - **ДВИЖЕНИЕ**: Каждое изменение должно быть зафиксировано - **СИНХРОНИЗАЦИЯ**: Основные и дополнительные значения должны соответствовать - **ДОСТУП**: Только авторизованный персонал фулфилмента - **ПЛАН/ФАКТ**: Корректировка статистики при выявлении расхождений --- ## 18. 🎖️ ПРИОРИТЕТЫ РАЗРАБОТКИ ### 18.1 ВЫСОКИЙ ПРИОРИТЕТ: 1. 🔴 Безопасность и контроль доступа 2. 🔴 Целостность данных и валидация 3. 🔴 Корректность статусов поставок 4. 🔴 Уведомления участников процесса 5. 🔴 Правильная типизация предметов 6. 🔴 Связи между товарами и производными типами ### 18.2 СРЕДНИЙ ПРИОРИТЕТ: 1. 🟡 Производительность и оптимизация 2. 🟡 Пользовательский опыт 3. 🟡 Аналитика и отчетность 4. 🟡 Интеграции с внешними системами 5. 🟡 Workflow для брака и продуктов 6. 🟡 Разделение расходников по типам ### 18.3 НИЗКИЙ ПРИОРИТЕТ: 1. 🟢 Дополнительные фильтры 2. 🟢 Косметические улучшения 3. 🟢 Экспериментальные функции 4. 🟢 Расширенная кастомизация --- ## 19. 🏠 ПРАВИЛА КАБИНЕТА СЕЛЛЕРА / РАЗДЕЛ "МОИ ПОСТАВКИ" ### 19.1 Структура и навигация #### 19.1.1 Основная структура **ОБЯЗАТЕЛЬНАЯ СТРУКТУРА РАЗДЕЛА:** - **ПОСТАВКИ НА ФУЛФИЛМЕНТ**: - Товар → Карточки / Поставщики - Расходники селлера - **ПОСТАВКИ НА МАРКЕТПЛЕЙСЫ**: - Wildberries - Ozon **НАВИГАЦИЯ**: Переключение через кнопки между основными разделами #### 19.1.2 Различия подразделов товаров **КАРТОЧКИ**: - **ИСТОЧНИК**: WB API карточки селлера - **ФУНКЦИИ**: Указание рецептуры + выбор логистики - **РЕЗУЛЬТАТ**: WildberriesSupply **ПОСТАВЩИКИ**: - **ИСТОЧНИК**: Каталог товаров поставщиков - **ФУНКЦИИ**: Заказ товаров + рецептура для продукта - **РЕЗУЛЬТАТ**: SupplyOrder ### 19.2 Правила создания поставки расходников селлера #### 19.2.1 Структура страницы **БЛОК 1: ПОСТАВЩИКИ** _(обязательный)_ - **РАСПОЛОЖЕНИЕ**: Верхняя часть экрана - **ИСТОЧНИК**: Только поставщики из раздела "Партнеры" - **НАВИГАЦИЯ**: Горизонтальный скролл при превышении ширины - **ВЫБОР**: Только один поставщик одновременно - **ИНДИКАЦИЯ**: Визуальное выделение выбранной карточки **БЛОК 2: РАСХОДНИКИ** _(зависимый)_ - **УСЛОВИЕ**: Активен только после выбора поставщика - **СОДЕРЖАНИЕ**: Только расходники выбранного поставщика - **ОБЯЗАТЕЛЬНЫЕ ЭЛЕМЕНТЫ**: - Сортировка: цена, название, категория - Фильтры: категория, ценовой диапазон - **КАРТОЧКА РАСХОДНИКА**: - Фото, название, цена, остаток, категория - Количество в комплекте (если применимо) - Поле ввода количества с валидацией - Кнопки +/- для изменения по единице **БЛОК 3: КОРЗИНА** _(справа)_ - **РАСПОЛОЖЕНИЕ**: Правая часть экрана - **СОДЕРЖАНИЕ**: - Счетчик видов расходников - Детализация по каждому расходнику - Общая сумма - **УПРАВЛЕНИЕ**: - Изменение количества (с валидацией остатков) - Удаление позиций - **ОБЯЗАТЕЛЬНЫЕ ПОЛЯ**: - Выбор фулфилмент-центра (из партнеров) - Дата поставки (не прошедшая, по умолчанию - текущая) #### 19.2.2 Валидация и ограничения **КОЛИЧЕСТВО ТОВАРОВ**: - **МИНИМУМ**: 1 единица/комплект - **МАКСИМУМ**: Остаток у поставщика - **ПРОВЕРКА**: В реальном времени при изменении **ДАТА ПОСТАВКИ**: - **ЗАПРЕТ**: Выбор прошедших дат - **ПО УМОЛЧАНИЮ**: Дата создания поставки **ОБЯЗАТЕЛЬНЫЕ ПОЛЯ**: - Выбор поставщика - Минимум один расходник в корзине - Выбор фулфилмент-центра - Дата поставки ### 19.3 Отображение и управление поставками #### 19.3.1 Многоуровневая таблица **ПЕРВЫЙ УРОВЕНЬ** _(основной список)_: - **СОРТИРОВКА**: Номер поставки от большего к меньшему - **ОБЯЗАТЕЛЬНЫЕ КОЛОНКИ**: - Порядковый номер поставки - Количество видов расходников - Стоимость всей поставки - Количество категорий - Статус поставки **ВТОРОЙ УРОВЕНЬ** _(детализация)_: - **АКТИВАЦИЯ**: По клику на строку первого уровня - **СОДЕРЖАНИЕ**: - Название расходника - Количество - Цена - Категория - Поставщик - **ОГРАНИЧЕНИЯ**: Только просмотр, редактирование запрещено #### 19.3.2 Статусы поставок **ЖИЗНЕННЫЙ ЦИКЛ СТАТУСОВ**: 1. **В работе** - создана селлером 2. **Одобрена** - подтверждена поставщиком 3. **Ожидает отгрузки** - логистика назначена 4. **В пути** - товар отгружен 5. **Доставлена/Принято** - получена фулфилментом ### 19.4 Workflow и бизнес-логика #### 19.4.1 Участники процесса **СЕЛЛЕР**: - Создает поставку - Отслеживает статусы - Получает уведомления об изменениях **ПОСТАВЩИК**: - Получает уведомление о заказе - Вносит данные о грузовых местах и объеме - Подтверждает поставку - Отмечает отгрузку **ФУЛФИЛМЕНТ**: - Назначает ответственного - Выбирает логистику - Принимает товар - Указывает место хранения **ЛОГИСТИКА**: - Получает заявку - Подтверждает возможность доставки - Осуществляет транспортировку #### 19.4.2 Уведомления **ОБЯЗАТЕЛЬНЫЕ УВЕДОМЛЕНИЯ**: - Поставщику: о новом заказе расходников - Фулфилменту: о подтвержденной поставке - Логистике: о назначении на заявку - Селлеру: об изменении каждого статуса ### 19.5 Ограничения и запреты **ЗАПРЕЩЕНО**: - Редактирование созданной поставки - Выбор нескольких поставщиков одновременно - Заказ количества сверх остатков - Выбор прошедших дат поставки - Создание поставки без выбора фулфилмент-центра **ОБЯЗАТЕЛЬНО**: - Валидация остатков перед добавлением в корзину - Проверка доступности фулфилмент-центра - Отправка уведомлений на каждом этапе - Логирование всех изменений статусов --- _Эти правила являются обязательными для всех участников разработки и должны соблюдаться на всех этапах жизненного цикла системы._ _Версия: 1.0_ _Дата создания: 2024_ _Статус: АКТИВНЫЕ ПРАВИЛА_