Обновлены правила типизации предметов в документации, добавлены новые категории и уточнены их функции. Улучшено разделение по типам для более четкого понимания системы. Это изменение способствует лучшему восприятию и использованию системы.

This commit is contained in:
Veronika Smirnova
2025-08-01 10:07:59 +03:00
parent 6b8d7029c6
commit 922c956518

489
rules1.md Normal file
View File

@ -0,0 +1,489 @@
# ПРАВИЛА СИСТЕМЫ УПРАВЛЕНИЯ СКЛАДАМИ И ПОСТАВКАМИ
> ⚠️ **ВАЖНОЕ ПРИМЕЧАНИЕ**: Данные из этого файла могут быть удалены только с разрешения пользователя. Все изменения должны согласовываться.
---
## 📑 ОГЛАВЛЕНИЕ
### 🎯 **ОБЩИЕ ПРАВИЛА**
1. [Основные принципы системы](#1-основные-принципы-системы)
2. [Типизация предметов](#2-типизация-предметов)
3. [Workflow поставок](#3-workflow-поставок)
4. [Система ролей и доступов](#4-система-ролей-и-доступов)
### 🏢 **ПРАВИЛА ПО КАБИНЕТАМ**
5. [Кабинет селлера](#5-кабинет-селлера)
6. [Кабинет поставщика](#6-кабинет-поставщика)
7. [Кабинет фулфилмента](#7-кабинет-фулфилмента)
8. [Интеграции и связи между кабинетами](#8-интеграции-и-связи-между-кабинетами)
---
## 1. 🎯 ОСНОВНЫЕ ПРИНЦИПЫ СИСТЕМЫ
### 1.1 Архитектура системы
**СТРУКТУРА СИСТЕМЫ ПО КАБИНЕТАМ:**
**🏢 КАБИНЕТ ПОСТАВЩИКА** - создает и управляет:
- **ТОВАР** - базовые товары от поставщика
- **РАСХОДНИКИ** - материалы и вспомогательные товары от поставщика
**🏭 КАБИНЕТ ФУЛФИЛМЕНТА** - принимает, обрабатывает и управляет всеми типами:
- **ТОВАР** - базовые товары от поставщиков (принятые на склад)
- **БРАК** - производная от товара (товар с дефектами)
- **ПРОДУКТ** - производная от товара (готовый к продаже товар)
- **РАСХОДНИКИ ФУЛФИЛМЕНТА** - операционные материалы фулфилмента
- **РАСХОДНИКИ СЕЛЛЕРОВ** - материалы для товаров селлеров
**🛍️ КАБИНЕТ СЕЛЛЕРА** - заказывает и управляет поставками:
- Создает заказы товаров и расходников
- Управляет поставками на фулфилмент и маркетплейсы
- Отслеживает статусы поставок
### 1.2 Основные сущности системы
| Сущность | Название в системе | Описание | Статус |
| ---------- | ---------------------------------- | ----------------------------------------------- | --------------- |
| Товар | `Product` (type: PRODUCT) | Базовый тип товара от поставщика | ✅ Реализовано |
| Брак | `Product` (type: DEFECT) | Производная от товара с дефектами | 🔄 В разработке |
| Расходники | `Product` (type: CONSUMABLE) | Материалы и вспомогательные товары | ✅ Реализовано |
| Продукт | `Product` (type: FINISHED_PRODUCT) | Готовый к продаже товар (производная от товара) | 🔄 В разработке |
---
## 2. 📦 ТИПИЗАЦИЯ ПРЕДМЕТОВ
### 2.1 Обязательные типы
**ВАЖНО**: Товар ≠ Продукт (это разные сущности в системе)
**4 основных типа предметов в системе:**
1. **ТОВАР** - базовый тип товара от поставщика
2. **БРАК** - производная от товара (товар с дефектами)
3. **РАСХОДНИКИ** - материалы и вспомогательные товары от поставщика
4. **ПРОДУКТ** - производная от товара (готовый к продаже товар)
### 2.2 Классификация расходников
- Поставщик создает карточки типа **"РАСХОДНИКИ"** (без уточнения назначения)
- При заказе, в зависимости от заказчика, они классифицируются как:
- **"Расходники фулфилмента"** - если заказывает фулфилмент-центр
- **"Расходники селлеров"** - если заказывает селлер
### 2.3 Обязательные поля карточки
**Базовые параметры:**
- **Фото** - система загрузки и управления изображениями товаров
- **Название**
- **Автоматическая генерация системой уникального номера** (артикул СФ)
- **Описание**
- **Количество предметов** в единицах
- **Количество комплектов** если продается комплектом
- **Категория** (28 предустановленных категорий)
- **Бренд**, **Цвет**, **Размер/объем**, **Вес**, **Габариты**, **Материал**
- **Цена за единицу** и **Цена за комплект**
- **Заказано**, **В пути**, **Остаток**, **Продано**
**Дополнительные параметры:**
- **Статус активности** (`isActive`) - возможность деактивировать предметы
- **Тип предмета** - строгое разделение на 4 основных типа
- **Связь с родительским предметом** - для производных типов (брак, продукт)
---
## 3. 🚚 WORKFLOW ПОСТАВОК
### 3.1 Детализированная система статусов
**Статусы SupplyOrder (Заказ поставки):**
1. **PENDING** - Ожидает подтверждения поставщиком
2. **SUPPLIER_APPROVED** - Одобрено поставщиком
3. **CONFIRMED** - Подтвержден (готов к обработке)
4. **LOGISTICS_CONFIRMED** - Подтверждено логистикой
5. **SHIPPED** - Отгружено поставщиком
6. **IN_TRANSIT** - В пути (логистика доставляет)
7. **DELIVERED** - Доставлен на фулфилмент
8. **CANCELLED** - Отменен
### 3.2 Пошаговый процесс поставки
**ЭТАП 1: Создание заказа**
1. Селлер заказывает товар/расходники у поставщика
2. Система создает SupplyOrder со статусом `PENDING`
3. Автоматическое уведомление поставщику
**ЭТАП 2: Обработка поставщиком** 4. Поставщик получает оповещение 5. Поставщик нажимает "Одобрить" 6. Статус меняется на `SUPPLIER_APPROVED`
**ЭТАП 3: Передача в фулфилмент** 7. Поставка отображается в кабинете фулфилмента 8. Фулфилмент выбирает ответственного и логистику 9. Статус меняется на `CONFIRMED`
**ЭТАП 4: Логистическое подтверждение** 10. Логистика подтверждает доставку 11. Статус меняется на `LOGISTICS_CONFIRMED`
**ЭТАП 5: Отгрузка** 12. Поставщик отгружает товар 13. Статус меняется на `SHIPPED`, затем `IN_TRANSIT`
**ЭТАП 6: Доставка и приемка** 14. Логистика доставляет на фулфилмент 15. Фулфилмент принимает товар 16. Статус меняется на `DELIVERED`
### 3.3 Система уведомлений
**Обязательные уведомления:**
- Поставщику: о новом заказе
- Фулфилменту: о подтвержденной поставке
- Логистике: о назначении на заявку
- Селлеру: об изменении каждого статуса
---
## 4. 🔐 СИСТЕМА РОЛЕЙ И ДОСТУПОВ
### 4.1 Типы организаций
| Тип организации | Роль в системе | Основные функции |
| ---------------------------- | ----------------- | ------------------------------------------------------- |
| **WHOLESALE** (Поставщик) | Создатель товаров | Создание товаров, управление складом, обработка заказов |
| **SELLER** (Селлер) | Заказчик | Заказ товаров, управление поставками |
| **FULFILLMENT** (Фулфилмент) | Обработчик | Приемка товаров, управление складом, создание продуктов |
| **LOGIST** (Логистика) | Доставщик | Управление доставками |
### 4.2 Контроль доступа к заказам
- **Создатель заказа** - полный доступ к своим заказам
- **Поставщик** - доступ к заказам, где он является поставщиком
- **Фулфилмент-центр** - доступ к заказам, направленным в его центр
- **Логистическая компания** - доступ к заказам для доставки
---
## 5. 🛍️ КАБИНЕТ СЕЛЛЕРА
### 5.1 Структура раздела "Мои поставки"
**🏢 ПОСТАВКИ НА ФУЛФИЛМЕНТ:**
- **Товар** - поставка товаров для создания продуктов
- **Карточки** - поставка через WB API с рецептурой
- **Поставщики** - заказ товаров у поставщиков с рецептурой
- **Расходники селлера** - поставка материалов для товаров селлера
**🛒 ПОСТАВКИ НА МАРКЕТПЛЕЙСЫ** _(планируется)_
- **Wildberries** - прямые поставки на WB
- **Ozon** - прямые поставки на Ozon
### 5.2 Создание поставки расходников селлера
**БЛОК 1: ПОСТАВЩИКИ** _(верхняя часть экрана)_
- Отображение карточек поставщиков из раздела "Партнеры"
- Горизонтальный скролл при превышении ширины экрана
- Выбор одного поставщика
**БЛОК 2: РАСХОДНИКИ** _(центральная часть)_
- Расходники выбранного поставщика
- Сортировка по цене, названию, категории
- Фильтры по категории, ценовому диапазону
- Карточка расходника с фото, названием, ценой, остатком
**БЛОК 3: КОРЗИНА** _(правая часть)_
- Количество видов расходников
- Детализация по каждому расходнику
- Общая сумма
- Выбор фулфилмент-центра
- Дата поставки
### 5.3 Правила селлера
**ОБЯЗАТЕЛЬНО:**
- Валидация остатков перед добавлением в корзину
- Проверка доступности фулфилмент-центра
- Выбор даты поставки (не прошедшей)
**ЗАПРЕЩЕНО:**
- Редактирование созданной поставки
- Выбор нескольких поставщиков одновременно
- Заказ количества сверх остатков
- Выбор прошедших дат поставки
---
## 6. 📦 КАБИНЕТ ПОСТАВЩИКА
### 6.1 Раздел склад - основные возможности
**СОЗДАНИЕ КАРТОЧЕК:**
- **ТОВАР** - базовые товары поставщика
- **РАСХОДНИКИ** - материалы и вспомогательные товары
### 6.2 Управление карточками
**Основные функции:**
- Создание карточек с обязательными полями
- Редактирование и удаление карточек
- Изменение количества в карточке
- Система загрузки изображений товаров
**Система проверок:**
- Проверка остатков при добавлении в корзину
- Валидация данных при создании/редактировании
- Проверка уникальности артикула в рамках организации
### 6.3 Статистика и аналитика поставщика
**В КАБИНЕТЕ ПОСТАВЩИКА:**
- **ТОВАРЫ**: Общая статистика товаров поставщика
- **РАСХОДНИКИ**: Материалы и вспомогательные товары
- Классифицируются при заказе в зависимости от заказчика
- Общая статистика по всем расходникам
**Блок статистики включает:**
- Общие остатки всех предметов
- Количество заказанных позиций
- Предметы в пути
- Проданные предметы
- Уведомления о низких остатках
### 6.4 Интерфейс и управление
**Режимы отображения:**
- Переключение между строчным и карточным режимами
- 5 карточек в ряд в карточном режиме
- Система фильтрации и сортировки
- Поиск по названию, артикулу, категории, бренду
**Система уведомлений:**
- Подсветка при низких остатках
- Автоматические уведомления о новых заказах
- Уведомления об изменении статусов поставок
### 6.5 Правила поставщика
**ОБЯЗАТЕЛЬНО:**
- Указание всех обязательных полей при создании карточки
- Своевременная обработка заказов
- Подтверждение поставок в установленные сроки
- Ведение актуального учета остатков
**ЗАПРЕЩЕНО:**
- Добавление собственных товаров в корзину
- Создание предметов без указания типа
- Нарушение сроков обработки заказов
---
## 7. 🏭 КАБИНЕТ ФУЛФИЛМЕНТА
### 7.1 Структура раздела склад фулфилмента
**Модули в обязательной последовательности:**
1. **📦 ПРОДУКТ** - готовые к продаже товары
2. **🛒 ТОВАР** - базовые товары от поставщиков
- Товары "на складе" - готовы к обработке
- Товары "в обработке" - в процессе создания продукта
3. **❌ БРАК** - товары с дефектами
4. **↩️ ВОЗВРАТЫ С ПВЗ** - возвращенные товары
5. **🎯 РАСХОДНИКИ СЕЛЛЕРОВ** - материалы для селлеров
6. **⚙️ РАСХОДНИКИ ФУЛФИЛМЕНТ** - операционные материалы
- **КЛИКАБЕЛЬНЫЙ МОДУЛЬ** - содержит полноценный раздел учёта
### 7.2 Система учёта движения товаров
**Основные принципы учёта:**
- **ПРИХОД ТОВАРОВ**: Через принятые поставки (статус "в пути" → "на складе")
- **РАСХОД ТОВАРОВ**: При отгрузке, списании, использовании для услуг
- **ДВОЙНОЙ УЧЁТ**: Основные значения + дополнительные значения
**Дополнительные значения (показатели движения):**
- **ПРИБЫЛО** - количество поступивших на склад за период
- **УБЫЛО** - количество списанных со склада за период
**Основные значения (текущие остатки):**
- **ФОРМУЛА**: Основные значения = Предыдущие остатки + Прибыло - Убыло
- **ОТОБРАЖЕНИЕ**: Показываются в каждом модуле статистики
- **АКТУАЛЬНОСТЬ**: Обновляются в реальном времени
### 7.3 Процесс "Создания продукта"
**ЭТАП 1: ПОСТУПЛЕНИЕ И СОРТИРОВКА**
1. Товар поступает на склад фулфилмента (статус "на складе")
2. Перебор и сортировка товара
3. Выявление и отсеивание брака
**ЭТАП 2: ПОДГОТОВКА К РАБОТЕ** 4. Поставка попадает в раздел "Создание продукта" / Новые 5. Менеджер фулфилмента:
- Устанавливает дедлайн выполнения
- Назначает ответственного исполнителя
- Указывает место хранения готовых продуктов
- Нажимает "В работе"
**ЭТАП 3: ОБРАБОТКА** 6. Поставка переходит в "В работе" 7. Товары получают статус "в работе" 8. Исполнитель работает по "рецептуре" селлера:
- Применяет услуги фулфилмента
- Использует расходники селлера
- Использует расходники фулфилмента
**ЭТАП 4: УЧЕТ ПЛАН/ФАКТ** 9. Фиксируется:
- **ПЛАН**: Количество из поставки селлера
- **ФАКТ**: Реальное количество = Брак + Хороший товар
- **ДЕТАЛИЗАЦИЯ**: По каждому размеру/объему
**ЭТАП 5: ЗАВЕРШЕНИЕ** 10. Исполнитель нажимает "Выполнено" 11. Товары становятся продуктами со статусом "готов к отправке" 12. Поставка переходит в "Выполнено"
**РЕЗУЛЬТАТ**: ПРОДУКТ = Товар + Услуга + Расходники
### 7.4 Рецептура продукта
**Задается селлером при создании поставки:**
- **БАЗОВЫЙ ТОВАР**: Исходный материал
- **УСЛУГА ФУЛФИЛМЕНТА**: Из каталога услуг фулфилмента
- **РАСХОДНИК СЕЛЛЕРА**: Материалы селлера (опционально)
- **РАСХОДНИК ФУЛФИЛМЕНТА**: Материалы фулфилмента (опционально)
- **СВЯЗЬ С MP**: Связь с карточкой маркетплейса (опционально)
### 7.5 Статистика и аналитика фулфилмента
**В КАБИНЕТЕ ФУЛФИЛМЕНТА:**
- **ТОВАРЫ**: Базовые товары от поставщиков (принятые на склад)
- **ПРОДУКТЫ**: Готовая продукция (созданная из товаров)
- **БРАК**: Статистика потерь и списаний
- **РАСХОДНИКИ ФУЛФИЛМЕНТА**: Операционные материалы фулфилмента
- **РАСХОДНИКИ СЕЛЛЕРОВ**: Материалы для товаров селлеров
### 7.6 Правила фулфилмента
**ОБЯЗАТЕЛЬНО:**
- Своевременная приемка поставок
- Ведение точного учета остатков
- Контроль качества товаров
- Фиксация брака в процессе работы
- Соблюдение сроков создания продуктов
**ЗАПРЕЩЕНО:**
- Принятие товаров без проверки качества
- Нарушение технологии создания продуктов
- Несоблюдение сроков обработки
---
## 8. 🔄 ИНТЕГРАЦИИ И СВЯЗИ МЕЖДУ КАБИНЕТАМИ
### 8.1 Глобальная интеграция
- **Маркет** - данные карточки товаров и расходников отображаются в глобальной сущности
- **Синхронизация данных** между всеми модулями системы
- **Единая система уведомлений** через встроенный мессенджер
### 8.2 Интеграция с маркетплейсами
- **Wildberries API** - загрузка карточек товаров из WB
- **Синхронизация данных** с маркетплейсами
- **Создание поставок** на основе WB карточек
- **Управление API ключами** с проверкой активности
### 8.3 Интеграция с модулем "Услуги"
**Расходники фулфилмента в услугах:**
- Селлеры могут использовать расходники фулфилмента в разделе "Услуги / Расходники"
- Для создания продукта из базового товара
- Расходники списываются с остатков фулфилмента
- Стоимость включается в стоимость услуги фулфилмента
**Процесс создания продукта через услуги:**
1. Селлер выбирает услугу "Создание продукта"
2. Указывает базовый товар для обработки
3. Выбирает необходимые расходники фулфилмента
4. Фулфилмент обрабатывает заказ
5. Создается готовый продукт с использованием расходников
### 8.4 Система тарификации логистики
**Расчет стоимости доставки:**
- **Тариф до 1м³** - базовая стоимость для малых грузов
- **Тариф свыше 1м³** - стоимость для крупных грузов
- **Маршруты доставки** - от точки отправления до точки назначения
- **Описание услуг** - дополнительные условия доставки
---
## 📋 КРИТИЧЕСКИЕ ЗАПРЕТЫ
### ❌ НИКОГДА НЕ ДЕЛАТЬ:
1. Удалять предметы с существующими заказами
2. Изменять статусы заказов без уведомлений
3. Обходить проверки остатков предметов
4. Давать доступ к чужим данным
5. Игнорировать ошибки валидации
6. Пропускать логирование критических операций
7. Создавать брак или продукт без связи с родительским товаром
8. Создавать отдельные типы расходников (только общий тип "РАСХОДНИКИ")
9. Разрешать заказ брака
10. Нарушать иерархию типов предметов
---
## 🎖️ ПРИОРИТЕТЫ РАЗРАБОТКИ
### ВЫСОКИЙ ПРИОРИТЕТ:
1. 🔴 Безопасность и контроль доступа
2. 🔴 Целостность данных и валидация
3. 🔴 Корректность статусов поставок
4. 🔴 Уведомления участников процесса
5. 🔴 Правильная типизация предметов
### СРЕДНИЙ ПРИОРИТЕТ:
1. 🟡 Производительность и оптимизация
2. 🟡 Пользовательский опыт
3. 🟡 Аналитика и отчетность
4. 🟡 Интеграции с внешними системами
### НИЗКИЙ ПРИОРИТЕТ:
1. 🟢 Дополнительные фильтры
2. 🟢 Косметические улучшения
3. 🟢 Экспериментальные функции
---
окумент создан на основе файла description.md_
_Версия: 1.0_
ата: 2024_
_Статус: АКТИВНЫЕ ПРАВИЛА_