/** * 14 системных и пользовательских статусов воронки. * * Источник истины: db/schema.sql:2130 (lead_statuses seed). НЕ из BRANDBOOK_v2 §3.6 * (расхождение #1 handoff vs ТЗ из реестра v1.13: handoff содержит 14 «обобщённых» * статусов, не совпадающих с реальными slug'ами; пересечение всего 2 — Переговоры * и Оплачено). * * При фактической интеграции с API подтягиваем `GET /api/lead-statuses` — * система+tenant-кастом. Сейчас — компайл-тайм snapshot для UI. */ export interface LeadStatus { slug: string; nameRu: string; isSystem: boolean; sortOrder: number; colorHex: string; } export const LEAD_STATUSES: LeadStatus[] = [ { slug: 'new', nameRu: 'Новые', isSystem: true, sortOrder: 1, colorHex: '#3B82F6' }, { slug: 'viewed', nameRu: 'Просмотрено', isSystem: true, sortOrder: 2, colorHex: '#8B5CF6' }, { slug: 'worked', nameRu: 'Проработан', isSystem: true, sortOrder: 3, colorHex: '#06B6D4' }, { slug: 'base', nameRu: 'База', isSystem: false, sortOrder: 4, colorHex: '#64748B' }, { slug: 'missed', nameRu: 'Недозвон', isSystem: false, sortOrder: 5, colorHex: '#F59E0B' }, { slug: 'negotiations', nameRu: 'Переговоры', isSystem: false, sortOrder: 6, colorHex: '#EAB308' }, { slug: 'waiting_payment', nameRu: 'Ожидаем оплаты', isSystem: false, sortOrder: 7, colorHex: '#A78BFA' }, { slug: 'partnership', nameRu: 'Партнерка', isSystem: false, sortOrder: 8, colorHex: '#EC4899' }, { slug: 'paid', nameRu: 'Оплачено', isSystem: true, sortOrder: 9, colorHex: '#10B981' }, { slug: 'closed', nameRu: 'Закрыто и не реализовано', isSystem: true, sortOrder: 10, colorHex: '#6B7280' }, { slug: 'test_drive', nameRu: 'Тест драйв', isSystem: false, sortOrder: 11, colorHex: '#14B8A6' }, { slug: 'hot', nameRu: 'Горячий', isSystem: false, sortOrder: 12, colorHex: '#EF4444' }, { slug: 'replacement', nameRu: 'На замену', isSystem: false, sortOrder: 13, colorHex: '#F97316' }, { slug: 'final_missed', nameRu: 'Конечный недозвон', isSystem: true, sortOrder: 14, colorHex: '#1F2937' }, ];