Appearance
Классификаторы
Классификатор — справочник возможных значений для свойств продуктов, материалов, операций и других объектов. Каждый классификатор описывает один тип вариативности (цвет, толщина, покрытие), а его значения — конкретные варианты выбора.
Это фундамент системы. Все модули используют классификаторы для организации данных: цвета ЛДСП, текстуры, типы дефектов, навыки рабочих.
Как открыть
Боковое меню → Классификация → Классификаторы
Что на экране
Таблица классификаторов
| Столбец | Что показывает |
|---|---|
| Код | Технический идентификатор: ldsp_colors, material_textures. Не меняется после создания |
| Название | Человекочитаемое: Цвета ЛДСП, Типы покрытия |
| Тип | Группировка: colors, materials, textures |
| Домен | Где применяется: материалы, продукты, операции, оборудование, дефекты, навыки, общий |
| Версия | Номер текущей версии |
| Актуальный | Флаг is_current — эта версия используется для новых заказов |
Кнопка «Новый классификатор»
Видна для технолога. Создаёт новый классификатор с версией 1.
Домены
Домен ограничивает, где можно использовать классификатор:
| Домен | Для чего | Пример классификатора |
|---|---|---|
| materials | Свойства материалов | Цвета ЛДСП, Толщины, Текстуры |
| products | Свойства изделий | Серии мебели, Категории |
| operations | Параметры операций | Типы кромления, Режимы раскроя |
| equipment | Характеристики станков | Типы инструментов, Точность |
| defects | Виды брака | Типы дефектов, Классы серьёзности |
| skills | Квалификации рабочих | Навыки, Допуски |
| general | Универсальные | Статусы, Приоритеты |
Зачем нужны домены
Домен не запрещает использование — он помогает фильтровать. Когда технолог настраивает материал, он видит только классификаторы с доменом materials, а не весь справочник из сотен позиций.
Иерархия классификаторов
Классификаторы могут быть вложенными (до 5 уровней). Это заменяет категории и группировки:
Мебель (level 0)
└─ Корпусная мебель (level 1)
└─ Шкафы (level 2)
└─ Комоды (level 2)
└─ Мягкая мебель (level 1)| Поле | Описание |
|---|---|
| parent | Родительский классификатор (NULL = корневой) |
| level | Глубина: 0 = корень, макс 5 |
| path | Полный путь: furniture.case_furniture.wardrobes |
Значения классификатора
Каждый классификатор содержит набор значений. Это конкретные варианты для выбора.
Пример
Классификатор «Цвета ЛДСП» (ldsp_colors):
| Код | Название | Порядок | Метаданные |
|---|---|---|---|
vishnya | Вишня | 10 | {hexCode: "#8B0000"} |
oak_atlanta | Дуб Атланта | 20 | {hexCode: "#C4A35A"} |
lipa | Липа | 30 | {hexCode: "#F5E6D3"} |
white_gloss | Белый глянец | 40 | {hexCode: "#FFFFFF", gloss: 85} |
Таблица значений
| Столбец | Что показывает |
|---|---|
| Код | Код внутри классификатора: vishnya. Уникален в рамках одного классификатора |
| Название | Отображаемое: Вишня, Дуб Атланта |
| Порядок | sort_order — порядок в выпадающих списках (меньше = выше) |
| Активен | Неактивные значения скрыты в выборе, но сохранены в истории |
| Метаданные | JSON: цвет для UI, картинка, технические характеристики |
Иерархия значений
Значения тоже могут быть иерархическими (parent_value):
Тёплые
├─ Красный
├─ Оранжевый
└─ Жёлтый
Холодные
├─ Синий
└─ ЗелёныйСоздание классификатора
- Нажмите «Новый классификатор»
- Заполните поля:
| Поле | Обязательно | Описание |
|---|---|---|
| Код | Да | Уникальный: ldsp_colors. Нельзя менять после создания |
| Название | Да | Цвета ЛДСП |
| Домен | Да | Выберите область применения |
| Тип | Нет | Группировка: colors, textures |
| Описание | Нет | Пояснение для других технологов |
| Родительский | Нет | Для вложенного классификатора |
- Нажмите «Сохранить»
- Перейдите на вкладку значений и добавьте варианты
Код классификатора
Код задаётся один раз и не меняется. Это технический идентификатор, который используется во всех модулях. Если нужно переименовать — измените название, не код.
Версионность
При изменении набора значений создаётся новая версия классификатора:
| Поле | Описание |
|---|---|
| version | Номер версии: 1, 2, 3... |
| is_current | True = актуальная версия для новых заказов |
| valid_from | С какого момента действует |
| valid_to | До какого момента (NULL = бессрочно) |
| previous_version | Ссылка на предыдущую версию |
Старые заказы продолжают использовать ту версию, с которой были созданы. Новые заказы используют текущую (is_current = true).
Роли доступа
| Роль | Что может |
|---|---|
| Технолог | Создавать, редактировать, деактивировать классификаторы и значения |
| Диспетчер | Просматривать |
| Мастер | Просматривать |
| Рабочий | Просматривать (через мобильное приложение) |
Дополнительно есть разделение по classifier_domain: technical (для технологов), design (для дизайнеров), common (для всех).
Где используются классификаторы
| Модуль | Как используется |
|---|---|
| Материалы (M2) | Свойства материала: цвет, толщина, текстура через ObjectClassifierValue |
| Продукты (M2) | Атрибуты изделий и деталей |
| Заказы (M3) | Модификаторы для вариативности (цвет шкафа по выбору клиента) |
| Персонал (M5) | Навыки и квалификации рабочих |
| Качество (M6) | Типы дефектов, классы серьёзности |
API
| Метод | Endpoint | Описание |
|---|---|---|
| GET | /api/v1/classifiers/ | Список классификаторов |
| POST | /api/v1/classifiers/ | Создать классификатор |
| GET | /api/v1/classifiers/{id}/ | Детали классификатора |
| PUT | /api/v1/classifiers/{id}/ | Обновить классификатор |
| GET | /api/v1/classifier-values/ | Список всех значений |
| POST | /api/v1/classifier-values/ | Создать значение |
| GET | /api/v1/classifiers/{id}/values/ | Значения конкретного классификатора |