{% extends 'base.html.twig' %} {% block title %}Entretiens — {{ car.getDisplayName() }}{% endblock %} {% block content %} {# ── En-tête ── #}
Nb. entretiens
Coût total
Assurance expire
Prochain CT
| Type | Date | Expiration | Coût | Kilométrage | Description | Actions |
|---|---|---|---|---|---|---|
| {% if typeLower == 'assurance' %} {{ m.typeLabel }} {% elseif typeLower == 'vignette' %} {{ m.typeLabel }} {% elseif typeLower in ['vidange', 'révision générale'] %} {{ m.typeLabel }} {% elseif typeLower == 'contrôle technique' %} {{ m.typeLabel }} {% elseif typeLower == 'pneumatiques' %} {{ m.typeLabel }} {% elseif typeLower in ['lavage / nettoyage', 'lavage'] %} {{ m.typeLabel }} {% else %} {{ m.typeLabel }} {% endif %} | {{ m.performedAt|date('d/m/Y') }} | {% if m.expirationDate %} {% set expDays = ((m.expirationDate.timestamp - ('now'|date('U')))/86400)|round %} {{ m.expirationDate|date('d/m/Y') }} {% elseif m.technicalControlDate %} {% set ctDays = ((m.technicalControlDate.timestamp - ('now'|date('U')))/86400)|round %} {{ m.technicalControlDate|date('d/m/Y') }} {% else %} — {% endif %} | {{ m.cost|number_format(2, '.', ' ') }} MAD | {{ m.mileageAtService ? m.mileageAtService|number_format(0, '.', ' ') ~ ' km' : '—' }} | {{ m.description ?? '—' }} | |
|
Aucun entretien enregistré pour ce véhicule. Ajouter le premier entretien |
||||||