# Подробное проектирование системы тикетов

> **Версия**: v2.0-beta

> **Дата обновления**: 2026-01-05

> **Статус**: Предварительная версия

## 1. Обзор системы и концепция проектирования

### 1.1 Позиционирование системы

Данная система представляет собой **интеллектуальную платформу управления тикетами на базе ИИ**, построенную на low-code платформе NocoBase. Основная цель:

```
Позволить службе поддержки сосредоточиться на решении проблем, а не на рутинных операциях процесса.
```

### 1.2 Концепция проектирования

#### Концепция 1: Т-образная архитектура данных

**Что такое Т-образная архитектура?**

Она заимствует концепцию «Т-образного специалиста» — широта по горизонтали + глубина по вертикали:

- **Горизонталь (Основная таблица)**: Универсальные возможности, охватывающие все типы бизнеса — номер тикета, статус, исполнитель, SLA и другие ключевые поля.
- **Вертикаль (Таблицы расширения)**: Специализированные поля для конкретных бизнес-задач — серийные номера для ремонта оборудования, планы компенсации для жалоб.

![ticketing-imgs-2025-12-31-22-50-45](https://static-docs.nocobase.com/ticketing-imgs-en-2025-12-31-23-18-25.png)

**Почему выбрана такая архитектура?**

| Традиционное решение | Т-образная архитектура |
|----------|---------|
| Отдельная таблица для каждого вида бизнеса, дублирование полей | Единое управление общими полями, расширение бизнес-полей по запросу |
| Для отчетов нужно объединять несколько таблиц | Одна основная таблица для статистики по всем тикетам |
| Изменение процесса требует правок во многих местах | Основной процесс меняется только в одном месте |
| Для нового типа бизнеса нужна новая таблица | Достаточно добавить таблицу расширения, основной процесс остается прежним |

#### Концепция 2: Команда ИИ-сотрудников

Это не просто «функции ИИ», а «ИИ-сотрудники». У каждого ИИ есть четкая роль, характер и обязанности:

| ИИ-сотрудник | Должность | Основные обязанности | Сценарий срабатывания |
|--------|------|----------|----------|
| **Sam** | Руководитель службы поддержки | Распределение тикетов, оценка приоритета, принятие решений об эскалации | Автоматически при создании тикета |
| **Grace** | Эксперт по успеху клиентов | Генерация ответов, корректировка тона, обработка жалоб | При нажатии агентом «Ответ ИИ» |
| **Max** | Ассистент по знаниям | Поиск похожих случаев, рекомендации базы знаний, синтез решений | Автоматически на странице деталей тикета |
| **Lexi** | Переводчик | Многоязычный перевод, перевод комментариев | Автоматически при обнаружении иностранного языка |

**Почему используется модель «ИИ-сотрудника»?**

- **Четкое разделение обязанностей**: Sam отвечает за распределение, Grace — за ответы, никакой путаницы.
- **Простота понимания**: Сказать пользователю «Пусть Sam проанализирует это» дружелюбнее, чем «Вызвать API классификации».
- **Масштабируемость**: Добавление новых возможностей ИИ = найм нового сотрудника.

#### Концепция 3: Самоциркуляция знаний

![ticketing-imgs-2025-12-31-22-51-09](https://static-docs.nocobase.com/ticketing-imgs-en-2025-12-31-23-19-13.png)

Это формирует замкнутый цикл: **накопление знаний — применение знаний**.

---

## 2. Основные сущности и модель данных

### 2.1 Обзор связей сущностей

![ticketing-imgs-2025-12-31-22-51-23](https://static-docs.nocobase.com/ticketing-imgs-en-2025-12-31-23-20-02.png)


### 2.2 Подробное описание основных таблиц

#### 2.2.1 Основная таблица тикетов (nb_tts_tickets)

Это ядро системы, использующее дизайн «широкой таблицы», где все часто используемые поля собраны вместе.

**Базовая информация**

| Поле | Тип | Описание | Пример |
|------|------|------|------|
| id | BIGINT | Первичный ключ | 1001 |
| ticket_no | VARCHAR | Номер тикета | TKT-20251229-0001 |
| title | VARCHAR | Заголовок | Медленное интернет-соединение |
| description | TEXT | Описание проблемы | С сегодняшнего утра в офисе сеть... |
| biz_type | VARCHAR | Тип бизнеса | it_support |
| priority | VARCHAR | Приоритет | P1 |
| status | VARCHAR | Статус | processing |

**Отслеживание источника**

| Поле | Тип | Описание | Пример |
|------|------|------|------|
| source_system | VARCHAR | Система-источник | crm / email / iot |
| source_channel | VARCHAR | Канал-источник | web / phone / wechat |
| external_ref_id | VARCHAR | Внешний ID ссылки | CRM-2024-0001 |

**Информация о контакте**

| Поле | Тип | Описание |
|------|------|------|
| customer_id | BIGINT | ID клиента |
| contact_name | VARCHAR | Имя контактного лица |
| contact_phone | VARCHAR | Контактный телефон |
| contact_email | VARCHAR | Контактный email |
| contact_company | VARCHAR | Название компании |

**Информация об исполнителе**

| Поле | Тип | Описание |
|------|------|------|
| assignee_id | BIGINT | ID исполнителя |
| assignee_department_id | BIGINT | ID отдела исполнителя |
| transfer_count | INT | Количество передач |

**Временные метки**

| Поле | Тип | Описание | Момент срабатывания |
|------|------|------|----------|
| submitted_at | TIMESTAMP | Время подачи | При создании тикета |
| assigned_at | TIMESTAMP | Время назначения | При назначении исполнителя |
| first_response_at | TIMESTAMP | Время первого ответа | При первом ответе клиенту |
| resolved_at | TIMESTAMP | Время решения | При переходе в статус resolved |
| closed_at | TIMESTAMP | Время закрытия | При переходе в статус closed |

**Связанное с SLA**

| Поле | Тип | Описание |
|------|------|------|
| sla_config_id | BIGINT | ID конфигурации SLA |
| sla_response_due | TIMESTAMP | Срок ответа |
| sla_resolve_due | TIMESTAMP | Срок решения |
| sla_paused_at | TIMESTAMP | Время начала приостановки SLA |
| sla_paused_duration | INT | Общая длительность приостановки (мин) |
| is_sla_response_breached | BOOLEAN | Нарушен ли срок ответа |
| is_sla_resolve_breached | BOOLEAN | Нарушен ли срок решения |

**Результаты анализа ИИ**

| Поле | Тип | Описание | Кем заполняется |
|------|------|------|----------|
| ai_category_code | VARCHAR | Категория, определенная ИИ | Sam |
| ai_sentiment | VARCHAR | Анализ настроения | Sam |
| ai_urgency | VARCHAR | Срочность | Sam |
| ai_keywords | JSONB | Ключевые слова | Sam |
| ai_reasoning | TEXT | Процесс рассуждения | Sam |
| ai_suggested_reply | TEXT | Предлагаемый ответ | Sam/Grace |
| ai_confidence_score | NUMERIC | Уровень уверенности | Sam |
| ai_analysis | JSONB | Полный результат анализа | Sam |

**Поддержка многоязычности**

| Поле | Тип | Описание | Кем заполняется |
|------|------|------|----------|
| source_language_code | VARCHAR | Исходный язык | Sam/Lexi |
| target_language_code | VARCHAR | Целевой язык | По умолчанию EN |
| is_translated | BOOLEAN | Переведено ли | Lexi |
| description_translated | TEXT | Переведенное описание | Lexi |

#### 2.2.2 Таблицы расширения бизнеса

**Ремонт оборудования (nb_tts_biz_repair)**

| Поле | Тип | Описание |
|------|------|------|
| ticket_id | BIGINT | ID связанного тикета |
| equipment_model | VARCHAR | Модель оборудования |
| serial_number | VARCHAR | Серийный номер |
| fault_code | VARCHAR | Код неисправности |
| spare_parts | JSONB | Список запчастей |
| maintenance_type | VARCHAR | Тип обслуживания |

**IT-поддержка (nb_tts_biz_it_support)**

| Поле | Тип | Описание |
|------|------|------|
| ticket_id | BIGINT | ID связанного тикета |
| asset_number | VARCHAR | Инвентарный номер |
| os_version | VARCHAR | Версия ОС |
| software_name | VARCHAR | Связанное ПО |
| remote_address | VARCHAR | Удаленный адрес |
| error_code | VARCHAR | Код ошибки |

**Жалобы клиентов (nb_tts_biz_complaint)**

| Поле | Тип | Описание |
|------|------|------|
| ticket_id | BIGINT | ID связанного тикета |
| related_order_no | VARCHAR | Номер связанного заказа |
| complaint_level | VARCHAR | Уровень жалобы |
| compensation_amount | DECIMAL | Сумма компенсации |
| compensation_type | VARCHAR | Тип компенсации |
| root_cause | TEXT | Первопричина |

#### 2.2.3 Таблица комментариев (nb_tts_ticket_comments)

**Основные поля**

| Поле | Тип | Описание |
|------|------|------|
| id | BIGINT | Первичный ключ |
| ticket_id | BIGINT | ID тикета |
| parent_id | BIGINT | ID родительского комментария (древовидная структура) |
| content | TEXT | Содержание комментария |
| direction | VARCHAR | Направление: inbound (клиент) / outbound (агент) |
| is_internal | BOOLEAN | Внутренняя заметка |
| is_first_response | BOOLEAN | Является ли первым ответом |

**Поля проверки ИИ (для исходящих)**

| Поле | Тип | Описание |
|------|------|------|
| source_language_code | VARCHAR | Исходный язык |
| content_translated | TEXT | Переведенное содержание |
| is_translated | BOOLEAN | Переведено ли |
| is_ai_blocked | BOOLEAN | Заблокировано ли ИИ |
| ai_block_reason | VARCHAR | Причина блокировки |
| ai_block_detail | TEXT | Подробное описание |
| ai_quality_score | NUMERIC | Оценка качества |
| ai_suggestions | TEXT | Рекомендации по улучшению |

#### 2.2.4 Таблица оценок (nb_tts_ratings)

| Поле | Тип | Описание |
|------|------|------|
| ticket_id | BIGINT | ID тикета (уникальный) |
| overall_rating | INT | Общая удовлетворенность (1-5) |
| response_rating | INT | Скорость ответа (1-5) |
| professionalism_rating | INT | Профессионализм (1-5) |
| resolution_rating | INT | Решение проблемы (1-5) |
| nps_score | INT | Оценка NPS (0-10) |
| tags | JSONB | Быстрые теги |
| comment | TEXT | Текстовый отзыв |

#### 2.2.5 Таблица статей базы знаний (nb_tts_qa_articles)

| Поле | Тип | Описание |
|------|------|------|
| article_no | VARCHAR | Номер статьи KB-T0001 |
| title | VARCHAR | Заголовок |
| content | TEXT | Содержание (Markdown) |
| summary | TEXT | Аннотация |
| category_code | VARCHAR | Код категории |
| keywords | JSONB | Ключевые слова |
| source_type | VARCHAR | Источник: ticket/faq/manual |
| source_ticket_id | BIGINT | ID исходного тикета |
| ai_generated | BOOLEAN | Сгенерировано ИИ |
| ai_quality_score | NUMERIC | Оценка качества |
| status | VARCHAR | Статус: draft/published/archived |
| view_count | INT | Количество просмотров |
| helpful_count | INT | Количество отметок «полезно» |

### 2.3 Список таблиц данных

| № | Имя таблицы | Описание | Тип записи |
|------|------|------|----------|
| 1 | nb_tts_tickets | Основная таблица тикетов | Бизнес-данные |
| 2 | nb_tts_biz_repair | Расширение: Ремонт оборудования | Бизнес-данные |
| 3 | nb_tts_biz_it_support | Расширение: IT-поддержка | Бизнес-данные |
| 4 | nb_tts_biz_complaint | Расширение: Жалобы клиентов | Бизнес-данные |
| 5 | nb_tts_customers | Основная таблица клиентов | Бизнес-данные |
| 6 | nb_tts_customer_contacts | Контакты клиентов | Бизнес-данные |
| 7 | nb_tts_ticket_comments | Комментарии к тикетам | Бизнес-данные |
| 8 | nb_tts_ratings | Оценки удовлетворенности | Бизнес-данные |
| 9 | nb_tts_qa_articles | Статьи базы знаний | Данные знаний |
| 10 | nb_tts_qa_article_relations | Связи статей | Данные знаний |
| 11 | nb_tts_faqs | Часто задаваемые вопросы | Данные знаний |
| 12 | nb_tts_tickets_categories | Категории тикетов | Данные конфигурации |
| 13 | nb_tts_sla_configs | Конфигурация SLA | Данные конфигурации |
| 14 | nb_tts_skill_configs | Конфигурация навыков | Данные конфигурации |
| 15 | nb_tts_business_types | Типы бизнеса | Данные конфигурации |

---

## 3. Жизненный цикл тикета

### 3.1 Определение статусов

| Статус | Название | Описание | Отсчет SLA | Цвет |
|------|------|------|---------|------|
| new | Новый | Только что создан, ожидает назначения | Начало | 🔵 Синий |
| assigned | Назначен | Исполнитель назначен, ожидает принятия | Продолжается | 🔷 Голубой |
| processing | В работе | Обрабатывается | Продолжается | 🟠 Оранжевый |
| pending | Ожидание | Ожидание обратной связи от клиента | **Пауза** | ⚫ Серый |
| transferred | Передан | Передан другому сотруднику | Продолжается | 🟣 Фиолетовый |
| resolved | Решен | Ожидает подтверждения клиента | Стоп | 🟢 Зеленый |
| closed | Закрыт | Тикет завершен | Стоп | ⚫ Серый |
| cancelled | Отменен | Тикет отменен | Стоп | ⚫ Серый |

### 3.2 Схема переходов статусов

**Основной процесс (слева направо)**

![ticketing-imgs-2025-12-31-22-51-45](https://static-docs.nocobase.com/ticketing-imgs-en-2025-12-31-23-21-01.png)

**Вспомогательные процессы**

![ticketing-imgs-2025-12-31-22-52-42](https://static-docs.nocobase.com/ticketing-imgs-en-2025-12-31-23-22-14.png)

![ticketing-imgs-2025-12-31-22-52-53](https://static-docs.nocobase.com/ticketing-imgs-en-2025-12-31-23-22-32.png)


**Полная диаграмма состояний**

![ticketing-imgs-2025-12-31-22-54-23](https://static-docs.nocobase.com/ticketing-imgs-en-2025-12-31-23-23-13.png)

### 3.3 Ключевые правила смены статусов

| Из | В | Условие срабатывания | Системное действие |
|----|----|---------|---------|
| new | assigned | Назначение исполнителя | Запись assigned_at |
| assigned | processing | Исполнитель нажимает «Принять» | Нет |
| processing | pending | Нажатие «Приостановить» | Запись sla_paused_at |
| pending | processing | Ответ клиента / Ручное возобновление | Расчет длительности паузы, очистка paused_at |
| processing | resolved | Нажатие «Решить» | Запись resolved_at |
| resolved | closed | Подтверждение клиента / 3 дня таймаута | Запись closed_at |
| * | cancelled | Отмена тикета | Нет |


---

## 4. Управление уровнем обслуживания (SLA)

### 4.1 Конфигурация приоритетов и SLA

| Приоритет | Название | Время ответа | Время решения | Порог предупреждения | Типичный сценарий |
|--------|------|----------|----------|----------|----------|
| P0 | Критический | 15 минут | 2 часа | 80% | Сбой системы, остановка линии |
| P1 | Высокий | 1 час | 8 часов | 80% | Сбой важной функции |
| P2 | Средний | 4 часа | 24 часа | 80% | Общие вопросы |
| P3 | Низкий | 8 часов | 72 часа | 80% | Консультации, предложения |

### 4.2 Логика расчета SLA

![ticketing-imgs-2025-12-31-22-53-54](https://static-docs.nocobase.com/ticketing-imgs-en-2025-12-31-23-23-46.png)

#### При создании тикета

```
Срок ответа = Время подачи + Лимит времени ответа (мин)
Срок решения = Время подачи + Лимит времени решения (мин)
```

#### При приостановке (pending)

```
Время начала паузы SLA = Текущее время
```

#### При возобновлении (из pending обратно в processing)

```
-- Расчет длительности текущей паузы
Длительность текущей паузы = Текущее время - Время начала паузы SLA

-- Добавление к общей длительности паузы
Общая длительность паузы = Общая длительность паузы + Длительность текущей паузы

-- Продление сроков (период паузы не учитывается в SLA)
Срок ответа = Срок ответа + Длительность текущей паузы
Срок решения = Срок решения + Длительность текущей паузы

-- Очистка времени начала паузы
Время начала паузы SLA = Пусто
```

#### Определение нарушения SLA

```
-- Нарушение срока ответа
Нарушен ли ответ = (Время первого ответа пусто И Текущее время > Срок ответа)
                 ИЛИ (Время первого ответа > Срок ответа)

-- Нарушение срока решения
Нарушено ли решение = (Время решения пусто И Текущее время > Срок решения)
                    ИЛИ (Время решения > Срок решения)
```

### 4.3 Механизм предупреждений SLA

| Уровень предупреждения | Условие | Кого уведомить | Способ |
|----------|------|----------|----------|
| Желтое | Осталось < 20% времени | Исполнитель | Внутреннее сообщение |
| Красное | Время истекло | Исполнитель + Руководитель | Внутреннее сообщение + Email |
| Эскалация | Просрочка 1 час | Менеджер отдела | Email + SMS |

### 4.4 Показатели SLA на дашборде

| Показатель | Формула расчета | Порог здоровья |
|------|----------|----------|
| Доля соблюдения ответа | Тикеты без нарушений ответа / Всего тикетов | > 95% |
| Доля соблюдения решения | Решенные без нарушений / Всего решенных | > 90% |
| Среднее время ответа | СУММА(Время ответа) / Кол-во тикетов | < 50% от SLA |
| Среднее время решения | СУММА(Время решения) / Кол-во тикетов | < 80% от SLA |

---

## 5. Возможности ИИ и система сотрудников

### 5.1 Команда ИИ-сотрудников

В системе настроено 8 ИИ-сотрудников, разделенных на две категории:

**Новые сотрудники (специально для системы тикетов)**

| ID | Имя | Должность | Основные навыки |
|----|------|------|----------|
| sam | Sam | Руководитель службы поддержки | Распределение тикетов, оценка приоритета, эскалация, выявление рисков SLA |
| grace | Grace | Эксперт по успеху клиентов | Генерация проф. ответов, настройка тона, обработка жалоб, восстановление лояльности |
| max | Max | Ассистент по знаниям | Поиск похожих случаев, рекомендации знаний, синтез решений |

**Общие сотрудники (универсальные навыки)**

| ID | Имя | Должность | Основные навыки |
|----|------|------|----------|
| dex | Dex | Специалист по данным | Извлечение тикетов из почты/звонков, пакетная очистка данных |
| ellis | Ellis | Эксперт по почте | Анализ настроения писем, резюме переписки, черновики ответов |
| lexi | Lexi | Переводчик | Перевод тикетов, ответов и диалогов в реальном времени |
| cole | Cole | Эксперт NocoBase | Руководство по системе, помощь в настройке рабочих процессов |
| vera | Vera | Аналитик-исследователь | Исследование технических решений, проверка информации о продуктах |

### 5.2 Список задач ИИ

Для каждого ИИ-сотрудника настроено 4 конкретные задачи:

#### Задачи Sam

| ID задачи | Название | Способ запуска | Описание |
|--------|------|----------|------|
| SAM-01 | Анализ и распределение | Рабочий процесс | Автоматически при создании тикета |
| SAM-02 | Переоценка приоритета | Интерфейс | Корректировка приоритета на основе новых данных |
| SAM-03 | Решение об эскалации | Интерфейс/Процесс | Определение необходимости эскалации |
| SAM-04 | Оценка рисков SLA | Рабочий процесс | Выявление рисков просрочки |

#### Задачи Grace

| ID задачи | Название | Способ запуска | Описание |
|--------|------|----------|------|
| GRACE-01 | Генерация проф. ответа | Интерфейс | Создание ответа на основе контекста |
| GRACE-02 | Корректировка тона | Интерфейс | Оптимизация тона существующего ответа |
| GRACE-03 | Снижение остроты жалоб | Интерфейс/Процесс | Урегулирование претензий клиентов |
| GRACE-04 | Восстановление лояльности | Интерфейс/Процесс | Работа после негативного опыта |

#### Задачи Max

| ID задачи | Название | Способ запуска | Описание |
|--------|------|----------|------|
| MAX-01 | Поиск похожих случаев | Интерфейс/Процесс | Поиск аналогичных тикетов в истории |
| MAX-02 | Рекомендация статей | Интерфейс/Процесс | Предложение релевантных статей знаний |
| MAX-03 | Синтез решения | Интерфейс | Объединение решений из разных источников |
| MAX-04 | Гид по устранению проблем | Интерфейс | Создание системного процесса проверки |

#### Задачи Lexi

| ID задачи | Название | Способ запуска | Описание |
|--------|------|----------|------|
| LEXI-01 | Перевод тикета | Рабочий процесс | Перевод содержания тикета |
| LEXI-02 | Перевод ответа | Интерфейс | Перевод ответа службы поддержки |
| LEXI-03 | Пакетный перевод | Рабочий процесс | Обработка массовых переводов |
| LEXI-04 | Перевод диалога | Интерфейс | Перевод чата в реальном времени |

### 5.3 ИИ-сотрудники и жизненный цикл тикета

![ticketing-imgs-2025-12-31-22-55-04](https://static-docs.nocobase.com/ticketing-imgs-en-2025-12-31-23-24-22.png)

### 5.4 Примеры ответов ИИ

#### SAM-01 Ответ анализа тикета

```json
{
  "category_code": "COMPUTER",
  "sentiment": "NEGATIVE",
  "urgency": "HIGH",
  "keywords": ["ERP", "ошибка входа", "таймаут", "закрытие месяца"],
  "confidence": 0.92,
  "reasoning": "Тикет описывает проблему со входом в ERP, что мешает финансовому отделу закрыть месяц. Срочность высокая.",
  "suggested_reply": "Уважаемый клиент, спасибо за ваше сообщение...",
  "source_language_code": "zh",
  "is_translated": true,
  "description_translated": "Здравствуйте, не удается войти в систему ERP..."
}
```

#### GRACE-01 Ответ генерации сообщения

```
Уважаемый господин Чжан,

Благодарим вас за обращение по поводу проблемы со входом в ERP. Я прекрасно понимаю, что это
влияет на работу вашей компании по закрытию месяца, поэтому мы присвоили этому вопросу высокий приоритет.

Текущая ситуация:
- Техническая команда проверяет проблемы с подключением к серверу.
- Ожидаем предоставить обновление в течение 30 минут.

Тем временем вы можете попробовать:
1. Войти через резервный адрес: https://erp-backup.company.com
2. Если вам срочно нужны отчеты, свяжитесь с нами для помощи в экспорте.

Если у вас возникнут вопросы, пожалуйста, обращайтесь.

С уважением,
Команда технической поддержки
```

### 5.5 ИИ-фильтр эмоционального интеллекта

Проверка качества ответов от Grace блокирует следующие проблемы:

| Тип проблемы | Пример оригинала | Рекомендация ИИ |
|----------|----------|--------|
| Негативный тон | «Нет, это не гарантийный случай» | «Данная неисправность не подпадает под бесплатную гарантию, мы можем предложить платный ремонт» |
| Обвинение клиента | «Вы сами это сломали» | «В ходе проверки установлено, что неисправность вызвана случайным повреждением» |
| Снятие ответственности | «Это не наша проблема» | «Позвольте мне помочь вам разобраться в причинах проблемы» |
| Равнодушие | «Не знаю» | «Я уточню для вас необходимую информацию» |
| Конфиденциальные данные | «Ваш пароль: abc123» | [Блокировка] Содержит конфиденциальную информацию, отправка запрещена |

---

## 6. Система базы знаний

### 6.1 Источники знаний

![ticketing-imgs-2025-12-31-22-55-20](https://static-docs.nocobase.com/ticketing-imgs-en-2025-12-31-23-24-57.png)


### 6.2 Процесс превращения тикета в знание

![ticketing-imgs-2025-12-31-22-55-38](https://static-docs.nocobase.com/ticketing-imgs-en-2025-12-31-23-25-18.png)

**Критерии оценки**:
- **Универсальность**: Является ли это частой проблемой?
- **Полнота**: Является ли решение ясным и законченным?
- **Повторяемость**: Можно ли использовать эти шаги повторно?

### 6.3 Механизм рекомендаций знаний

Когда агент открывает детали тикета, Max автоматически рекомендует подходящие знания:

```
┌────────────────────────────────────────────────────────────┐
│ 📚 Рекомендованные знания                      [Развернуть] │
│ ┌────────────────────────────────────────────────────────┐ │
│ │ KB-T0042 Диагностика сервосистемы ЧПУ   Совпадение: 94% │ │
│ │ Содержит: коды ошибок, шаги проверки привода           │ │
│ │ [Просмотр] [Применить к ответу] [Полезно]              │ │
│ ├────────────────────────────────────────────────────────┤ │
│ │ KB-T0038 Руководство XYZ-CNC3000        Совпадение: 87% │ │
│ │ Содержит: частые сбои, план обслуживания               │ │
│ │ [Просмотр] [Применить к ответу] [Полезно]              │ │
│ └────────────────────────────────────────────────────────┘ │
└────────────────────────────────────────────────────────────┘
```

---

## 7. Движок рабочих процессов

### 7.1 Классификация рабочих процессов

| Код | Категория | Описание | Способ запуска |
|------|------|------|----------|
| WF-T | Процесс тикета | Управление жизненным циклом тикета | События формы |
| WF-S | Процесс SLA | Расчет и предупреждения SLA | События формы / Расписание |
| WF-C | Процесс комментариев | Обработка и перевод комментариев | События формы |
| WF-R | Процесс оценок | Приглашения к оценке и статистика | События формы / Расписание |
| WF-N | Процесс уведомлений | Отправка уведомлений | События |
| WF-AI | Процесс ИИ | Анализ и генерация ИИ | События формы |

### 7.2 Основные рабочие процессы

#### WF-T01: Процесс создания тикета

![ticketing-imgs-2025-12-31-22-55-51](https://static-docs.nocobase.com/ticketing-imgs-en-2025-12-31-23-25-48.png)

#### WF-AI01: ИИ-анализ тикета

![ticketing-imgs-2025-12-31-22-56-03](https://static-docs.nocobase.com/ticketing-imgs-en-2025-12-31-23-26-14.png)

#### WF-AI04: Перевод и проверка комментариев

![ticketing-imgs-2025-12-31-22-56-19](https://static-docs.nocobase.com/ticketing-imgs-en-2025-12-31-23-26-38.png)

#### WF-AI03: Генерация знаний

![ticketing-imgs-2025-12-31-22-56-37](https://static-docs.nocobase.com/ticketing-imgs-en-2025-12-31-23-26-54.png)

### 7.3 Запланированные задачи

| Задача | Частота | Описание |
|------|----------|------|
| Проверка SLA | Каждые 5 минут | Поиск тикетов, срок которых скоро истечет |
| Автозакрытие | Ежедневно | Закрытие тикетов в статусе resolved через 3 дня |
| Опрос удовлетворенности | Ежедневно | Отправка приглашения через 24 часа после закрытия |
| Обновление статистики | Ежечасно | Обновление данных по тикетам клиентов |

---

## 8. Дизайн меню и интерфейса

### 8.1 Панель администратора

![ticketing-imgs-2025-12-31-22-59-10](https://static-docs.nocobase.com/ticketing-imgs-en-2025-12-31-23-27-19.png)

### 8.2 Портал клиента

![ticketing-imgs-2025-12-31-22-59-32](https://static-docs.nocobase.com/ticketing-imgs-en-2025-12-31-23-27-35.png)

### 8.3 Дизайн дашбордов

#### Вид для руководителей

| Компонент | Тип | Описание данных |
|------|------|----------|
| Соблюдение SLA | Индикатор | Доля соблюдения ответа/решения за месяц |
| Тренды удовлетворенности | График | Изменение оценки за последние 30 дней |
| Объем тикетов | Гистограмма | Количество тикетов за последние 30 дней |
| Распределение по бизнесу | Пиктограмма | Доля каждого типа бизнеса |

#### Вид для супервайзеров

| Компонент | Тип | Описание данных |
|------|------|----------|
| Предупреждения о просрочке | Список | Тикеты, срок которых истекает или истек |
| Нагрузка сотрудников | Гистограмма | Кол-во тикетов у каждого члена команды |
| Распределение очереди | Стек-диаграмма | Кол-во тикетов по статусам |
| Скорость обработки | Тепловая карта | Распределение среднего времени обработки |

#### Вид для агентов

| Компонент | Тип | Описание данных |
|------|------|----------|
| Мои задачи | Карточка | Кол-во тикетов в очереди |
| Распределение приоритетов | Пиктограмма | Доля P0/P1/P2/P3 |
| Статистика за сегодня | Индикатор | Кол-во обработанных/решенных сегодня |
| Обратный отсчет SLA | Список | 5 самых срочных тикетов |

---

## Приложение

### A. Конфигурация типов бизнеса

| Код типа | Название | Иконка | Таблица расширения |
|----------|------|------|------------|
| repair | Ремонт оборудования | 🔧 | nb_tts_biz_repair |
| it_support | IT-поддержка | 💻 | nb_tts_biz_it_support |
| complaint | Жалоба клиента | 📢 | nb_tts_biz_complaint |
| consultation | Консультация | ❓ | Нет |
| other | Другое | 📝 | Нет |

### B. Коды категорий

| Код | Название | Описание |
|------|------|------|
| CONVEYOR | Конвейерные системы | Проблемы с конвейерами |
| PACKAGING | Упаковочные машины | Проблемы с упаковкой |
| WELDING | Сварочное оборудование | Проблемы со сваркой |
| COMPRESSOR | Компрессоры | Проблемы с компрессорами |
| COLD_STORE | Хладокомбинаты | Проблемы с холодильными камерами |
| CENTRAL_AC | Центр. кондиционирование | Проблемы с вентиляцией |
| FORKLIFT | Погрузчики | Проблемы с погрузчиками |
| COMPUTER | Компьютеры | Проблемы с «железом» |
| PRINTER | Принтеры | Проблемы с принтерами |
| PROJECTOR | Проекторы | Проблемы с проекторами |
| INTERNET | Сеть | Проблемы с интернет-соединением |
| EMAIL | Почта | Проблемы с почтовой системой |
| ACCESS | Доступ | Проблемы с правами доступа |
| PROD_INQ | Запрос о продукте | Консультация по продукту |
| COMPLAINT | Общая жалоба | Общие претензии |
| DELAY | Задержка логистики | Жалоба на сроки доставки |
| DAMAGE | Повреждение упаковки | Жалоба на порчу упаковки |
| QUANTITY | Недостача | Жалоба на некомплект |
| SVC_ATTITUDE | Качество сервиса | Жалоба на отношение персонала |
| PROD_QUALITY | Качество продукта | Жалоба на качество товара |
| TRAINING | Обучение | Запрос на обучение |
| RETURN | Возврат | Запрос на возврат товара |

---

*Версия документа: 2.0 | Последнее обновление: 2026-01-05*