This commit is contained in:
Bivekich
2025-07-30 18:32:52 +03:00
parent 38dcfcef2b
commit 593ae16e1e
10 changed files with 192 additions and 48 deletions

153
logic_full.md Normal file
View File

@ -0,0 +1,153 @@
# ЛОГИКА ПОСТАВКИ РАСХОДНИКОВ ФУЛФИЛМЕНТА
> **ВНИМАНИЕ**: Данный файл содержит детальную логику процесса создания поставки расходников фулфилмента.
> Любые изменения в этом процессе должны быть согласованы и отражены в основном файле логики системы.
---
## 4. ПРОЦЕСС СОЗДАНИЯ ПОСТАВКИ РАСХОДНИКОВ ФУЛФИЛМЕНТА
### 4.1 Описание процесса
Фулфилмент-центры могут заказывать расходные материалы для своих операций напрямую у поставщиков. Этот процесс отличается от основного бизнес-процесса тем, что фулфилмент выступает как заказчик, а не как исполнитель услуг.
**ВАЖНОЕ РАЗЛИЧИЕ**: Расходники фулфилмента - это материалы, которые фулфилмент-центр заказывает для своих внутренних операций (упаковка, хранение, обработка товаров). Они отличаются от расходников селлера, которые селлер заказывает для своих товаров.
### 4.2 Участники процесса
- **Фулфилмент-центр** - заказчик расходников
- **Поставщик (WHOLESALE)** - поставщик расходных материалов
- **Логистическая компания (LOGIST)** - доставка товаров от поставщика к фулфилменту
- **Система** - автоматическая обработка заказов
### 4.3 Этапы процесса создания поставки расходников фулфилмента
#### Этап 1: Инициация заказа фулфилментом
1. **Переход к созданию заказа**: Фулфилмент заходит в раздел "Входящие поставки" → "Расходники фулфилмента" → "Создать поставку"
2. **Выбор поставщика**: Выбор контрагента с типом "WHOLESALE" из списка партнеров
3. **Поиск поставщика**: Возможность поиска по названию, полному названию или ИНН
4. **Просмотр каталога**: Просмотр товаров выбранного поставщика
#### Этап 2: Формирование заказа
5. **Поиск товаров**: Поиск нужных расходников в каталоге поставщика
6. **Выбор количества**: Указание необходимого количества для каждого товара
7. **Добавление в корзину**: Товары добавляются в список выбранных расходников фулфилмента
8. **Выбор логистики**: Выбор партнера-логиста для доставки товаров от поставщика
9. **Расчет стоимости**: Автоматический расчет общей суммы заказа
10. **Указание даты доставки**: Выбор желаемой даты поставки
#### Этап 3: Создание заказа в системе
11. **Валидация данных**: Проверка заполнения всех обязательных полей
12. **Создание SupplyOrder**: Система создает запись заказа поставки со статусом "PENDING"
13. **Указание получателя**: fulfillmentCenterId устанавливается как ID текущего фулфилмента
14. **Указание логистики**: logisticsPartnerId устанавливается как ID выбранной логистической компании
15. **Создание позиций заказа**: Создание SupplyOrderItem для каждого выбранного товара
#### Этап 4: Автоматическая обработка системой
16. **Создание расходников**: Система автоматически создает записи Supply со статусом "planned"
17. **Установка параметров**:
- Статус: "planned" (запланировано, ожидает одобрения)
- Категория: из товара или "Расходники"
- Минимальный остаток: 10% от заказанного количества
- Текущий остаток: 0 (товар еще не поступил)
18. **Привязка к организации**: Расходники создаются в организации фулфилмента
19. **Отправка уведомления**: Поставщик получает уведомление о новом заказе
#### Этап 5: Обработка поставщиком
20. **Получение заявки**: Заказ появляется в кабинете поставщика в разделе "Заявки"
21. **Рассмотрение заказа**: Поставщик может принять или отклонить заказ
22. **Изменение статуса**: При принятии статус SupplyOrder меняется на "CONFIRMED" (подтвержден поставщиком)
23. **Уведомление логистики**: После одобрения поставщиком заявка появляется в кабинете логистической компании
#### Этап 6: Обработка логистикой
24. **Получение заявки**: Заказ появляется в кабинете логистики в разделе "Заявки"
25. **Рассмотрение заявки**: Логистическая компания может подтвердить или отклонить заявку на доставку
26. **Подтверждение логистики**: При принятии логистика подтверждает возможность доставки в указанные сроки
27. **Обновление расходников**: Supply переходят в статус "confirmed" (ожидает отгрузки)
28. **Подготовка к отгрузке**: Поставщик готовит товар к отправке
#### Этап 7: Доставка и приемка
29. **Отгрузка товара** [**ПОСТАВЩИК**]: Поставщик физически отправляет товар логистической компании и **в системе нажимает кнопку "Отправить"** (статус SupplyOrder меняется с "CONFIRMED" на "IN_TRANSIT")
30. **Обновление статуса расходников** [**СИСТЕМА**]: Supply переходят в статус "in-transit" (в пути)
31. **Транспортировка** [**ЛОГИСТИКА**]: Логистическая компания доставляет товар в фулфилмент-центр
32. **Статус "IN_TRANSIT"** [**СИСТЕМА**]: Заказ переходит в статус "в пути"
33. **Приемка на фулфилменте** [**ФУЛФИЛМЕНТ**]: Менеджер фулфилмента принимает товар
34. **Обновление остатков** [**ФУЛФИЛМЕНТ**]: currentStock обновляется на фактически полученное количество
35. **Статус "DELIVERED"** [**ФУЛФИЛМЕНТ**]: Заказ завершается со статусом "доставлен"
36. **Обновление расходников** [**СИСТЕМА**]: Supply переходят в статус "in-stock" (на складе)
### 4.3.1 Результат завершения процесса
После успешного завершения процесса (статус Supply = "in-stock"):
37. **Отображение на складе** [**СИСТЕМА**]: Информация о поставке автоматически отображается в разделе **"Склад" → "Статистика расходников фулфилмента"**
38. **Отображение в расходниках фулфилмента** [**СИСТЕМА**]: Информация о поставке также отображается в подразделе **"Расходники фулфилмента"**
39. **Доступность для использования** [**ФУЛФИЛМЕНТ**]: Расходники становятся доступными для использования в операциях фулфилмент-центра
**Важно**: Статус "in-stock" (на складе) означает, что расходники физически находятся на складе фулфилмента и готовы к использованию в операционной деятельности.
### 4.4 Особенности процесса
#### 4.4.1 Отличия от основного процесса
- **Прямое взаимодействие**: Фулфилмент напрямую заказывает у поставщика
- **Самостоятельная приемка**: Фулфилмент принимает товар на свой склад
- **Управление остатками**: Автоматическое управление минимальными остатками
- **Без посредников**: Логистика может быть внешней или встроенной
#### 4.4.2 Типы расходников
- **Упаковочные материалы**: Коробки, пакеты, скотч
- **Защитные материалы**: Пупырчатая пленка, стрейч-пленка
- **Маркировочные материалы**: Этикетки, стикеры, маркеры
- **Инструменты**: Ножи, степлеры, весы
- **Расходные материалы**: Батарейки, картриджи, канцелярия
#### 4.4.3 Автоматизация
- **Автоматический расчет минимальных остатков**: 10% от заказанного количества
- **Уведомления**: Автоматические уведомления всем участникам процесса
- **Обновление данных**: Синхронизация статусов между всеми системами
- **Отчетность**: Автоматическое обновление складских отчетов
### 4.5 Интеграция с основной системой
- **Единая база контрагентов**: Использование общего справочника партнеров
- **Общие товары**: Поставщики управляют единым каталогом товаров
- **Единая система уведомлений**: Общий мессенджер для коммуникаций
- **Общая отчетность**: Интеграция с общей системой аналитики
---
## Статусы в процессе
### Статусы SupplyOrder (Заказ поставки):
- **PENDING** - Ожидает подтверждения поставщиком
- **CONFIRMED** - Подтвержден поставщиком
- **IN_TRANSIT** - В пути (логистика доставляет)
- **DELIVERED** - Доставлен на фулфилмент
- **CANCELLED** - Отменен
### Статусы Supply (Расходники):
- **planned** - Запланировано (ожидает одобрения поставщиком)
- **confirmed** - Подтверждено (ожидает отгрузки после одобрения логистикой)
- **in-transit** - В пути (товар отгружен логистической компании)
- **in-stock** - На складе (товар принят на фулфилменте и отображается в разделах "Склад" и "Расходники фулфилмента")
---
**ВАЖНО**: Данный процесс является частью общей системы управления поставками и должен соответствовать общим принципам и правилам, описанным в основном файле логики системы.
---
окумент создан на основе раздела 4 основного файла логики системы_
_Статус: СПЕЦИАЛИЗИРОВАННАЯ ЛОГИКА ПРОЦЕССА_