Связанные документы:
Каталог общий — центральный справочник позиций платформы Manager 2.0.
Он является базовым источником данных для модулей:
Графики;Рекламации;Склад наличие;Технич. описание;Калькуляции.Каталог общий и каталог ДКР — разные сущности. Текущий каталог ДКР остается внутри модуля ДКР; общий каталог проектируется отдельно.
Статус модуля: нужно реализовать.
В текущей CRM уже есть раздел Каталог ДКР:
catalog.index;catalog.show;ProductController;Product;Эта реализация относится к каталогу ДКР и не становится автоматически Каталогом общим. Ее можно использовать как источник UI/технических паттернов, но данные и назначение общего каталога должны быть отделены.
Целевое меню:
Каталог общий
├── Позиции
└── Карточка позиции
Требования:
Каталог общий должен быть отдельным верхним пунктом меню;Каталог должен остаться внутри меню ДКР;catalog.index и catalog.show остаются маршрутами каталога ДКР;Каталог общий должны использовать префикс common-catalog/...;Каталог общий должны использовать техническое имя common-catalog;На первом этапе для заглушки используем доступ для всех авторизованных пользователей.
| Действие | Permission |
|---|---|
| Просмотр заглушки | Любой авторизованный пользователь |
| Просмотр общего каталога после реализации | common-catalog.view |
| Создание/редактирование/удаление | Права с префиксом common-catalog.* |
| Импорт/экспорт | Права с префиксом common-catalog.* |
Требования:
catalog.view автоматически, потому что это право относится к каталогу ДКР;common-catalog;Каталог общий показывать всем авторизованным пользователям.Базовая сущность: позиция каталога.
Возможная техническая основа для анализа:
Product;catalog.show;Эти сущности относятся к каталогу ДКР и не должны смешиваться с общим каталогом без отдельной миграции или синхронизации.
Целевая роль позиции:
Список позиций должен поддерживать базовую функциональность справочника и быть подготовлен к расширению. Текущий каталог ДКР можно использовать как референс интерфейса, но не как источник данных общего каталога.
Функционал:
Источник полей: файл Шаблон Каталог ощий.xlsx, лист 1, строка 1. В строке 3 шаблона есть пример заполнения.
Колонки:
ID;Внешний вид;Артикул;Наименование по калькулятору;Вид;Габаритные размеры;Высота падения;Дополнительные сведения;Единица измерения габаритов;Вес, кг.;Объем, м3;Места;Состав;Возрастная группа;Макс.кол-во пользователей;Ед.;Серия;ТМ;Примечание.Требования к колонкам:
Единица измерения габаритов в формате шаблона с переносом строки между словами измерения и габаритов;Артикул хранить строкой, чтобы сохранять ведущие нули;Внешний вид отображает фото позиции;Предварительная модель полей по шаблону:
| Колонка | Поле | Тип данных | Примечание |
|---|---|---|---|
| A | ID |
integer | Внутренний идентификатор/номер строки каталога. |
| B | Внешний вид |
image/file | Фото позиции; в шаблоне есть встроенное изображение. |
| C | Артикул |
string | Сохранять ведущие нули, пример: 0254. |
| D | Наименование по калькулятору |
text | Может содержать переносы строк. |
| E | Вид |
string | Категория/вид позиции. |
| F | Габаритные размеры |
text | Может содержать текст и единицы измерения. |
| G | Высота падения |
decimal | Числовое значение, допускается 0. |
| H | Дополнительные сведения |
text nullable | Дополнительное описание. |
| I | Единица измерения габаритов |
string | В шаблоне заголовок разбит переносом строки. |
| J | Вес, кг. |
decimal | Вес в килограммах. |
| K | Объем, м3 |
decimal | Объем в кубических метрах. |
| L | Места |
integer | Количество мест. |
| M | Состав |
text nullable | Состав комплекта/позиции. |
| N | Возрастная группа |
string | Пример: 0+. |
| O | Макс.кол-во пользователей |
integer | Максимальное количество пользователей. |
| P | Ед. |
string | Единица учета, пример: шт.. |
| Q | Серия |
string | Серия позиции. |
| R | ТМ |
string | Торговая марка. |
| S | Примечание |
text nullable | Свободное примечание. |
Карточка позиции должна стать центральной карточкой товара/МАФ.
Функционал карточки:
Калькуляции;Текущие возможности каталога ДКР, которые можно использовать как паттерн:
catalog.upload-thumbnail — использовать как основу загрузки фото;catalog.upload-certificate — использовать как основу загрузки документов, но расширить модель до нескольких произвольных документов, если текущая реализация ограничена сертификатом.Фото:
Склад наличие;Документы:
Документы;Требования:
| Модуль | Связь | Требование |
|---|---|---|
| ДКР | Имеет собственный каталог | Не смешивать каталог ДКР с общим каталогом. |
| Склад наличие | Использует картинку, артикул, наименование, характеристики, ед. изм. | Склад должен брать справочные поля из общего каталога. |
| Графики | Используют данные по позициям | При разработке графиков опираться на общий каталог. |
| Рекламации | Используют данные по позициям | Сохранить/добавить связь рекламаций с позициями общего каталога. |
| Технич. описание | Является частью общего каталога | Использовать готовый Laravel-модуль как источник экспорта/формата. |
| Калькуляции | Запрашиваются из карточки позиции через внешний API | Запрос по артикулу, отображение возвращенной калькуляции при наличии. |
В первый этап общего каталога не входит:
catalog.*;Product;Склад наличие;Технич. описание;catalog.*.catalog.* относятся к каталогу ДКР.common-catalog/... для Каталог общий.common-catalog для таблиц и прав общего каталога.Каталог общий.Каталог общий.Технич. описание включается внутрь карточки общего каталога.Калькуляции.Каталог общий видна всем авторизованным пользователям.Каталог общий.ДКР остается пункт Каталог.catalog.index и catalog.show сохранены как маршруты каталога ДКР.Каталог общий доступна всем авторизованным пользователям.docs/refactor/Шаблон Каталог ощий.xlsx.