# YTP Bilgi Bankası Yakıt Takip Sistemi kapsamlı bilgi bankası - hızlı referans, kılavuzlar ve sorun giderme rehberi. ### İlk Yakıt Fişi Oluşturma 1. **Giriş Yap**: Yakıt sorumlusu ile giriş yapın 2. **Kaynak Kontrolü**: Araç, birlik ve personel kayıtlarını kontrol edin 3. **Fiş Oluştur**: "Yeni Fiş" butonuna tıklayın 4. **Form Doldur**: Tüm zorunlu alanları doldurun 5. **Onay Gönder**: Mal sorumlusuna gönder 6. **Bildirim Takibi**: Real-time bildirimleri izleyin ## 🏗️ Sistem Mimarisi ### Mimari Diyagram ``` ┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐ │ Frontend │ │ Backend │ │ Database │ │ (Svelte) │◄──►│ (Express) │◄──►│ (SQLite) │ │ │ │ │ │ │ │ - UI Components │ │ - REST API │ │ - users │ │ - State Mgmt │ │ - Socket.IO │ │ - vehicles │ │ - Routing │ │ - Auth/Authz │ │ - units │ │ - API Client │ │ - PDF Generation│ │ - fuel_personnel│ └─────────────────┘ └─────────────────┘ │ - fuel_slips │ └─────────────────┘ ``` ### Teknoloji Stack Karşılaştırması | Katman | Teknoloji | Neden? | Alternatifler | |--------|-----------|--------|---------------| | Frontend | Svelte + Vite | Hızlı, küçük bundle, reaktif | React, Vue, Angular | | Backend | Node.js + Express | Hızlı development, JavaScript ekosistemi | Python, PHP, Java | | Database | SQLite3 | Hafif, kurulum gerektirmeyen, taşınabilir | PostgreSQL, MySQL | | Real-time | Socket.IO | WebSocket wrapper, fallback mekanizmaları | Raw WebSocket, SSE | | PDF | PDFKit | Node.js uyumlu, esnek | Puppeteer, jsPDF | ## 👥 Kullanıcı Rolleri ve Yetkileri ### Admin (Sistem Yöneticisi) **Yetkiler:** - ✅ Tüm kullanıcıları yönetme - ✅ Mal sorumluları ekleme/güncelleme/silme - ✅ Araç kayıtlarını yönetme - ✅ Birlik bilgilerini yönetme - ✅ Personel kayıtlarını yönetme - ✅ Sistem ayarlarını yapılandırma - ❌ Yakıt fişi oluşturma - ❌ Fiş onaylama/reddetme **Kullanım Alanları:** - Sistem kurulum ve bakım - Kullanıcı yönetimi - Temel veri girişi - Raporlama ve analiz ### Yakıt Sorumlusu **Yetkiler:** - ✅ Yakıt fişi oluşturma - ✅ Fiş durumlarını takip etme - ✅ PDF fiş indirme - ✅ Kaynak bilgilerini görme - ❌ Kullanıcı yönetimi - ❌ Fiş onaylama - ❌ Temel veri düzenleme **Kullanım Alanları:** - Günlük yakıt ikmal işlemleri - Fiş oluşturma ve takip - Raporlama ### Mal Sorumlusu **Yetkiler:** - ✅ Atanan fişleri görme - ✅ Fiş onaylama/reddetme - ✅ Onay/reddetme gerekçesi ekleme - ✅ Atanan fişleri arşivleme - ❌ Fiş oluşturma - ❌ Kullanıcı yönetimi - ❌ Temel veri düzenleme **Kullanım Alanları:** - Yakıt ikmal onay süreçleri - Stok takibi - Raporlama ## 🔄 İş Akışları ### 1. Kullanıcı Yönetimi Akışı (Admin) ``` Başlangıç ↓ Admin Girişi ↓ "Kullanıcı Yönetimi" → "Mal Sorumluları" ↓ "Ekle" butonu → Form doldur → Kaydet ↓ Kullanıcı oluşturuldu → Bilgilendirme ↓ Bitiş ``` ### 2. Yakıt Fişi Oluşturma Akışı ``` Başlangıç ↓ Yakıt Sorumlusu Girişi ↓ "Yeni Fiş" butonu ↓ Form doldurma: ├─ Tarih seçimi ├─ Kuvvet seçimi ├─ Birlik seçimi ├─ Araç seçimi ├─ Yakıt bilgileri ├─ Personel seçimi └─ Mal sorumlusu atama ↓ "Oluştur" butonu ↓ Validasyon → Veritabanı kayıt ↓ Mal sorumlusuna bildirim ↓ PDF fiş oluştur (opsiyonel) ↓ Bitiş ``` ### 3. Fiş Onay Akışı ``` Başlangıç ↓ Mal Sorumlusu Girişi ↓ "Atanan Fişler" listesi ↓ Fiş seçimi → Detay görüntüle ↓ Karar verme: ├─ "Onayla" → Durum: approved └─ "Reddet" → Gerekçe gir → Durum: rejected ↓ Yakıt sorumlusuna bildirim ↓ Bitiş ``` ### 4. Real-time Bildirim Akışı ``` Olay Tetiklenir ↓ Server Event Oluştur ↓ Socket.IO Emit ↓ İlgili Client'a Gönder ↓ UI Güncellenir ↓ Kullanıcı Bilgilendirilir