Factorizer/Cluster ERP WikiCluster ERP English
Ana sayfa / İş modülleri

Modül

Fleet modülü (fleet)

Araç ve makine ana kaydını sayaçlar, bakım, iş emirleri, operasyonlar, yakıt, uyum ve maliyet analiziyle yöneten fleet modülü sayfası.

src/cluster_erp/modules/fleet/ içindeki fleet modülü, şirketin işlettiği araçları ve makineleri yönetir. Tek bir araç ana kaydı binek araçları, panelvanları, kamyonları, çekicileri, dorseleri, otobüsleri, forkliftleri ve iş makinelerini kapsar. Modül bu kaydın çevresinde sayaçları ve okumaları, bakım planlarını ve hatırlatmalarını, yedek parçalı iş emirlerini, sürücü atamalarını, denetimleri ve kusurları, rezervasyonları, olayları, yakıtı, uyum yükümlülüklerini, cezaları, lastikleri ve kampanyaları tutar. Bu sayfa genel bakıştır; alt konuların kendi sayfaları vardır.

Bir bakışta

Öğe Değer Kaynak
Paket src/cluster_erp/modules/fleet/ klasör
Modül sınıfı Module src/cluster_erp/modules/fleet/module.py:136
name / version fleet / 0.1.0 src/cluster_erp/modules/fleet/module.py:140-146
API öneki /api/v1/fleet src/cluster_erp/modules/fleet/module.py:310
Alt modüller 7: assets, meters, maintenance, workorders, operations, fuel, tco; ayrıca telematics.py, validation.py ve analytics_facts.py klasör listesi
Tablolar 23, hepsi tek bir models.py içinde src/cluster_erp/modules/fleet/models.py içindeki __tablename__
Metadata'daki varlıklar entities içinde 24 anahtar src/cluster_erp/modules/fleet/module.py:552-577
Uçlar Pakette 116 uç dekoratörü @...router.get/post/put/patch/delete için grep
Aksiyonlar 43 ActionMeta girdisi pakette grep "ActionMeta("
Göçler 12 dosya metni 23 tablo adından birini içeren migrations/versions/ dosyaları
Sözleşmeler 1 tüketir, 6 üretir "Olaylar ve sorgular" bölümüne bakın
Web uygulamasında varlık Katalog uygulaması fleet (screen module) src/cluster_erp/modules/app_store/catalog.json (fleet girdisi)
Masaüstünde varlık yalnızca genel bileşenler src/cluster_erp/desktop/modules/ içinde fleet klasörü yok

Modül ne yapar

  • Birinci sınıf kimlikleri (plaka, VIN, şasi numarası, motor numarası) olan ve taslak olarak başlayan bir yaşam döngüsüne sahip tek bir araç ana kaydı tutar (src/cluster_erp/modules/fleet/models.py:159-237).
  • Kuruluşun çalışma anında kiracı alanlarıyla kendi araç alanlarını eklemesine izin verir; modül ağır vasıta için bir başlangıç seti tohumlar (src/cluster_erp/modules/fleet/module.py:197-265). Bkz. kiracı alanları.
  • Sayaçları, ömür boyu değerleri olan değiştirilemez bir okuma defteri olarak kaydeder (src/cluster_erp/modules/fleet/meters/services.py:1-18).
  • Bakım vade tarihlerini takvim, sayaç ve eşik kurallarından hesaplar (src/cluster_erp/modules/fleet/maintenance/services.py:1-20).
  • Her bakım ihtiyacını tek bir iş emrinde toplar ve yedek parçaları EventBus üzerinden envanterden düşer (src/cluster_erp/modules/fleet/workorders/services.py:1-18).
  • Aracı kimin tuttuğunu, çekici ve dorse bağlantılarını, denetimleri, kusurları, rezervasyonları ve olayları izler (src/cluster_erp/modules/fleet/operations/services.py:1-20).
  • Tüketim uyarılı bir yakıt defteri, yenilenen uyum yükümlülükleri ve cezalar tutar (src/cluster_erp/modules/fleet/fuel/services.py:1-20).
  • Toplam sahip olma maliyetini, bir yenileme sıralamasını, lastikleri, kampanyaları ve emisyon katsayılarını raporlar (src/cluster_erp/modules/fleet/tco/services.py:1-12).
  • Telematik bağdaştırıcılarından sayaç toplu girdilerini kabul eder (src/cluster_erp/modules/fleet/telematics.py:1-16).

