---
# System prepended metadata

title: 'Итоговое ТЗ согласно брифу (https://hackmd.io/3giJn8p0Rf6S8QcsgVUhkg)'

---


## Клиентская часть

1. Веб-сайт должен быть оптимизирован для SEO.
2. Страницы должны генерироваться на основе услуг, указанных в административной панели.
3. Хэдер, преимущества, отзывы, FAQ, футер должны быть статичными, за исключением колонки "Услуги" в футере.

### Личный кабинет клиента

1. Вход и восстановление пароля должны быть статичными.
2. Необходимо подтверждение почты при регистрации, но с возможностью его отключения.

### Реферальная система

1. У клиента должна быть реферальная ссылка. Если по ней зарегистрируются, то хозяин ссылки будет получать X% от трат и пополнений того, кто по ссылке зарегистрировался. В админке должна быть возможность менять процент отчислений как для всех, так и для отдельных пользователей.

### История заказов

1. Таблица генерируется на основе списка заказов + есть фильтры по статусам заказов.

### Новый заказ

1. Необходимо уточнить, должен ли UI отличаться в зависимости от тарифов (Drip-feed, Subscriptions etc) или параметры этих услуг задаются в админке.

### Купоны

1. Выводим действующие у пользователя купоны.
2. Делаем купоны на пополнение и на скидку на заказ.

### Цены

1. Таблица генерируется исходя из обозначенных услуг.

### Поддержка

1. Есть возможность создать тикет, посмотреть историю тикетов, найти тикет по заголовку.

### Пополнение баланса

1. Платежная система Unitpay, PrimePayments и Payeer.
2. Таблица генерируется исходя из истории транзакций.

### Лутбоксы

1. Раз в N времени пользователь может крутить барабан и получать купоны.
2. В админке добавляем настройку с частотой выпадения тех или иных бонусов.

## Админка

### Управление пользователями

1. Отображение в таблице (username, email, id, потраченные средства, дата регистрации, дата последнего входа в админку, скидка). Поиск по таблице по email/username.
2. Возможность банить пользователя, добавлять пользователей, сбрасывать пароль, смотреть историю аутентификаций, блокировать пользователя.
3. Возможность давать купон.

### Заказы

1. Фильтрация по статусам, дате, провайдерам, пользователям, услугам.
2. Экспорт в csv.

### Услуги

1. Импорт из API провайдеров.
2. CRUD категорий.
3. CRUD сервисов.
4. Параметры услуги: min/max количество, цена, цена провайдера, наценка (fix/percent), on/off Drip-feed.

### Отчеты

1. Составление и выгрузка отчетов по пополнениям, прибыли, обращениям, заказам.

### Тикеты

1. Чаты с клиентами по тикетам.
2. Поиск по чатам.

## Интеграция с Grafana

### Таблица по платежам

1. Необходимо создать дашборд, отображающий информацию о платежах. Данные должны включать дату платежа, сумму, идентификатор пользователя, идентификатор платежа и статус платежа.

### Количество заказов

1. Дашборд должен отображать количество заказов за выбранный период времени. Должна быть возможность выбора периода.

### Тикеты

1. Дашборд должен отображать количество новых тикетов за день и количество ответов на тикеты. Ответы должны считаться по сообщениям внутри тикета.

### Отслеживание работы службы поддержки

1. Дашборд должен отображать общую статистику работы службы поддержки, включая количество обработанных тикетов, среднее время ответа и т.д.
2. Должна быть возможность просмотра статистики по каждому сотруднику службы поддержки отдельно.

### Выгрузка данных

1. Должна быть возможность выгрузки данных по конкретным пользователям, включая информацию за выбранный период, по услугам, с фильтром по статусам.

## Этапы разработки

### Этап 1: Подготовка и оптимизация веб-сайта, разработка личного кабинета клиента

1. Оптимизация веб-сайта для SEO.
2. Генерация страниц на основе услуг, указанных в административной панели.
3. Создание статичных элементов сайта: хэдер, преимущества, отзывы, FAQ, футер.
4. Реализация функций входа и восстановления пароля.
5. Реализация системы подтверждения почты при регистрации.

### Этап 2: Реализация реферальной системы, системы заказов и купонов

1. Разработка реферальной системы с возможностью изменения процента отчислений.
2. Реализация системы истории заказов с фильтрацией по статусам.
3. Разработка системы создания новых заказов.
4. Разработка системы купонов с возможностью просмотра действующих купонов и создания купонов на пополнение и скидку на заказ.

## Этап 3: Разработка системы поддержки, пополнения баланса и лутбоксов

1. Реализация системы поддержки с возможностью создания тикетов и просмотра истории тикетов.
2. Интеграция с платежными системами Unitpay, PrimePayments и Payeer.
3. Разработка системы лутбоксов с возможностью настройки частоты выпадения бонусов.

### Этап 4: Разработка административной панели

1. Разработка системы управления пользователями.
2. Разработка системы управления заказами.
3. Разработка системы управления услугами.
4. Разработка системы составления и выгрузки отчетов.
5. Разработка системы управления тикетами.

### Этап 5: Интеграция с Grafana

1. Разработка дашборда для отображения информации о платежах.
2. Разработка дашборда для отображения количества заказов.
3. Разработка дашборда для отображения информации о тикетах.
4. Разработка дашборда для отслеживания работы службы поддержки.
5. Разработка функционала для выгрузки данных.
