5.6 KiB
5.6 KiB
🎫 Система тикетов
Что добавлено
✅ Новые возможности
-
Система тикетов - полноценная система поддержки с чатом
-
Три статуса тикетов:
- 🟡 На рассмотрении (pending) - новый тикет
- 🔵 В работе (in_progress) - тикет взят в работу
- 🟢 Закрыт (closed) - тикет решён
-
Новая роль "Тех. поддержка" (support):
- Доступ ко всем тикетам
- Возможность менять статусы тикетов
- Возможность отвечать на тикеты
-
Кнопка "Тикеты" в header рядом с кнопкой "Пользователи"
📋 Возможности по ролям
Обычные пользователи (user)
- ✅ Создавать тикеты
- ✅ Просматривать свои тикеты
- ✅ Отправлять сообщения в свои тикеты
- ❌ Менять статусы тикетов
- ❌ Видеть чужие тикеты
Тех. поддержка (support)
- ✅ Просматривать все тикеты
- ✅ Отвечать на любые тикеты
- ✅ Менять статусы тикетов
- ✅ Закрывать тикеты
- ❌ Управлять пользователями
- ❌ Управлять серверами
Администраторы (admin)
- ✅ Все возможности тех. поддержки
- ✅ Управление пользователями
- ✅ Управление серверами
- ✅ Назначение ролей
🚀 Как использовать
Создание тикета
- Нажмите кнопку "Тикеты" в header
- Нажмите "Создать тикет"
- Заполните тему и описание проблемы
- Нажмите "Создать"
Работа с тикетом
- Откройте список тикетов
- Нажмите на нужный тикет
- Пишите сообщения в чат
- Тех. поддержка и админы могут менять статус тикета
Назначение роли "Тех. поддержка"
- Войдите как администратор (none / none)
- Нажмите кнопку "Пользователи"
- Найдите нужного пользователя
- В выпадающем списке выберите "Тех. поддержка"
- Роль изменится автоматически
📁 Новые файлы
Backend
backend/tickets.json- хранилище тикетов (создаётся автоматически)- Добавлены endpoints в
backend/main.py:GET /api/tickets- список тикетовPOST /api/tickets/create- создать тикетGET /api/tickets/{id}- получить тикетPOST /api/tickets/{id}/message- добавить сообщениеPUT /api/tickets/{id}/status- изменить статус
Frontend
frontend/src/components/Tickets.jsx- список тикетовfrontend/src/components/TicketChat.jsx- чат тикетаfrontend/src/components/CreateTicketModal.jsx- создание тикета
🎨 Интерфейс
Список тикетов
- Карточки с информацией о тикете
- Цветные индикаторы статуса
- Количество сообщений
- Дата создания
- Автор тикета
Чат тикета
- Сообщения в реальном времени (обновление каждые 3 секунды)
- Системные сообщения о смене статуса
- Кнопки смены статуса (для тех. поддержки и админов)
- Отправка сообщений (если тикет не закрыт)
🔧 Технические детали
Статусы тикетов
pending // На рассмотрении (жёлтый)
in_progress // В работе (синий)
closed // Закрыт (зелёный)
Роли пользователей
user // Обычный пользователь
support // Тех. поддержка
admin // Администратор
Структура тикета
{
"id": "1",
"title": "Проблема с сервером",
"description": "Описание проблемы",
"author": "username",
"status": "pending",
"created_at": "2024-01-14T12:00:00",
"updated_at": "2024-01-14T12:00:00",
"messages": [
{
"author": "username",
"text": "Текст сообщения",
"timestamp": "2024-01-14T12:00:00"
}
]
}
✅ Готово!
Система тикетов полностью интегрирована в MC Panel. Пользователи могут создавать тикеты, а тех. поддержка и администраторы могут на них отвечать и управлять статусами.
Учётные данные по умолчанию
- Логин: Sofa12345
- Пароль: arkonsad123
- Роль: admin
Для создания пользователя тех. поддержки:
- Зарегистрируйте нового пользователя
- Войдите как админ
- Назначьте ему роль "Тех. поддержка"