Alt modüller

Alt modül Amaç Ana varlıklar Yönlendirici Sayfa
assets Araç ana kaydı ve araç sınıfları FleetAsset, FleetAssetClass /assets, /classes Araçlar
meters Sayaçlar ve okuma defteri FleetMeter, FleetMeterReading /meters, /readings Sayaçlar ve yakıt
fuel Yakıt girişleri, uyum kalemleri, cezalar, muayene dönemleri FleetFuelEntry, FleetComplianceItem, FleetPenalty, FleetInspectionPeriod /fuel, /compliance, /penalties, /inspection-periods Sayaçlar ve yakıt
maintenance Planlar ve hesaplanan hatırlatmalar FleetMaintenancePlan, FleetMaintenanceReminder /maintenance/plans, /maintenance/reminders Bakım ve iş emirleri
workorders İş emirleri, kalemler, parçalar FleetWorkOrder, FleetWorkOrderItem, FleetWorkOrderPart /work-orders, /work-order-items, /work-order-parts Bakım ve iş emirleri
operations Atamalar, bağlantılar, denetimler, kusurlar, rezervasyonlar, olaylar FleetAssignment, FleetCoupling, FleetInspection, FleetDefect, FleetReservation, FleetIncident /assignments, /couplings, /inspections, /defects, /reservations, /incidents Operasyonlar
tco Sahip olma maliyeti, yenileme, lastikler, kampanyalar, emisyon katsayıları FleetTire, FleetCampaign, FleetCampaignAsset, FleetEmissionFactor /tco, /tires, /campaigns, /campaign-assets, /emission-factors TCO, telematik ve analitik

Tüm yönlendiriciler /api/v1/fleet önekli tek bir modül yönlendiricisine eklenir (src/cluster_erp/modules/fleet/module.py:267-336). Her routes.py kendi yollarını tanımlar, örneğin src/cluster_erp/modules/fleet/fuel/routes.py:35-41.

Veri modeli

23 tablonun tümü src/cluster_erp/modules/fleet/models.py içinde tanımlıdır. Her alt modül sayfası kendi alanlarını listeler. Ortak özellikler:

  • Her model BaseModel sınıfının denetim ve yumuşak silme sütunlarını devralır (src/cluster_erp/modules/fleet/models.py:42). Bkz. temel model ve kimlikler.
  • Benzersizlik yalnızca canlı satırlarda geçerlidir; bunu uq_fleet_assets_plate_live gibi kısmi benzersiz indeksler sağlar (src/cluster_erp/modules/fleet/models.py:168-186).
  • Para sütunları Numeric(18, 2) tipindedir ve yanlarında üç harfli ayrı bir currency sütunu bulunur, örneğin FleetWorkOrder.labor_cost ve FleetFuelEntry.total_cost (src/cluster_erp/modules/fleet/models.py:409-413, src/cluster_erp/modules/fleet/models.py:621-622).
  • Sayaç değerleri bir ondalık basamaklı Numeric tipindedir (src/cluster_erp/modules/fleet/models.py:298-301).
  • Durum sözlükleri dosyanın başında demetler olarak durur, örneğin FLEET_ASSET_STATUSES ve FLEET_WO_STATUSES (src/cluster_erp/modules/fleet/models.py:46-127).

Ekranlar ve metadata

