# ТЗ · FieldOps — заявки и выездные специалисты

**Источник заказа:** FL.ru, проект №5517595 «Разработать систему для учёта заявок и работы выездных специалистов»
https://www.fl.ru/projects/5517595/razrabotat-sistemu-dlya-ucheta-zayavok-i-rabotyi-vyiezdnyih-spetsialistov.html

**Бюджет заказа:** по договорённости
**Тип трекера:** операционный трекер заявок (field service)

## 1. Цель
Диспетчер принимает заявку, назначает специалиста, а руководитель видит, что происходит «в поле»: кто где, какие работы просрочены, какие акты не закрыты. Специалист работает с телефона: чек-лист, фото, подпись, закрытие заявки.

## 2. Роли
| Роль | Возможности |
|---|---|
| Диспетчер | создаёт заявки, назначает и переназначает специалистов, контролирует SLA |
| Специалист | видит только свои заявки, меняет статус, заполняет чек-лист, прикладывает фото, закрывает акт |
| Руководитель | дашборд, нагрузка, просрочки, стоимость работ, выгрузки |
| Администратор | пользователи, справочники, интеграции |

## 3. Экраны
1. **Дашборд** — заявки по статусам, SLA-просрочки, загрузка специалистов, выручка по работам.
2. **Диспетчерская** — таблица заявок с фильтрами, назначение, приоритет, адрес, слот времени.
3. **Мои выезды (специалист)** — карточки на день, маршрут, чек-лист, фото, закрытие.
4. **Карточка заявки** — таймлайн, клиент, оборудование, работы, материалы, акт.
5. **Справочники** — специалисты, типы работ, стоимость.

## 4. Функции MVP
- Заявка: клиент, телефон, адрес, тип работ, приоритет, слот, исполнитель, описание.
- Статусы: `new → assigned → onway → onsite → done → closed`, отмена с причиной.
- Ролевая модель: специалист видит только свои заявки; редактирование — по правам.
- Чек-лист работ с отметками; прогресс в процентах.
- Фотоотчёт: загрузка файла, превью (в MVP — в dataURL, без сервера).
- Акт: номер, сумма работ, материалы, отметка «подписан клиентом».
- SLA: расчёт времени до дедлайна, подсветка просрочки.
- Дашборд: счётчики по статусам, нагрузка по специалистам, сумма закрытых актов.
- PWA: manifest + service worker, установка на телефон, работа офлайн после первого визита.
- Интеграция с Битрикс24 — заглушка с описанием вебхука и полей сделки.

## 5. Критерии готовности
1. Диспетчер создаёт заявку и назначает специалиста — она появляется у него в «Моих выездах».
2. Специалист не видит чужие заявки и не может менять чужие.
3. Переход в «Выполнена» невозможен, пока чек-лист не отмечен на 100%.
4. Акт нельзя закрыть без суммы и отметки о подписи.
5. Просроченные по SLA заявки попадают в отдельный блок дашборда.
6. После перезагрузки данные и фото сохраняются.
7. Приложение устанавливается как PWA и открывается офлайн.

## 6. Вопросы клиенту
1. Сколько специалистов и сколько заявок в день? Нужна ли оптимизация маршрута?
2. Какие SLA по типам работ и что считается просрочкой — выезд или закрытие?
3. Нужна ли интеграция с Битрикс24 в MVP или достаточно выгрузки?
4. Кто подписывает акт — клиент на месте (подпись пальцем) или офис?
5. Нужен ли учёт материалов со склада и списание?
6. Какие фото обязательны: до/после/серийный номер?

## 7. Ограничения MVP
Один браузер, localStorage, фото в dataURL (ограничение ~5 МБ). Серверная часть, авторизация и реальная интеграция — вторая итерация.
