Ana içeriğe geç

Cron / Zamanlanmış İşler

app/Console/Kernel.php içinde tanımlı tüm zamanlanmış görevler. Saat dilimi: Europe/Istanbul. Her komut multi-tenant olarak --env=<tenant> ile çalışır.


1. Yakıt Entegrasyonları (Akaryakıt API'leri)

Akaryakıt firmalarından otomatik yakıt alım kayıtlarını çeker. Her biri ilgili settings(...) flag'ine bağlıdır.

KomutSıklıkAktif olma koşulu
bfy:po_yakit_importhourlysettings('yakit-poas-entegrasyon')
bfy:opet_yakit_importhourlysettings('yakit-opet-entegrasyon')
bfy:shell_yakit_importhourlysettings('yakit-shell-entegrasyon')
bfy:asisotomasyon-yakit-importhourlysettings('asisotomasyon-wsdl-url')
bfy:optimum-importtwiceDailysettings('optimum-url')
bfy:turpak-importtwiceDailysettings('turpak-url')
bfy:mepsanotomasyon-yakit-importtwiceDailysettings('mepsanotomasyon-wsdl-url')

Bu cron'lar yakıt kaydı oluştururken yakit_girisi = 'OTOMATIK' olarak işaretler (Yakit::YAKIT_GIRISI const).

İlgili tablolar: arac_yakitlar, opet_yakit_aktarimlar, shell_yakit_aktarimlar


2. Gece Toplu İşleri

KomutSaatAçıklama
cron:gecelik04:00Ana gece görevi (servis km, sigorta özet, vade hatırlatması, vb.)
bfy:yetkili-servis-is-kodu-ortalama-fiyat-hesaplama03:00İş kodu başına ortalama fiyat hesabı (yetkili servis için)
bfy:hgs-data-importdailyHGS API'den geçiş kayıtlarını çek
bfy:check-user-expirationsdailySüresi dolan kullanıcıları kontrol et / kapat
bfy:clear-exports-folderdailyEski Excel/PDF export dosyalarını sil

3. Bildirim Cron'ları

Bildirim sistemi cron + queued job kombinasyonuyla çalışır. Cron tetikler, job mail/SMS atar.

KomutSıklıkAçıklama
bfy:veri_alinamayan_araclari_bildirtwiceDailyVeri alınamayan GPS cihazlı araçların listesi
bfy:veri_alinamayan_araclar_gunluk_maildailyAt 09:00Aynı liste, mail formatında — feature-veri-alinamayanlar-raporu-mail-aktif flag'i gerekir
bfy:onay-bekleyen-gorevleri-bildirdailyAt 09:00Onay bekleyen görevler — feature-gorev-onay-bekleyenler-sekmesi flag'i gerekir
bfy:yag_seviyesi_kritik_bildirimdailyAt 13:00Yağ seviyesi kritik araçlar
bfy:ptt-yakit-ihmal-bildirimdailyAt 00:30(Anadolum Filo) Yakıt ihmal bildirimi

4. Hakediş & Maliyet

KomutSıklıkAçıklama
bfy:gps-grup-hakedis-hesaplamonthlyOn 1, 03:00Aylık 1'inde GPS grup hakediş — modul-filo-hakedis-raporu flag'i gerekir

5. HGS / OGS

KomutSaatAçıklama
bfy:hgs-data-importdailyHGS API'den geçiş kayıtlarını import et — 4 settings (feature-hgs-api-key, feature-hgs-api-secret, feature-hgs-firma-id, config('app.hgs.url')) gerekir
bfy:vakifbank-hgs-harcama-importdailyAt 00:05Vakıfbank HGS harcamalarını import et — hgs-vakifbank-client-id, hgs-vakifbank-client-secret, hgs-vakifbank-consent-id, hgs-vakifbank-firma-id gerekir

6. Kamera Senkronizasyonu

KomutSaatAçıklama
bfy:kamera:hikvision-updatedailyAt 03:00Hikvision kamera durumlarını güncelle — modul-hikvision-camera-aktif flag'i gerekir
bfy:kamera:dahua-updatedailyAt 03:10Dahua kamera durumlarını güncelle — modul-dahua-camera-aktif flag'i gerekir

7. Anadolum Filo (PTT) — Kuruma Özel

isAppName('anadolum-filo') koşuluna bağlı 6 cron:

KomutSaatAçıklama
bfy:send-ats-data-to-ptt --type=dailydailyAt 03:00PTT'ye günlük ATS verisi
bfy:ptt-kpapg-ats-report-senddailyAt 03:15KPAPG ATS raporu
bfy:ptt-kpapg-sefer-report-senddailyAt 03:30KPAPG sefer raporu
bfy:send-ats-data-to-ptt --type=monthlydailyAt 04:00Aylık rapor — AylikRaporGonderimTakvimi::getCloseDay($month) ile koşullu
bfy:send-ats-data-to-ptt --type=onizlemedailyAt 04:00Önizleme raporu — getOnizlemeCloseDay($month) ile koşullu
bfy:ptt-kpapg-report-senddailyAt 16:00KPAPG genel raporu
bfy:ptt-konum-gonderimeveryFiveMinutesAnlık konum gönderim
bfy:ptt-arac-listesi-gonderimdailyAt 01:00Araç listesi gönderim

8. Servis Talep / Boschcar

KomutSıklıkAçıklama
bfy:servis-talep:durum-guncelletwiceDailyServis talep durumlarını güncelle (mail: selim.saral@macellan.net)
bfy:boschcar-sync-approvedhourlyOnaylanan Boschcar formlarını senkronize et — feature-boschcar-servis-entegrasyonu-aktif
bfy:boschcar-retry-faileddailyAt 01:30Başarısız Boschcar işlemlerini tekrar dene

9. İhale (EKAP)

KomutSıklıkAçıklama
ihale:ekapdailyEKAP'tan ihale verisi çek
ihale:purgedailyEski ihale verisini temizle

10. GPS / Veri Aktarım

KomutSıklıkAçıklama
bfy:veri-aktarim-kontroleveryMinuteVeri aktarım kontrolü (en sık çalışan cron)
takip:handle-messagehourlyTakip uygulaması mesajlarını işle
hv:passenger_counteveryFiveMinutesYolcu sayımı — feature-yolcu-sayimi-aktif flag'i gerekir

11. Görev Yönetimi

KomutSıklıkAçıklama
bfy:gorev-soforlerini-cihaz-kart-yetkilendirmesine-ekledaily(Arnavutköy) Görevdeki şoförleri cihaz kart yetkilendirmesine ekle

12. Sistem Bakım

KomutSıklıkAçıklama
cron:zamanlanmis_raporlareveryFiveMinutesKullanıcı tarafından zamanlanmış raporları çalıştır
bfy:clear-exports-folderdailyExport klasörünü temizle
telescope:prune --hours=48dailyLaravel Telescope log'larını 48 saat sonra sil
cache:prune-stale-tagshourlyRedis cache tag temizliği

13. Arvento (GPS Sağlayıcı)

isArvento() koşuluna bağlı:

KomutSıklıkAçıklama
arv:get_drivers10 * * * * (her saat *:10)Sürücü listesi
arv:get_statuseveryFiveMinutesAnlık araç durumu
arv:get_nodes15 * * * * (her saat *:15)Nokta listesi
arv:get_vehiclesdailyAt 02:00Araç listesi

14. Sarılar Group (e-Finans Import) — Kuruma Özel

isAppName('sarilar') koşuluna bağlı 13 ayrı firma için saatlik:

app:efinans_import_dosya_fix --efinans_firma=zenitas --firma_id=4739
app:efinans_import_dosya_fix --efinans_firma=sarilar --firma_id=1
app:efinans_import_dosya_fix --efinans_firma=sarilaras --firma_id=15004
app:efinans_import_dosya_fix --efinans_firma=kure --firma_id=9
app:efinans_import_dosya_fix --efinans_firma=erk --firma_id=739
app:efinans_import_dosya_fix --efinans_firma=aksoyman --firma_id=13
app:efinans_import_dosya_fix --efinans_firma=selcuk --firma_id=12
app:efinans_import_dosya_fix --efinans_firma=sab --firma_id=10363
app:efinans_import_dosya_fix --efinans_firma=mea --firma_id=1421
app:efinans_import_dosya_fix --efinans_firma=yuva --firma_id=5966
app:efinans_import_dosya_fix --efinans_firma=k1 --firma_id=15363
app:efinans_import_dosya_fix --efinans_firma=k2 --firma_id=15364
app:efinans_import_dosya_fix --efinans_firma=k3 --firma_id=15365

Kod yorumu: "Firmalarda efinans_firma isminde sütun açılıp aşağıdaki değerlerin girilmesi lazım. Böylece hardcoded yapmak yerine otomatize edilebilir."


En Sık Çalışan İlk 5

CronSıklıkYaklaşık çalışma/gün
bfy:veri-aktarim-kontroleveryMinute1.440
cron:zamanlanmis_raporlareveryFiveMinutes288
arv:get_status (Arvento'lu kurumlar)everyFiveMinutes288
hv:passenger_count (yolcu sayımı aktif)everyFiveMinutes288
bfy:ptt-konum-gonderim (Anadolum)everyFiveMinutes288