Bildirim & Mail Sistemi
BulutFilo'nun kullanıcılara haber veren tüm mekanizmaları:
| Tip | Sayı | Tetikleyici |
|---|---|---|
| Mail template | 53 | Job'lar veya doğrudan model hook'u |
| Bildirim job'u | 5 (ana) | Cron veya kullanıcı eylemi |
| In-app bildirim | model değişiklikleri | Belge süresi, vade, KM, vb. |
Mail Template'leri
resources/views/emails/ ve Modules/*/resources/views/emails/ altında 53 blade template vardır. Doğrulanmış olanlar:
| Template | Tetikleyici | Açıklama |
|---|---|---|
emails.arac.ceza_sorumlu_personel_bilgilendirme_mail | Ceza::saved (sorumlu_user_id değişti + yetki var) | "X Plakalı Aracın Ceza Kaydına Sorumlu Personel Olarak Atandınız" |
DefaultMarkdownMail | Çeşitli | Genel markdown mail wrapper'ı |
Mail teması Laravel Markdown formatında. Kuyruğa atılır (
Mail::to(...)->queue(...)).
Cron Tabanlı Bildirimler
| Cron | Job (eğer ayrı) | Mail Konusu | Sıklık |
|---|---|---|---|
bfy:veri_alinamayan_araclari_bildir | (cron komutu) | Veri alınamayan GPS cihazlı araçların listesi | twiceDaily |
bfy:veri_alinamayan_araclar_gunluk_mail | (cron komutu) | Aynı liste, mail formatı | dailyAt 09:00 |
bfy:onay-bekleyen-gorevleri-bildir | OnayBekleyenGorevlerJob | Onay bekleyen görevler | dailyAt 09:00 |
bfy:yag_seviyesi_kritik_bildirim | (cron komutu) | Yağ seviyesi kritik araçlar | dailyAt 13:00 |
bfy:ptt-yakit-ihmal-bildirim | (cron komutu) | (Anadolum) PTT yakıt ihmal | dailyAt 00:30 |
bfy:servis-talep:durum-guncelle | (cron komutu) | Servis talep durum değişikliği — selim.saral@macellan.net | twiceDaily |
Bildirim Job'ları
| Job | Tetiklenme | Açıklama |
|---|---|---|
BildirimAyarlariMailJob | Bildirim ayarları sayfası kayıt | Yeni bildirim ayarı için bilgilendirme |
KazaBildirimJob | Kaza kaydı oluşturma/güncelleme | İlgili kişilere kaza bilgisi |
OnayBekleyenGorevlerJob | Cron + manuel | Onay bekleyenleri toplu mailler |
YetkiliServisBildirimJob | Yetkili servis form aksiyonu | Yetkili servise yönlendirme bildirimi |
AracTopluTransferBildirimJob | Toplu transfer eylemi | Çok sayıda transfer için tek bildirim |
SendHgsTopluAktiflestirmeMailJob | HGS toplu aktivasyonu | HGS aktif edildiğinde sorumluya mail |
In-App Bildirim Sistemi
Üst bardaki bildirim zili kullanıcıya 4 seviyeli renkli bildirim gösterir. Bildirimler araç listesi sayfasının üst sekmelerinden ve dashboard'dan beslenir:
| Seviye | Renk | Örnekler |
|---|---|---|
| Tehlike | Kırmızı | Muayene tarihi geçen araçlar, ödeme bekleyen cezalar |
| Uyarı | Sarı | Sigortası bulunmayan araçlar, periyodik bakım gerektirenler |
| Bilgi | Mavi | Belgesi yüklenmemiş sigortalar, taşıt kartı işlemleri |
| Servis | Gri | Onay bekleyen formlar, vade tarihi geçen teminatlar |
Detay UI tarafı için bkz: Arayüz Tanıtımı — Bildirim Sistemi
Hata Bildirimi (DevOps)
Tüm cron komutları çalıştırıldığında başarısız olursa:
->emailOutputOnFailure('yazilim@bulutfilo.com');
Bu sayede komut exit_code != 0 döndüğünde stack trace ile birlikte mail otomatik atılır. Bazı önemli cron'lar (PTT raporları gibi) ek olarak özel adreslere de yönlendirilir.
Mail Konfigürasyonu
| Setting | Açıklama |
|---|---|
feature-veri-alinamayanlar-raporu-mail-aktif | Günlük veri alınamayan araçlar maili |
feature-gorev-onay-bekleyenler-sekmesi | Onay bekleyen görevler sekmesi (cron'u açar) |
feature-yolcu-sayimi-aktif | Yolcu sayımı (mail/bildirim üretmez ama veri toplar) |
Mail Bildirim Tetikleyici Modeller
Hangi model üzerinde değişiklik hangi mail'i atar? Doğrulanmış:
| Model | Olay | Mail / Bildirim |
|---|---|---|
Ceza | sorumlu_user_id değişti, yeni user arac.ceza.sorumlu_personel.mail.gonder yetkili | "Ceza kaydına sorumlu personel olarak atandınız" maili (queued) |
Transfer | created (Logo flag aktif) | Logo ERP'ye REST çağrısı (mail değil) |
Sigorta | bitiş tarihi yaklaşan | (cron tabanlı bildirim üretir, in-app + mail mümkün) |
Personel belgeleri | bitiş tarihi yaklaşan | Bildirim ayarları sayfasından konfigüre edilir |
Servis Talep | durum değişikliği | bfy:servis-talep:durum-guncelle cron'u kullanıcılara mail atar |