Proje: OkulUp · Hub: OkulUp — Domain
Yemek Menüsü Modülü
Son eklenen feature (commit 164d1cf, 2026-04-17).
Veri Modeli
MealMenu {
id: number
school_id: number
date: string // YYYY-MM-DD formatı
title: string | null // opsiyonel başlık
content: string | null // menü içeriği (multiline)
created_by: number
creator_name?: string
attachments?: MealMenuAttachment[]
created_at, updated_at
}
MealMenuAttachment {
id, meal_menu_id, file_name, file_size, mime_type, file_url, uploaded_by
}Yetki Kuralları
- Görüntüleme: tüm roller (
mealMenus.view) - Oluşturma/Güncelleme/Silme: sadece admin ve manager (
mealMenus.create) - Feature flag:
mobileConfig.features.meal_menu(default aktif)
API Endpoint’leri
GET /api/meal-menus → listele (date_from, date_to filtre)
GET /api/meal-menus/:id → detay
POST /api/meal-menus → oluştur
PUT /api/meal-menus/:id → güncelle
DELETE /api/meal-menus/:id → sil
POST /api/meal-menus/:id/attachments → dosya yükle
DELETE /api/meal-menus/attachments/:id → dosya sil
Navigasyon
- Tab’da görünmüyor — sadece Drawer’da (
surfaces: ['drawer']) - Ana ekran:
app/(tabs)/meal-menus.tsx - Detay:
app/meal-menu/[id].tsx - Yeni oluşturma:
app/meal-menu/new.tsx
Bileşenler
src/components/modules/meal-menus/:
MealMenuCard— liste itemMealMenuList— FlashList wrapperMealMenuDetailHeader— detay sayfa headerMealMenuFAB— oluştur butonu (admin/manager’a göre gösterilir)MealMenuForm— tarih + başlık + içerik formu
Related
- permission-system — mealMenus permission’ları
- feature-modules — diğer modüller