Обновлено: 26.10.2025 Статус: ✅ Основные модели определены Версия: 1.0
Этот документ описывает основные доменные модели AI-ассистента Super Valera, их атрибуты, поведения и взаимосвязи. Модели формализуют бизнес-сущности кузовного ремонта и обеспечивают основу для AI-понимания и разработки.
Описание: Физическое лицо, владелец автомобиля, взаимодействующее с AI-ассистентом
Атрибуты:
id- Уникальный идентификатор (Telegram ID)first_name- Имя клиентаusername- Telegram username (@handle)phone_number- Контактный телефонcommunication_preference- Предпочтительный способ связиlanguage- Язык коммуникации (русский)created_at- Дата первого обращенияlast_interaction- Дата последнего взаимодействияstatus- Статус клиента (new, active, returning, inactive)
Поведение:
- Инициирует диалог с AI-ассистентом
- Предоставляет информацию об автомобиле и повреждениях
- Принимает решения о ремонте и записи
- Оценивает качество обслуживания
Связи:
- 1:* → Автомобили
- 1:* → Заявки
- 1:* → Диалоги
Описание: Транспортное средство клиента, нуждающееся в ремонте или обслуживании
Атрибуты:
id- Уникальный идентификаторcustomer_id- ID владельцаmake- Марка (Toyota, BMW, Lada)model- Модель (Camry, X5, Granta)year- Год выпускаcolor- Цвет кузоваvin- VIN-код (если известен)license_plate- Государственный номерbody_type- Тип кузова (седан, хэтчбек, SUV)created_at- Дата добавления в систему
Поведение:
- Является объектом ремонтных работ
- Накапливает историю повреждений и ремонтов
- Участвует в страховых случаях
Связи:
- *:1 → Клиент
- 1:* → Повреждения
- 1:* → Заявки
Описание: Конкретное повреждение элемента кузова, требующее ремонта
Атрибуты:
id- Уникальный идентификаторvehicle_id- ID автомобиляbody_element- Элемент кузова (передняя дверь, бампер, крыло)damage_type- Тип повреждения (вмятина, царапина, трещина, деформация)severity- Степень тяжести (легкая, средняя, тяжелая)description- Текстовое описание поврежденияlocation- Местоположение на элементе (верх, низ, центр)size- Примерные размеры поврежденияphotos- Ссылки на фотографии поврежденияestimated_repair_method- Предполагаемый метод ремонтаpreliminary_cost- Предварительная стоимость ремонтаrequires_inspection- Требуется ли очный осмотрinsurance_relevant- Относится ли к страховому случаюcreated_at- Дата фиксации повреждения
Поведение:
- Оценивается по стоимости и методам ремонта через диалог
- Включается в заявки на ремонт
- Участвует в страховых случаях
Связи:
- *:1 → Автомобиль
- : → Заявки (через RepairItem)
Описание: Конкретная услуга по ремонту или обслуживанию кузова
Атрибуты:
id- Уникальный идентификаторname- Наименование услугиcategory- Категория (PDR, покраска, полировка, замена)description- Подробное описание услугиbase_price- Базовая стоимостьprice_unit- Единица измерения цены (за элемент, за м², за час)estimated_duration- Примерное время выполненияcomplexity_level- Уровень сложности (простой, средний, сложный)required_equipment- Необходимое оборудованиеrequired_skills- Требуемые навыки специалистаis_active- Активность услуги
Поведение:
- Предлагается AI на основе анализа повреждений
- Включается в расчет стоимости
- Выполняется специалистами сервиса
Связи:
- : → Заявки (через RepairItem)
Описание: Формализованный запрос на ремонт или консультацию
Атрибуты:
id- Уникальный идентификаторcustomer_id- ID клиентаvehicle_id- ID автомобиляstatus- Статус (new, confirmed, in_progress, completed, cancelled)request_type- Тип заявки (consultation, repair, insurance, inspection)description- Описание запроса клиентаpreferred_date- Предпочтительная датаpreferred_time- Предпочтительное времяurgency- Срочность (low, normal, high)total_estimated_cost- Общая предварительная стоимостьestimated_duration- Предполагаемая продолжительностьassigned_manager_id- ID назначенного менеджераcreated_at- Дата созданияupdated_at- Дата последнего обновленияnotes- Заметки менеджера
Поведение:
- Создается AI на основе диалога с клиентом
- Передается менеджеру для обработки
- Обновляется на протяжении всего процесса обслуживания
Связи:
- *:1 → Клиент
- *:1 → Автомобиль
- 1:* → RepairItems
- 1:* → Фотоотчеты
Описание: Ситуация, связанная с ДТП и страховым возмещением
Атрибуты:
id- Уникальный идентификаторservice_request_id- ID связанной заявкиinsurance_type- Тип страховки (ОСАГО, КАСКО)insurance_company- Страховая компанияpolicy_number- Номер полисаincident_date- Дата ДТПincident_description- Описание происшествияclaim_status- Статус страхового случая (draft, submitted, approved, rejected)required_documents- Список требуемых документовdocument_photos- Фотографии документовestimated_coverage- Предполагаемое покрытие страховкиdeductible- Франшизаcreated_at- Дата создания
Поведение:
- Инициируется при упоминании ДТП в диалоге
- Требует сбора и проверки документов
- Влияет на процесс ремонта и оплаты
Связи:
- 1:1 → Заявка
- 1:* → Документы
Описание: История взаимодействия клиента с AI-ассистентом
Атрибуты:
id- Уникальный идентификаторcustomer_id- ID клиентаstarted_at- Дата начала диалогаlast_message_at- Дата последнего сообщенияstatus- Статус (active, paused, completed, transferred)context_summary- Краткое содержание диалогаmessages_count- Количество сообщенийai_confidence_score- Оценка уверенности AIescalation_required- Требуется ли передача менеджеруrelated_service_request_id- ID связанной заявки
Поведение:
- Накапливает контекст для AI-взаимодействий
- Сохраняется для анализа качества
- Используется для улучшения AI-моделей
Связи:
- *:1 → Клиент
- *:1 → Заявка (опционально)
erDiagram
Клиент ||--o{ Автомобиль : владеет
Клиент ||--o{ Заявка : создает
Клиент ||--o{ Диалог : ведет
Автомобиль ||--o{ Повреждение : имеет
Автомобиль ||--o{ Заявка : относится
Повреждение }o--o{ Услуга : требует
Повреждение }o--|| Заявка : включается
Заявка ||--o{ Фотоотчет : содержит
Заявка ||--o| СтраховойСлучай : может_быть
Заявка }o--o{ Услуга : включает
Диалог }o--|| Заявка : может_привести_к
new → confirmed → in_progress → completed
↓ ↓ ↓
cancelled cancelled cancelled
identified → analyzed → quoted → repaired → verified
active → paused → completed
↓ ↓ ↓
transferred → resumed → archived
- Фокус: Диалог, Повреждение, Услуга
- Цель: Предоставление экспертной консультации
- Результат: Понимание потребностей клиента
- Фокус: Страховой случай, Документы, Заявка
- Цель: Помощь в оформлении страховки
- Результат: Подготовленный пакет документов
- Фокус: Заявка, Клиент, Автомобиль
- Цель: Бронирование времени и передача менеджеру
- Результат: Созданная и переданная заявка
- Каждая заявка должна иметь хотя бы одно повреждение
- Предварительная оценка может отличаться от финальной не более чем на 20%
- Страховой случай требует обязательного фотоотчета
- AI не может создавать заявки без подтверждения клиента
- VIN-код должен соответствовать формату производителя
- Стоимость не может быть отрицательной
- Дата ДТП не может быть в будущем
- Телефон клиента должен быть валидным
- Terminology:
terminology.md- Объединенная терминология и бизнес-правила - Bounded Contexts:
bounded-contexts.md- Контекстуальные границы
Последнее обновление: 26.10.2025 Ответственный: Domain Expert Версия: 1.0