get_metadata, 16 bölümlü Filo (İngilizce Fleet) kenar çubuğu grubunu tanımlar (src/cluster_erp/modules/fleet/module.py:403-547). Altı bölüm çubukta görünür: Araçlar, Bakım, İş Emirleri, Rezervasyonlar, Yakıt ve Uyum. Dokuz liste bölümü hidden_from_bar=True taşır: Cezalar, Lastikler, Kampanyalar, Yenileme Analizi, Atamalar, Çekici-Dorse, Denetimler, Kusurlar ve Olaylar. Kod yorumu bu listelerin aranabilir kaldığını ve araç kartının bunlara bağlamsal kapı olduğunu belirtir (src/cluster_erp/modules/fleet/module.py:490-492). Ayarlar dört sekmeli bir ayar görünümüdür: araç sınıfları, bakım planları, muayene dönemleri ve emisyon katsayıları (src/cluster_erp/modules/fleet/module.py:536-547).

Araç kartında Genel sekmesinden Lastikler sekmesine kadar 14 ayrıntı sekmesi vardır (src/cluster_erp/modules/fleet/assets/metadata.py:358-450). Web uygulaması ve masaüstü bunların hepsini genel olarak çizer; bkz. genel liste ve genel ayrıntı.

Durum ve aksiyonlar

Her alt modül sayfası kendi aksiyonlarını listeler. Her durum değişikliği POST .../{id}/actions/{action} aksiyon ucundan geçer; araç güncelleme yolu durumu değiştirmez (src/cluster_erp/modules/fleet/assets/services.py:1-11). Diyagram alt modüller arasındaki bakım akışını gösterir.

flowchart TD
 RD["FleetMeterReading oluşturuldu"] --> RC["FleetReminderService.recompute_for_asset_id"]
 PL["FleetMaintenancePlan"] --> RC
 RC --> RM["FleetMaintenanceReminder: ok, due_soon, overdue"]
 RM -->|create_work_order| WO["FleetWorkOrder taslak"]
 AS["FleetAsset send_to_maintenance"] --> WO2["FleetWorkOrder serbest bırakılmış"]
 DF["FleetDefect create_work_order"] --> WO
 WO -->|release, start| WOP["open, in_progress"]
 WOP -->|parça çıkışı| GI["envantere PostGoodsIssue"]
 WOP -->|complete| DONE["completed"]
 DONE --> RCOMP["bağlı hatırlatmalar tamamlanır"]
 DONE --> ODO["kilometre okuması, kaynak work_order"]
 DONE --> BACK["araç yeniden active"]

Düz anlatımla:

  1. Yeni bir okuma, aracının hatırlatmalarını yeniden hesaplar (src/cluster_erp/modules/fleet/meters/services.py:308-311, src/cluster_erp/modules/fleet/meters/services.py:363-371).
  2. Hatırlatma motoru her hatırlatmayı ok, due_soon, overdue veya snoozed yapar (src/cluster_erp/modules/fleet/maintenance/services.py:588-597).
  3. Bir hatırlatma, kusur, olay veya kampanya kalemi iş emri açabilir. Aracı bakıma almak serbest bırakılmış bir iş emri açar (src/cluster_erp/modules/fleet/maintenance/services.py:351-366, src/cluster_erp/modules/fleet/assets/services.py:307-338).
  4. Bir parça satırının çıkışı envantere PostGoodsIssue gönderir (src/cluster_erp/modules/fleet/workorders/services.py:464-514).
  5. Emrin tamamlanması bağlı hatırlatmaları tamamlar, bir kapanış kilometresi kaydedebilir ve açık başka emir yoksa aracı active durumuna döndürür (src/cluster_erp/modules/fleet/workorders/services.py:191-265).

İş kuralları

Her alt modülün kuralları kendi sayfasındadır. Modülün tamamında geçerli kurallar:

  • API'nin kabul ettiği her tarih-saat bir UTC farkı taşımalıdır; saf (naive) bir değer doğrulama hatasıyla reddedilir (src/cluster_erp/modules/fleet/validation.py:1-21).
  • Form yükündeki boş bir dize değer yok sayılır (src/cluster_erp/modules/fleet/validation.py:24-37).
  • Elden çıkarılmış bir araç yeni operasyon belgesi almaz (src/cluster_erp/modules/fleet/operations/services.py:80-98).
  • Araç kodları fleet_asset, iş emri kodları fleet_work_order dizisinden gelir (src/cluster_erp/modules/fleet/assets/services.py:229, src/cluster_erp/modules/fleet/workorders/services.py:108).
  • Alt modüller paket içinde birbirlerinin servislerini çağırır. Kod yorumları bunları modüller arası çağrı değil, kardeş içe aktarma olarak işaretler (src/cluster_erp/modules/fleet/assets/services.py:240-241).

