Работа сайта (частичный функционал для отображения возможностей сервиса):
На домашней странице отображены все заявки с фильтрами.
Можем создать заявку:
Отредактировать и удалить ее:
Аутентификация реализована с помощью JWT токена. Мутация register
используется для регистрации сотрудников, почта и пароль – обязательные поля:
Мутация login
аутентифицирует сотрудника:
Мутация updateUser
используется для смены почты сотрудника:
Кверя me
возвращает данные текущего сотрудника:
Поля:
- ID
- Телеграм ID
- Номер телефона
- Имя
Кверя allCustomers
возвращает всех клиентов:
Кверя customerById
возращает клиента по ID.
Мутация createCustomer
создает запись клиента. Поле номер телефона уникальное.
Мутация updateCustomer
меняет запись клиента. Для изменения данных необходимо ввести номер телефона клиента. Если у клиента поменялся номер телефона - создать новую карточку.
Мутация deleteCustomer
удаляет запись клиента.
- ID
- Дата создания
- Клиент
- Ответственный сотрудник по заявке
- Тип заявки:
- Консультация
- Диагностика
- Ремонт
- Прочее
- Статус заявки:
- Принято
- В работе
- Готово
- Закрыто
- Дополнительная информация (описание неисправности, результат консультации и т.д.)
Кверя allTasks
возвращает все заявки.
- по клиентам(по номеру телефона)
- по статусам (одному или нескольким)
- по категориям
- по дате создания заявки
- по интервалу дат
Кверя taskById
возвращает заявку по ID.
Мутация createTask
создает заявки. Клиент заполняется по полю номер телефона. Если такого клиента не существует в базе - создается новая запись. Данные пользователя как ответственного сотрудника по заявке автоматически заполняются по данным входа.
Мутация updateTask
изменяет заявку по ее ID. Доступные поля для изменения: статус, тип заявки, описание.
Мутация deleteTask
удаляет заявку по ID.
Функционал телеграм-бота:
При старте бот предлагает ввести телефон, в БД создается запись по клиенту с данными: телеграм ID, номер телефона, имя из телеграмма.
При любом вводе данных бот отправляет список всех заявок.
При изменении статуса заявки бот отправляет уведомление.