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

Config Servisi ve Meeting Status Seçenekleri

ConfigService

services/ConfigService.ts — API’den dinamik konfigürasyon değerleri.

getSchoolAnsweredLeadStatusOptions()

Lead detay modal’ında “Görüşme Durumu” seçici için seçenekler:

GET /customer/configs?filter[school-answered-lead-status]=1

Dönen ConfigItem[]:

{
  id: number,
  type: string,
  item_id: number,         // Güncelleme için kullanılır
  item_value: string,      // Gösterilecek metin
  status: string,
  logic_status: string,
  description: string
}

item_value örnekleri: “Kayıt gerçekleşti”, “Randevu verildi”, “Ulaşılamadı”, “Anlaşma gerçekleşmedi” vb.

Lead Detay Modal’daki Kullanım

  1. Modal açılırken ConfigService.getSchoolAnsweredLeadStatusOptions() çağrılır
  2. Seçenekler Picker/ActionSheetIOS ile gösterilir
  3. Kullanıcı seçtiğinde LeadsService.updateLead(id, { school_answered_deal_status: item_id }) çağrılır

Hardcoded Kategori vs API Seçenekleri

Hardcoded kategori renklendirmesi (MEETING_STATUS_CATEGORIES) statik bir listedir. API’den gelen yeni seçenekler bu kategorilere match etmeyebilir → null category → neutral renk kullanılır.