Olaylar ve sorgular

Modül 1 sözleşme tüketir ve 6 sözleşme üretir. Tüketilen, pakette subscribe( veya register_query_handler( çağrısına ilk argüman olarak verilen sözleşmedir; üretilen, pakette adının ardından ( gelen sözleşme sınıfıdır. Tam liste sözleşmeler başvurusunda yer alır.

Yön Sözleşme sınıfı İşleyici veya yayıcı Kaynak
abone olur DescribeAnalyticsFacts describe_analytics_facts src/cluster_erp/modules/fleet/module.py:338-346
sorgular PostGoodsIssue FleetWorkOrderService.issue_part src/cluster_erp/modules/fleet/workorders/services.py:494-507
sorgular GetPurchaseRequestById FleetWorkOrderService._check_pr_link src/cluster_erp/modules/fleet/workorders/services.py:565-578
sorgular GetPartyById _require_party src/cluster_erp/modules/fleet/operations/services.py:64-79
oluşturur AnalyticsFactSet, AnalyticsDimension, AnalyticsMeasure analytics_facts.py src/cluster_erp/modules/fleet/analytics_facts.py:18-310

Bir parça satırının ürün kırılımı, satır kaydedilmeden önce ensure_product_breakdown ile denetlenir (src/cluster_erp/modules/fleet/workorders/services.py:412-424).

İzinler

Her uç require_permission ile bir izin denetler. Anahtarlar <entity>.read, .create, .update ve .delete kalıbını izler.

İzin anahtarı Kullanan Kaynak
fleet_asset.read, .create, .update, .delete araçlar, TCO ve yenileme okumaları, telematik beslemesi (update) src/cluster_erp/modules/fleet/assets/routes.py:62-137, src/cluster_erp/modules/fleet/tco/routes.py:52-62, src/cluster_erp/modules/fleet/telematics.py:55
fleet_asset_class.read, .update araç sınıfları src/cluster_erp/modules/fleet/assets/routes.py:149-187
fleet_meter.*, fleet_meter_reading.* sayaçlar ve okumalar src/cluster_erp/modules/fleet/meters/routes.py:36-161
fleet_maintenance_plan.*, fleet_maintenance_reminder.* planlar ve hatırlatmalar src/cluster_erp/modules/fleet/maintenance/routes.py:33-144
fleet_work_order.*, fleet_work_order_item.*, fleet_work_order_part.* iş emirleri src/cluster_erp/modules/fleet/workorders/routes.py:39-214
fleet_assignment.*, fleet_coupling.*, fleet_inspection.*, fleet_defect.*, fleet_reservation.*, fleet_incident.* operasyonlar src/cluster_erp/modules/fleet/operations/routes.py:63-453
fleet_fuel_entry.*, fleet_compliance_item.*, fleet_penalty.*, fleet_inspection_period.* yakıt, uyum, cezalar, dönemler src/cluster_erp/modules/fleet/fuel/routes.py:52-356
fleet_tire.*, fleet_campaign.*, fleet_campaign_asset.*, fleet_emission_factor.* lastikler, kampanyalar, katsayılar src/cluster_erp/modules/fleet/tco/routes.py:78-344

Mekanizma roller ve izinler sayfasında anlatılır.

Gizlilik, saklama ve geçmiş

Modülde privacy_handlers.py ve retention_handlers.py yoktur (klasör listesi). Bir kaydı silmek deleted_at alanını doldurur. Araç için bu, canlı hatırlatmalarını da emekliye ayırır; okumalar, emirler ve dönemler kalır (src/cluster_erp/modules/fleet/assets/services.py:340-363). Okumalar hiçbir zaman düzenlenmez veya silinmez; hatalı bir okuma incorrect olarak işaretlenir (src/cluster_erp/modules/fleet/meters/services.py:9-12). Değişiklikleri değişiklik geçmişi yakalar; devre dışı bırakma yumuşak silme ve devre dışı bırakma sayfasında anlatılır.

Analitik olgular

analytics_facts.py dört olgu kümesi sağlar: fleet_fuel, fleet_work_order, fleet_penalty ve fleet_compliance; hepsi fleet_asset.read izniyle okunur (src/cluster_erp/modules/fleet/analytics_facts.py:35-310). Ayrıntılar TCO, telematik ve analitik sayfasında, toplama yolu analitik olgular sayfasındadır.

Ayarlar ve referans verileri

  • Araç sınıfları referans verisidir. Modül başlarken eksik olan dokuz sınıfı tohumlar: car, van, truck, tractor_unit, trailer, bus, forklift, construction ve other; her biri varsayılan sayaçlarıyla gelir (src/cluster_erp/modules/fleet/module.py:27-47, src/cluster_erp/modules/fleet/module.py:159-195).
  • Modül, fleet_asset kovasında kiracı alanı olarak dokuz araç alanı tanımı tohumlar, örneğin fuel_tank_l ve gvwr_kg. Zaten var olan bir anahtara dokunulmaz (src/cluster_erp/modules/fleet/module.py:49-133, src/cluster_erp/modules/fleet/module.py:197-265).
  • Muayene dönemleri ve emisyon katsayıları boş başlar; kuruluş bunları doldurur (src/cluster_erp/modules/fleet/models.py:673-789).

Testler

web-client/_e2e_*.mjs içinde /fleet/ ve tests/*.py içinde fleet için grep ile bulundu.

Tür Dosya Kapsar
e2e web-client/_e2e_fleet_assets.mjs araç ana kaydı, sınıflar, çalışma anı alanları
e2e web-client/_e2e_fleet_meters.mjs sayaçlar ve okuma defteri
e2e web-client/_e2e_fleet_maintenance.mjs bakım planı motoru
e2e web-client/_e2e_fleet_workorders.mjs iş emri hunisi
e2e web-client/_e2e_fleet_operations.mjs atamalar, bağlantılar, denetimler, rezervasyonlar, olaylar
e2e web-client/_e2e_fleet_fuel.mjs yakıt defteri ve uyum
e2e web-client/_e2e_fleet_analytics.mjs olgu kümeleri, TCO, yenileme, lastikler, kampanyalar
e2e web-client/_e2e_fleet_telematics.mjs telematik beslemesi
e2e web-client/_e2e_fleet_paranoid.mjs alt modüller arası gerileme korumaları
e2e web-client/_e2e_tenant_fields_phase4b.mjs, web-client/_e2e_tenant_fields_phase4c.mjs araçlardaki kiracı alanları
pytest tests/test_data_map_package2.py, tests/test_backup_retention.py, tests/test_demo_data_live.py, tests/test_desktop_app_scope.py fleet geçen dosyalar

Tutarsızlıklar

Tanıtılan terimler

Terim Kod tanımlayıcısı Tanım Türkçe terim Kaynak
fleet asset FleetAsset Şirketin işlettiği tek bir araç, dorse veya makine. Araç src/cluster_erp/modules/fleet/models.py:159
asset class FleetAssetClass Araçları gruplayan, motorlu olup olmadıklarını ve hangi sayaçları alacaklarını belirten referans satırı. Araç sınıfı src/cluster_erp/modules/fleet/models.py:130
work order funnel FleetWorkOrderService Bir aracın her bakım ihtiyacının kalem olarak düştüğü tek iş emri. İş emri hunisi src/cluster_erp/modules/fleet/workorders/services.py:1-10

İlgili sayfalar


92f8051 numaralı commit ile 2026-11-13 tarihinde doğrulandı.

Doğrulanan commit 92f8051 · 2026-11-13