Модели
Структура
Модели — это экспортируемые константы, содержащие массивы объектов для enum-значений:
js
export const CLIENT_STATUSES_MAP = [
{ value: 0, label: 'general.all', color: '#b3b3b3' },
{ value: 101, label: 'client.status.wait_client_call', color: '#d3e5ef' },
{ value: 400, label: 'client.status.in_progress', color: '#b9ebcf' },
// ...
]Поля объекта
| Поле | Тип | Описание |
|---|---|---|
value | number | Числовое значение, соответствующее бэкенд-enum |
label | string | Ключ i18n-перевода (не отображаемый текст) |
color | string | HEX-цвет для UI-отображения (опционально) |
icon | string | Имя иконки (опционально) |
Использование
Импорт
js
import {
CLIENT_STATUSES_MAP,
GENDERS_MAP,
INSURANCE_TYPES_MAP,
} from '@diealltagsfeen/frontend-api-client'Поиск элемента по значению
js
const status = CLIENT_STATUSES_MAP.find(s => s.value === 400)
// { value: 400, label: 'client.status.in_progress', color: '#b9ebcf' }Использование с i18n
Поле label содержит ключ перевода, а не готовый текст. Для отображения используйте функцию перевода вашего приложения:
js
const statusLabel = t(status.label) // "В работе"Использование для фильтров
js
// Варианты для select-компонента
const options = CLIENT_STATUSES_MAP.map(s => ({
label: t(s.label),
value: s.value,
}))Категории моделей
Модели организованы по доменным областям:
- clientModels — статусы клиентов, пол, типы страховки, степени тяжести
- workerModels — статусы и типы воркеров
- userModels — роли и типы пользователей
- taskModels — статусы и типы задач
- contactModels — типы контактов
- agentModels — типы агентов
- partnerModels — типы партнёров
- regionModels — регионы и локации
- complaintModels — типы жалоб
- notificationModels — типы уведомлений
- emailModels, mailModels — типы писем
- queueModels — статусы очереди
- historyModels — типы записей истории
- learningModels — курсы и квизы
- docTemplateModels — шаблоны документов
- recallModels — типы перезвонов
- searchModels — фильтры поиска
- workerAssignmentModels — назначения воркеров
- insuranceCompanyModels — страховые компании
- ratePerHourModels — почасовые ставки
- commonModels — общие константы