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

Lead Detay Modal Yapısı (LeadDetail)

constants/LeadDetailData.tsLeadDetail interface ve LeadDetailModal bileşeni.

LeadDetail Bölümleri

Başlık

  • schoolName, requestDate, requestTime
  • statusText, interaction_status (badge)
  • viewed_at — Daha önce görüntülenmiş mi? (collapse bilgisi)

Veli Bilgileri

  • parentName, parentPhone

Öğrenci Bilgileri

  • studentName, birthDate, currentAge, studentClass

Detaylar

  • infoType — stage (Bilgi Formu, Randevu Talebi vb.)
  • schoolAuthority — Sorumlu personel
  • okulcomControl — Okul.com.tr kontrol durumu

Görüşme Durumu (Güncellenebilir)

  • meetingStatus — Text (görüntüleme)
  • school_answered_deal_status — item_id (API güncelleme)

Kısıtlama

  • isRestricted — Kilitli lead (telefon gizli)
  • message_visible_status1 = mesaj görünür, 0 = gizli

Notlar

  • savedNotes: SavedNote[]NotesService ile yüklenir

ACTION_BUTTONS

Lead detay modalındaki aksiyon butonları:

  • AraLinking.openURL('tel:...')
  • WhatsAppLinking.openURL('whatsapp://...')
  • Not Ekle — NotesManager açar

Kısıtlı lead’lerde (isRestricted: true) telefon ve WhatsApp butonları devre dışı.

KeyboardAvoidingView Pattern

<KeyboardAvoidingView
  behavior={Platform.OS === 'ios' ? 'padding' : undefined}
  keyboardVerticalOffset={5}
>
  <ScrollView contentContainerStyle={{ paddingBottom: 120 }}>
    {/* Form içeriği */}
  </ScrollView>
  <View style={{ paddingVertical: 5, paddingBottom: 10 }}>
    <Button />  {/* KeyboardAvoidingView İÇİNDE */}
  </View>
</KeyboardAvoidingView>