Proje: Okul B2B App · Hub: Okul B2B App — Domain

Lead Durum Akışı ve Güncelleme

Durum Hiyerarşisi

Lead’de iki farklı durum alanı var:

1. interaction_status (API’den gelen, read-only)

Okul.com.tr’nin belirlediği iletişim durumu:

{
  background_color: '#...',
  text_color: '#...',
  text: 'Yeni Talep',
  type: 'new_request'
}

2. school_answered_lead_status (Okul tarafından güncellenebilir)

Okul’un müşteriye verdiği yanıt durumu (meeting status):

  • item_id: ID değeri (güncelleme için kullanılır)
  • item_value: Görüntülenecek metin (“Kayıt gerçekleşti” vb.)

Lead Güncelleme

LeadsService.updateLead(id, updates)PUT /customer/leads/{id}

Güncellenebilen alan: school_answered_deal_status (integer, item_id)

UI Durum Mapping (Legacy)

mapStatusToUIStatus() API status → UI durum:

API StatusUI Status
new_requestnew
waiting_one_day, waiting_two_dayswarning
waiting_three_days, waiting_four_daysurgent
waiting_five_days ve üzericritical

Lead Detay Modal

LeadDetailModal içinde:

  • Veli bilgileri (ad, telefon)
  • Öğrenci bilgileri (ad, sınıf, doğum tarihi)
  • Meeting status seçici (school_answered_lead_status)
  • Notlar (NotesManager)
  • Kilitli lead uyarısı (isRestricted)

Kilitli Lead (isRestricted / is_locked)

is_locked: true durumunda:

  • Telefon numarası görünmez / gizlenir
  • WhatsApp butonu devre dışı kalır
  • RestrictionWarningOverlay bileşeni gösterilir