Files
sfera/description.md

803 lines
50 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# СИСТЕМА УПРАВЛЕНИЯ СКЛАДАМИ И ПОСТАВКАМИ - ПОЛНОЕ ОПИСАНИЕ ПРОЕКТА
> ⚠️ **ВАЖНОЕ ПРИМЕЧАНИЕ**: Данные из этого файла могут быть удалены только с разрешения пользователя. Все изменения должны согласовываться.
---
## 📑 ОГЛАВЛЕНИЕ
### 🏗️ **АРХИТЕКТУРА СИСТЕМЫ**
0. [🏠 Кабинет селлера / раздел "Мои поставки"](#0--кабинет-селлера--раздел-мои-поставки)
1. [📦 Кабинет поставщика / раздел склад](#1--кабинет-поставщика--раздел-склад)
2. [🛠️ Создание и управление карточками](#2--создание-и-управление-карточками)
3. [🔧 Управление, хранение, учёт, статус](#3--управление-хранение-учёт-статус)
4. [📊 Статистика и аналитика](#4--статистика-и-аналитика)
5. [🎛️ Интерфейс и управление](#5--интерфейс-и-управление)
### 🌐 **ИНТЕГРАЦИИ И СВЯЗИ**
6. [🌐 Интеграция с системой](#6--интеграция-с-системой)
7. [🚚 Workflow поставок - ДЕТАЛИЗИРОВАННАЯ СИСТЕМА СТАТУСОВ](#7--workflow-поставок---детализированная-система-статусов)
8. [🔐 Система ролей и доступов](#8--система-ролей-и-доступов)
9. [💰 Система тарификации логистики](#9--система-тарификации-логистики)
### 🏢 **МОДУЛИ СИСТЕМЫ**
10. [📈 Дополнительные возможности системы](#10--дополнительные-возможности-системы)
11. [🔄 Интеграция с другими модулями](#11--интеграция-с-другими-модулями)
12. [🏢 СИСТЕМА СКЛАДА ФУЛФИЛМЕНТА](#12--система-склада-фулфилмента)
### 📋 **РАЗВИТИЕ И ПЛАНЫ**
13. [📋 РЕКОМЕНДАЦИИ ПО ДОПОЛНЕНИЮ И УЛУЧШЕНИЮ](#13--рекомендации-по-дополнению-и-улучшению)
---
## 🏷️ РЕЕСТР СУЩНОСТЕЙ СИСТЕМЫ
### 📦 **ОСНОВНЫЕ ПРЕДМЕТЫ**
| Сущность | Название в системе | Описание | Статус |
| ---------- | ---------------------------------- | ----------------------------------------------- | --------------- |
| Товар | `Product` (type: PRODUCT) | Базовый тип товара от поставщика | ✅ Реализовано |
| Брак | `Product` (type: DEFECT) | Производная от товара с дефектами | 🔄 В разработке |
| Расходники | `Product` (type: CONSUMABLE) | Материалы и вспомогательные товары | ✅ Реализовано |
| Продукт | `Product` (type: FINISHED_PRODUCT) | Готовый к продаже товар (производная от товара) | 🔄 В разработке |
### 🏢 **ОРГАНИЗАЦИИ И РОЛИ**
| Сущность | Название в системе | Описание | Статус |
| ---------- | ---------------------------------- | --------------------------------------- | -------------- |
| Поставщик | `Organization` (type: WHOLESALE) | Создает товары и расходники | ✅ Реализовано |
| Селлер | `Organization` (type: SELLER) | Заказывает товары, управляет поставками | ✅ Реализовано |
| Фулфилмент | `Organization` (type: FULFILLMENT) | Принимает товары, создает продукты | ✅ Реализовано |
| Логистика | `Organization` (type: LOGIST) | Управляет доставками | ✅ Реализовано |
### 📋 **ПОСТАВКИ И ЗАКАЗЫ**
| Сущность | Название в системе | Описание | Статус |
| ---------------------------- | ------------------------ | ----------------------------------------------- | --------------- |
| Заказ поставки | `SupplyOrder` | Основная сущность заказа от селлера/фулфилмента | ✅ Реализовано |
| Поставка расходников селлера | `SellerConsumableSupply` | Поставка расходников селлера на фулфилмент | 🔄 В разработке |
| Поставка WB | `WildberriesSupply` | Поставка через карточки Wildberries | ✅ Реализовано |
| Карточка поставки WB | `WildberriesSupplyCard` | Элемент поставки WB | ✅ Реализовано |
| Позиция заказа | `SupplyOrderItem` | Товар в заказе поставки | ✅ Реализовано |
### 🛒 **ТОРГОВЫЕ ОПЕРАЦИИ**
| Сущность | Название в системе | Описание | Статус |
| --------------- | ------------------ | --------------------------------- | -------------- |
| Корзина | `Cart` | Корзина для товаров перед заказом | ✅ Реализовано |
| Позиция корзины | `CartItem` | Товар в корзине | ✅ Реализовано |
| Избранное | `Favorites` | Избранные товары пользователя | ✅ Реализовано |
### 📊 **АНАЛИТИКА И ОТЧЕТЫ**
| Сущность | Название в системе | Описание | Статус |
| --------------------- | ---------------------- | ----------------------------- | -------------- |
| Аналитика фулфилмента | `FulfillmentAnalytics` | Статистика складских операций | ✅ Реализовано |
| Логистические тарифы | `LogisticsTariffs` | Расчет стоимости доставки | ✅ Реализовано |
### 🏷️ **СПРАВОЧНИКИ**
| Сущность | Название в системе | Описание | Статус |
| --------------------- | ------------------ | ---------------------------------------- | -------------- |
| Категория | `Category` | Категория товаров (28 предустановленных) | ✅ Реализовано |
| Поставщик расходников | `SupplySupplier` | Поставщик в разделе расходников | ✅ Реализовано |
### 💬 **КОММУНИКАЦИИ**
| Сущность | Название в системе | Описание | Статус |
| --------- | ------------------ | --------------------------------------- | -------------- |
| Сообщение | `Message` | Уведомления через встроенный мессенджер | ✅ Реализовано |
### 🔄 **ПРОЦЕССЫ**
| Сущность | Название в системе | Описание | Статус |
| ----------------- | ------------------------ | ------------------------------------- | --------------- |
| Создание продукта | `ProductCreationProcess` | Workflow превращения товара в продукт | 🔄 В разработке |
| Движение товаров | `InventoryMovement` | Учет прихода/расхода товаров | 🔄 В разработке |
---
## ЧАСТЬ I: АРХИТЕКТУРА СИСТЕМЫ
## 0. 🏠 Кабинет селлера / раздел "Мои поставки"
### 0.1 Структура раздела "Мои поставки"
**Раздел делится на два основных направления:**
#### **🏢 ПОСТАВКИ НА ФУЛФИЛМЕНТ**
- **Товар** - поставка товаров для создания продуктов
- **Карточки** - поставка через WB API с рецептурой
- **Поставщики** - заказ товаров у поставщиков с рецептурой
- **Расходники селлера** - поставка материалов для товаров селлера
#### **🛒 ПОСТАВКИ НА МАРКЕТПЛЕЙСЫ** _(планируется)_
- **Wildberries** - прямые поставки на WB
- **Ozon** - прямые поставки на Ozon
### 0.2 Создание поставки расходников селлера
#### **📄 Структура страницы создания поставки:**
**БЛОК 1: ПОСТАВЩИКИ** _(верхняя часть экрана)_
- **Отображение**: Карточки поставщиков из раздела "Партнеры"
- **Навигация**: Горизонтальный скролл (слева-направо) при превышении ширины экрана
- **Выбор**: Клик выделяет карточку поставщика
- **Результат**: Загружаются расходники выбранного поставщика в блок 2
**БЛОК 2: РАСХОДНИКИ** _(центральная часть)_
- **Содержание**: Расходники выбранного поставщика
- **Сортировка**: По цене, названию, категории
- **Фильтры**: По категории, ценовому диапазону
- **Карточка расходника**:
- Фото, название, цена, остаток, категория
- Количество в комплекте (если есть комплектность)
- Поле ввода количества (единицы или комплекты)
- Кнопки +/- для изменения количества
- **Действие**: Клик добавляет расходник в корзину
**БЛОК 3: КОРЗИНА** _(правая часть)_
- **Содержание корзины**:
- Количество видов расходников
- По каждому расходнику: название, количество, цена за единицу, сумма
- Общая сумма всех расходников
- **Управление**: Изменение количества, удаление позиций
- **Валидация**: Проверка остатков у поставщика
- **Настройки поставки**:
- Выбор фулфилмент-центра (dropdown из партнеров)
- Дата поставки (по умолчанию - дата создания, нельзя выбрать прошедшую)
- **Кнопка**: "Создать поставку"
#### **📊 Отображение созданных поставок**
**МНОГОУРОВНЕВАЯ ТАБЛИЦА:**
**Первый уровень** _(основной список)_:
- Порядковый номер поставки (от большего к меньшему)
- Количество видов расходников селлера
- Стоимость всей поставки
- Количество категорий
- Статус поставки
**Второй уровень** _(раскрывается по клику)_:
- Название расходника селлера
- Количество
- Цена
- Категория
- Поставщик
- **Режим**: Только просмотр (редактирование недоступно)
### 0.3 Workflow поставки расходников селлера
#### **🔄 Детальный процесс:**
**ЭТАП 1: СОЗДАНИЕ СЕЛЛЕРОМ**
1. Селлер создает поставку в своем кабинете
2. Поставка появляется в списке со статусом **"В работе"**
**ЭТАП 2: ОБРАБОТКА ПОСТАВЩИКОМ** 3. Поставщик получает уведомление о заказе 4. Поставщик вносит данные о количестве грузовых мест и объеме 5. Поставщик подтверждает поставку 6. Статус у селлера меняется на **"Одобрена"**
**ЭТАП 3: ПЕРЕДАЧА В ФУЛФИЛМЕНТ** 7. Данные о поставке появляются в кабинете фулфилмента:
- Раздел: "Входящие поставки" / "Расходники селлеров"
8. Менеджер фулфилмента:
- Назначает ответственного (из списка сотрудников)
- Выбирает тип логистики (из списка логистов в партнерах)
- Нажимает кнопку "В работу"
**ЭТАП 4: ЛОГИСТИЧЕСКОЕ ПОДТВЕРЖДЕНИЕ** 9. В кабинете логистики появляется уведомление о поставке (раздел "Заявки") 10. Логист нажимает кнопку "Одобрить" 11. Статус у всех участников меняется на **"Ожидает отгрузки"**
**ЭТАП 5: ОТГРУЗКА** 12. Логист приезжает к поставщику за расходниками 13. Поставщик отгружает товар логисту 14. Поставщик нажимает кнопку "Отправлено" 15. Статус у всех участников меняется на **"В пути"**
**ЭТАП 6: ДОСТАВКА И ПРИЕМКА** 16. Расходники доставляются на склад фулфилмента 17. Менеджер фулфилмента: - Вносит данные о месте хранения расходников - Нажимает кнопку "Принято" 18. **Финальные статусы**: - У селлера, поставщика, логиста: **"Доставлена"** - У фулфилмента: **"Принято"**
#### **📋 Статусы поставки расходников селлера:**
1. **В работе** - создана селлером, ожидает обработки поставщиком
2. **Одобрена** - подтверждена поставщиком, передана в фулфилмент
3. **Ожидает отгрузки** - логистика подтверждена, ожидается забор
4. **В пути** - отгружена поставщиком, доставляется на фулфилмент
5. **Доставлена/Принято** - получена и оприходована на складе фулфилмента
---
## 1. 📦 Кабинет поставщика / раздел склад
### 1.1 Основные возможности
**СТРУКТУРА СИСТЕМЫ ПО КАБИНЕТАМ:**
**🏢 КАБИНЕТ ПОСТАВЩИКА** - создает и управляет:
1. **ТОВАР** - базовый тип товара от поставщика
2. **РАСХОДНИКИ** - материалы и вспомогательные товары от поставщика
**🏭 КАБИНЕТ ФУЛФИЛМЕНТА** - принимает, обрабатывает и управляет всеми типами:
1. **ТОВАР** - базовые товары от поставщиков (принятые на склад)
2. **БРАК** - производная от товара (товар с дефектами)
3. **ПРОДУКТ** - производная от товара (готовый к продаже товар)
4. **РАСХОДНИКИ ФУЛФИЛМЕНТА** - операционные материалы фулфилмента
5. **РАСХОДНИКИ СЕЛЛЕРОВ** - материалы для товаров селлеров
**ВАЖНО**: Товар ≠ Продукт (это разные сущности в системе)
**ЛОГИКА КЛАССИФИКАЦИИ РАСХОДНИКОВ:**
- Поставщик создает карточки типа **"РАСХОДНИКИ"** (без уточнения назначения)
- При заказе, в зависимости от заказчика, они классифицируются как:
- **"Расходники фулфилмента"** - если заказывает фулфилмент-центр
- **"Расходники селлеров"** - если заказывает селлер
Разделение всех типов предметов на категории. Каждый тип имеет свою логику обработки и workflow.
## 2. 🛠️ Создание и управление карточками
### 2.1 Базовые параметры карточки
Карточка создаётся с помощью заполнения формы, параметры для заполнения:
- **Фото** - система загрузки и управления изображениями товаров (множественная загрузка, выбор главного изображения, предпросмотр)
- **Название**
- **Автоматическая генерация системой уникального номера** для конкретного предмета (артикул СФ)
- **Возможность написать описание**
- **Количество предметов** в единицах
- **Количество комплектов** если продаётся комплектом (количество предметов в комплекте, размеры или иное)
- **Категория** (28 предустановленных универсальных категорий + специализированные категории расходников)
- **Бренд**
- **Цвет**
- **Размер / объём**
- **Вес**
- **Габариты**
- **Материал**
- **Цена за единицу**
- **Цена за комплект**
- **Заказано**
- **В пути**
- **Остаток**
- **Продано**
### 2.2 Дополнительные параметры (реализованы в коде)
- **Статус активности** (`isActive`) - возможность деактивировать предметы
- Неактивные предметы не отображаются в маркете
- Неактивные предметы не доступны для заказа
- **Тип предмета** - строгое разделение на 4 основных типа
- **Связь с родительским предметом** - для производных типов (брак, продукт)
- **Подтип расходников** - фулфилмента или селлеров
- **Дата создания и обновления** - автоматическое отслеживание
- **Уникальность артикула** - в рамках организации с префиксом типа
## 3. 🔧 Управление, хранение, учёт, статус
### 3.1 Основные функции
- **Возможность редактирования и удаления карточек**
- **Изменение количества в карточке** - данные актуализируются во всей системе
- **При заказе карточки** - отображаются данные о количестве заказанного, в пути, остаток, и продано
### 3.2 Система проверок и валидации (реализовано в коде)
- **Проверка остатков** при добавлении в корзину
- **Валидация данных** при создании/редактировании карточек
- **Проверка уникальности артикула** в рамках организации
- **Контроль доступа** - нельзя добавлять собственные товары в корзину
### 3.3 Система корзины и избранного (реализовано в коде)
- **Корзина товаров** - добавление товаров с проверкой остатков
- **Избранные товары** - система избранного для удобства
- **Управление количеством** в корзине
- **Автоматическая проверка доступности** товаров
## 4. 📊 Статистика и аналитика
### 4.1 Блок статистики в верхней части раздела склад
Должен состоять из блоков и отображать итоговые сведения о параметрах в данном разделе с разделением по типам предметов:
**Общая статистика:**
- **Общие остатки всех предметов**
- **Количество заказанных позиций**
- **Предметы в пути**
- **Проданные предметы**
- **Уведомления о низких остатках**
**Разделение по типам и кабинетам:**
**В КАБИНЕТЕ ПОСТАВЩИКА:**
- **ТОВАРЫ**: Базовые товары поставщика
- **РАСХОДНИКИ**: Материалы и вспомогательные товары от поставщика
- Классифицируются при заказе в зависимости от заказчика
- Общая статистика по всем расходникам
**В КАБИНЕТЕ ФУЛФИЛМЕНТА:**
- **ТОВАРЫ**: Базовые товары от поставщиков (принятые на склад)
- **ПРОДУКТЫ**: Готовая продукция (созданная из товаров)
- **БРАК**: Статистика потерь и списаний
- **РАСХОДНИКИ ФУЛФИЛМЕНТА**: Операционные материалы фулфилмента
- **РАСХОДНИКИ СЕЛЛЕРОВ**: Материалы для товаров селлеров
### 4.2 Развитая система аналитики (реализовано в коде)
- **Статистика изменений за период** (сутки, неделя, месяц)
- **Аналитика по категориям товаров**
- **Метрики оборачиваемости**
- **Отчеты по поставщикам**
- **Анализ популярных товаров**
## 5. 🎛️ Интерфейс и управление
### 5.1 Режимы отображения
- **Возможность переключения режимов** расположения информации (строчная и карточная)
- **5 карточек в ряд** в карточном режиме
- **Возможность фильтрации и сортировки** данных
- **Поиск** по названию, артикулу, категории, бренду
### 5.2 Система уведомлений
- **Подсвечивать когда остатки становятся меньше определенного уровня**
- **Автоматические уведомления** о новых заказах в мессенджер (реализовано в коде)
- **Уведомления об изменении статусов** поставок
---
## ЧАСТЬ II: ИНТЕГРАЦИИ И СВЯЗИ
## 6. 🌐 Интеграция с системой
### 6.1 Глобальная интеграция
- **Учет и хранение** - данные карточки товаров и расходников отображаются в глобальной сущности «Маркет» во вкладках «Товар» и «Расходники» соответственно
### 6.2 Интеграция с маркетплейсами (реализовано в коде)
- **Wildberries API** - загрузка карточек товаров из WB
- **Синхронизация данных** с маркетплейсами
- **Создание поставок** на основе WB карточек
- **Управление API ключами** с проверкой активности
### 6.3 Интеграция с модулем "Услуги"
- **Расходники фулфилмента в услугах**:
- Селлеры могут использовать расходники фулфилмента в разделе "Услуги / Расходники"
- Для создания продукта из базового товара
- Расходники списываются с остатков фулфилмента
- Стоимость включается в стоимость услуги фулфилмента
- **Процесс создания продукта через услуги**:
1. Селлер выбирает услугу "Создание продукта"
2. Указывает базовый товар для обработки
3. Выбирает необходимые расходники фулфилмента
4. Фулфилмент обрабатывает заказ
5. Создается готовый продукт с использованием расходников
## 7. 🚚 Workflow поставок - ДЕТАЛИЗИРОВАННАЯ СИСТЕМА СТАТУСОВ
### 7.1 Сценарий поставки
Один из сценариев: селлер в своём кабинете, в разделе «Маркет» заказывает товар и расходники у поставщика, для селлера это поставка, для поставщика это заявка на поставку.
### 7.2 Детализированная система статусов (8 статусов - реализовано в коде)
#### 7.2.1 Статусы SupplyOrder (Заказ поставки):
1. **PENDING** - Ожидает подтверждения поставщиком
2. **SUPPLIER_APPROVED** - Одобрено поставщиком
3. **CONFIRMED** - Подтвержден (готов к обработке)
4. **LOGISTICS_CONFIRMED** - Подтверждено логистикой
5. **SHIPPED** - Отгружено поставщиком
6. **IN_TRANSIT** - В пути (логистика доставляет)
7. **DELIVERED** - Доставлен на фулфилмент
8. **CANCELLED** - Отменен
#### 7.2.2 Статусы Supply (Расходники):
1. **planned** - Запланировано (ожидает одобрения поставщиком)
2. **confirmed** - Подтверждено (ожидает отгрузки после одобрения логистикой)
3. **in-transit** - В пути (товар отгружен логистической компании)
4. **in-stock** - На складе (товар принят на фулфилменте)
### 7.3 Пошаговый процесс с уведомлениями
#### 7.3.1 Этап 1: Создание заказа
1. **Селлер заказывает** товар/расходники у поставщика
2. **Система создает** SupplyOrder со статусом `PENDING`
3. **Автоматическое уведомление** поставщику в мессенджер о новом заказе
#### 7.3.2 Этап 2: Обработка поставщиком
4. **Поставщику приходит оповещение** в разделе заявки
5. **Поставщик нажимает кнопку «Одобрить»**
6. **Статус меняется** на `SUPPLIER_APPROVED`
7. **У селлера статус** меняется на «Одобрено поставщиком»
#### 7.3.3 Этап 3: Передача в фулфилмент
8. **Поставка отображается** в кабинете фулфилмент в разделе «Поставки» / подраздел «поставки на фулфилмент» / новые
9. **Фулфилмент выбирает** ответственного за поставку и тип логистики
10. **Фулфилмент нажимает** кнопку «Приёмка»
11. **Статус меняется** на `CONFIRMED`
#### 7.3.4 Этап 4: Логистическое подтверждение
12. **Логистика подтверждает** возможность доставки
13. **Статус меняется** на `LOGISTICS_CONFIRMED`
14. **У селлера статус** «Ожидает отгрузки»
15. **У поставщика статус** «Ожидает отгрузки»
#### 7.3.5 Этап 5: Отгрузка
16. **Логистика приезжает** за товаром
17. **Поставщик отгружает** товар
18. **Поставщик нажимает** кнопку «Отгружено»
19. **Статус меняется** на `SHIPPED`, затем `IN_TRANSIT`
20. **У селлера статус** «В пути»
21. **У фулфилмента статус** «В пути»
#### 7.3.6 Этап 6: Доставка и приемка
22. **Логистика доставляет** товар на фулфилмент-центр
23. **В кабинете логистики** нажимают кнопку «Доставлено»
24. **В кабинете фулфилмента** вводят данные места хранения
25. **Фулфилмент нажимает** кнопку «Принято»
26. **Статус меняется** на `DELIVERED`
27. **Поставка перемещается** в «Поставки» / подраздел «поставки на фулфилмент» / принято со статусом «принято»
## 8. 🔐 Система ролей и доступов (реализовано в коде)
### 8.1 Контроль доступа к заказам
- **Создатель заказа** - полный доступ к своим заказам
- **Поставщик** - доступ к заказам, где он является поставщиком
- **Фулфилмент-центр** - доступ к заказам, направленным в его центр
- **Логистическая компания** - доступ к заказам для доставки
### 8.2 Разграничение функций по ролям
- **WHOLESALE** (Поставщик) - создание товаров, управление складом, обработка заказов
- **SELLER** (Селлер) - заказ товаров, управление поставками
- **FULFILLMENT** (Фулфилмент) - приемка товаров, управление складом
- **LOGIST** (Логистика) - управление доставками
## 9. 💰 Система тарификации логистики (реализовано в коде)
### 9.1 Расчет стоимости доставки
- **Тариф до 1м³** - базовая стоимость для малых грузов
- **Тариф свыше 1м³** - стоимость для крупных грузов
- **Маршруты доставки** - от точки отправления до точки назначения
- **Описание услуг** - дополнительные условия доставки
### 9.2 Параметры логистики
```typescript
model Logistics {
fromLocation: String // Откуда
toLocation: String // Куда
priceUnder1m3: Float // Цена до 1м³
priceOver1m3: Float // Цена свыше 1м³
description: String? // Описание услуг
}
```
---
## ЧАСТЬ III: МОДУЛИ СИСТЕМЫ
## 10. 📈 Дополнительные возможности системы
### 10.1 Система категорий (28 предустановленных)
- Одежда и обувь
- Косметика и парфюмерия
- Дом и сад
- Детские товары
- Спорт и отдых
- Электроника
- Книги
- Здоровье
- Автотовары
- Строительство и ремонт
- Продукты питания
- Зоотовары
- Дача, сад и огород
- Канцелярские товары
- Хобби и творчество
- Украшения и аксессуары
- Сумки и чемоданы
- Техника для дома
- Музыкальные инструменты
- Игры и игрушки
- И другие...
### 10.1.1 Специализированные категории расходников
**В дополнение к универсальным категориям, для расходников используются:**
- **Упаковка и защита** - коробки, пакеты, пленка, защитные материалы
- **Маркировка и идентификация** - этикетки, бирки, стикеры, штампы
- **Крепеж и соединение** - скотч, клей, стяжки, веревки
- **Документооборот и вкладыши** - накладные, инструкции, буклеты
- **Гигиена и безопасность** - перчатки, маски, антисептики
- **Инструменты и приспособления** - ножи, дозаторы, весы
- **Брендинг и дизайн** - фирменная упаковка с логотипом
- **Специализированные материалы** - антистатические, влагопоглотители
- **Торговое оборудование** - манекены, ценникодержатели
- **Логистика и складирование** - паллеты, контейнеры
- **Технические расходники** - картриджи, батарейки
- **Сезонные и праздничные** - новогодняя упаковка, подарочные материалы
### 10.2 Система уведомлений через мессенджер
- **Автоматические уведомления** о новых заказах
- **Уведомления об изменении статусов**
- **Персонализированные сообщения** с деталями заказа
- **Интеграция с общим мессенджером** системы
### 10.3 Предложения по улучшению
- **Автогенерация артикулов СФ с префиксами типов** - требует реализации
- **Система комплектов товаров** - требует реализации
-**Workflow для создания брака и продуктов** - детально описан
-**Разделение расходников на подтипы** - реализовано
-**Связи между товарами и производными типами** - реализовано
- **Умные уведомления о низких остатках** - требует улучшения
- **Расширенные фильтры по типам предметов** - требует улучшения
- **Система прогнозирования спроса** - новая функция
### 10.4 Сложные сценарии (требуют дальнейшей проработки)
**ЗАМЕТКА**: Данные сценарии выявлены, но пока не учитываются в текущей системе. Требуют отдельного обсуждения:
- **Из разных товаров → один продукт**:
- Пример: Товар "Футболка" + Товар "Джинсы" = Продукт "Комплект одежды"
- Требует разработки системы "составных продуктов"
- **Из одного товара → несколько продуктов**:
- Пример: Товар "Ткань 10 метров" → Продукт "Платье" (3м) + Продукт "Юбка" (2м) + остаток 5м
- Требует системы "деления товаров" и учета остатков
## 11. 🔄 Интеграция с другими модулями
### 11.1 Связь с модулем "Маркет"
- Товары поставщиков отображаются в глобальном маркете
- Фильтрация по типам: товары/расходники
- Система поиска и категоризации
### 11.2 Связь с модулем "Поставки"
- Автоматическое создание поставок при заказе
- Отслеживание статусов в реальном времени
- Синхронизация данных между модулями
### 11.3 Связь с модулем "Аналитика"
- Передача данных для общей отчетности
- Метрики эффективности поставщиков
- Анализ популярности товаров
---
## ЧАСТЬ IV: РАЗВИТИЕ И ПЛАНЫ
## 12. 🏢 СИСТЕМА СКЛАДА ФУЛФИЛМЕНТА
### 12.1 Структура раздела склад фулфилмента
#### 12.1.1 Блок статистика склада
**Модули в обязательной последовательности:**
1. **📦 ПРОДУКТ** - готовые к продаже товары
- Товары, прошедшие обработку и готовые к отгрузке
- Показывает текущее количество готовой продукции
2. **🛒 ТОВАР** - базовые товары от поставщиков
- Сырье и материалы для производства продуктов
- Товары в первоначальном виде от поставщиков
3. **❌ БРАК** - товары с дефектами
- Товары, не прошедшие контроль качества
- Списанные и подлежащие утилизации предметы
4. **↩️ ВОЗВРАТЫ С ПВЗ** - возвращенные товары
- Товары, возвращенные покупателями
- Требуют проверки и переклассификации
5. **🎯 РАСХОДНИКИ СЕЛЛЕРОВ** - материалы для селлеров
- Упаковочные материалы для товаров селлеров
- Заказываются селлерами напрямую
6. **⚙️ РАСХОДНИКИ ФУЛФИЛМЕНТ** - операционные материалы
- **КЛИКАБЕЛЬНЫЙ МОДУЛЬ** - содержит полноценный раздел учёта
- Материалы для внутренних операций фулфилмента
- Используются для услуг селлерам
**ВАЖНО**: В модуле ТОВАР отображаются два счетчика:
- **Товары "на складе"** - готовы к обработке
- **Товары "в обработке"** - находятся в процессе создания продукта
#### 12.1.2 Система учёта движения товаров
**Основные принципы учёта:**
- **ПРИХОД ТОВАРОВ**: Через принятые поставки (статус "в пути" → "на складе")
- **РАСХОД ТОВАРОВ**: При отгрузке, списании, использовании для услуг
- **ДВОЙНОЙ УЧЁТ**: Основные значения + дополнительные значения
**Дополнительные значения (показатели движения):**
- **ПРИБЫЛО** - количество предметов, поступивших на склад за период
- **УБЫЛО** - количество предметов, списанных со склада за период
- **ВЛИЯНИЕ** - от этих значений зависят основные значения
**Основные значения (текущие остатки):**
- **ФОРМУЛА**: Основные значения = Предыдущие остатки + Прибыло - Убыло
- **ОТОБРАЖЕНИЕ**: Показываются в каждом модуле статистики
- **АКТУАЛЬНОСТЬ**: Обновляются в реальном времени
#### 12.1.3 Детальный раздел "Расходники фулфилмента"
**Особенности:**
- **ИНТЕРАКТИВНОСТЬ**: Кликабельный модуль в статистике
- **ПЕРЕХОД**: К полноценному разделу управления расходниками фулфилмента
- **ФУНКЦИОНАЛЬНОСТЬ**:
- Создание и редактирование карточек расходников фулфилмента
- Управление остатками и заказами расходников фулфилмента
- Отслеживание использования расходников фулфилмента в услугах
- Аналитика расхода расходников фулфилмента по операциям
#### 12.1.4 Блок детализация по Магазинам
**Назначение**: Распределение товаров по торговым точкам
- **ОСТАТКИ ПО МАГАЗИНАМ**: Отображение количества товаров в каждом магазине
- **УПРАВЛЕНИЕ РАСПРЕДЕЛЕНИЕМ**: Перемещение товаров между точками
- **КОНТРОЛЬ ДВИЖЕНИЯ**: Отслеживание перемещений между складами и магазинами
### 12.2 Workflow движения товаров в фулфилменте
#### 12.2.1 Поступление товаров на склад
**Источники поступления:**
1. **ПОСТАВКИ ОТ ПОСТАВЩИКОВ** - основной канал поступления
2. **ВОЗВРАТЫ С ПВЗ** - товары от покупателей
3. **ВНУТРЕННИЕ ПЕРЕМЕЩЕНИЯ** - между складами фулфилмента
**Процесс приёмки:**
1. Поставка переходит в статус "принято"
2. Товары меняют статус: "в пути" → "на складе"
3. Обновляются основные значения (остатки)
4. Фиксируется в дополнительных значениях как "прибыло"
5. Обновляется статистика по модулям
#### 12.2.2 Расход товаров со склада
**Причины расхода:**
- **ОТГРУЗКА СЕЛЛЕРАМ** - выполнение заказов
- **СПИСАНИЕ** - брак, утрата, утилизация
- **ИСПОЛЬЗОВАНИЕ В УСЛУГАХ** - расходники для создания продуктов
- **ПРЕВРАЩЕНИЕ В ПРОДУКТЫ** - товары становятся продуктами
- **ВОЗВРАТ ПОСТАВЩИКУ** - некачественные товары
**Процесс списания:**
1. Указание причины расхода
2. Обновление основных значений (уменьшение остатков)
3. Фиксация в дополнительных значениях как "убыло"
4. Обновление статистики модулей
#### 12.2.3 Процесс "Создания продукта"
**Полный цикл превращения товара в продукт:**
**ЭТАП 1: ПОСТУПЛЕНИЕ И СОРТИРОВКА**
1. Товар поступает на склад фулфилмента (статус "на складе")
2. Перебор и сортировка товара
3. Выявление и отсеивание брака
**ЭТАП 2: ПОДГОТОВКА К РАБОТЕ** 4. Поставка попадает в раздел "Создание продукта" / Новые 5. Менеджер фулфилмента:
- Устанавливает дедлайн выполнения
- Назначает ответственного исполнителя
- Указывает место хранения готовых продуктов (опционально)
- Нажимает "В работе"
**ЭТАП 3: ОБРАБОТКА (СОЗДАНИЕ ПРОДУКТА)** 6. Поставка переходит в "Создание продукта" / В работе 7. Товары получают статус "в работе" 8. Исполнитель работает по "рецептуре" селлера:
- Применяет услуги фулфилмента (например, "погладить")
- Использует расходники селлера (например, фирменный пакет)
- Использует расходники фулфилмента (например, короб + маркировка)
**ЭТАП 4: УЧЕТ ПЛАН/ФАКТ** 9. В процессе работы фиксируется:
- **ПЛАН**: Количество из поставки селлера
- **ФАКТ**: Реальное количество = Брак + Хороший товар
- **ДЕТАЛИЗАЦИЯ**: По каждому размеру/объему
10. Статистика корректируется на фактические данные
**ЭТАП 5: ЗАВЕРШЕНИЕ** 11. Исполнитель нажимает "Выполнено" 12. Товары становятся продуктами со статусом "готов к отправке" 13. Поставка переходит в "Создание продукта" / Выполнено
**РЕЗУЛЬТАТ**: ПРОДУКТ = Товар + Услуга + Расходники
**РЕЦЕПТУРА ПРОДУКТА (задается селлером):**
- **БАЗОВЫЙ ТОВАР**: Исходный материал
- **УСЛУГА ФУЛФИЛМЕНТА**: Из каталога услуг фулфилмента
- **РАСХОДНИК СЕЛЛЕРА**: Материалы селлера (опционально)
- **РАСХОДНИК ФУЛФИЛМЕНТА**: Материалы фулфилмента (опционально)
- **СВЯЗЬ С MP**: Связь с карточкой маркетплейса (опционально)
### 12.3 Интеграция с системой поставщиков
**Связь систем складов:**
- **ПОСТАВЩИК → ФУЛФИЛМЕНТ**: Передача товаров через поставки
- **СИНХРОНИЗАЦИЯ ДАННЫХ**: Остатки, статусы, движение товаров
- **УВЕДОМЛЕНИЯ**: О принятии поставок и изменении статусов
## 13. 📋 РЕКОМЕНДАЦИИ ПО ДОПОЛНЕНИЮ И УЛУЧШЕНИЮ
### 13.1 Дополнить в описании
-**Система активации/деактивации товаров** - добавлено
-**Функционал корзины и избранного** - добавлено
-**Интеграция с маркетплейсами (WB)** - добавлено
-**Автоматические уведомления** - добавлено
-**Система тарификации логистики** - добавлено
-**Управление изображениями товаров** - добавлено
-**Проверки остатков и валидация** - добавлено
### 13.2 Расширить workflow
-**Промежуточные статусы** (`SUPPLIER_APPROVED`, `LOGISTICS_CONFIRMED`, `SHIPPED`) - добавлено
-**Роли и права доступа** - добавлено
-**Автоматические уведомления на каждом этапе** - добавлено
### 13.3 Дополнить систему статистики
-**Метрики изменений за период** - добавлено
-**Аналитика по категориям** - добавлено
-**Отчеты по поставщикам** - добавлено
---
окумент создан на основе анализа существующего кода и требований пользователя_
_Версия: 1.0_
ата: 2024_