Liste des trajets : total km du jour dans l'en-tête de rupture
Affiche, dans l'en-tête de chaque journée, le total kilométrique du jour après le nombre de trajets (séparé par « - »). Somme des distances effectives (A/R inclus), trajets sans distance comptés comme 0, format selon la précision courante.
This commit is contained in:
@@ -20,7 +20,7 @@
|
|||||||
>
|
>
|
||||||
<span class="jour__chevron" aria-hidden="true">{{ estOuvert(groupe) ? '▾' : '▸' }}</span>
|
<span class="jour__chevron" aria-hidden="true">{{ estOuvert(groupe) ? '▾' : '▸' }}</span>
|
||||||
<span class="jour__date">{{ groupe.date | date: 'EEEE dd/MM/yyyy' }}</span>
|
<span class="jour__date">{{ groupe.date | date: 'EEEE dd/MM/yyyy' }}</span>
|
||||||
<span class="jour__compteur">{{ groupe.trajets.length }} trajet{{ groupe.trajets.length > 1 ? 's' : '' }}</span>
|
<span class="jour__compteur">{{ groupe.trajets.length }} trajet{{ groupe.trajets.length > 1 ? 's' : '' }} - {{ totalKmJour(groupe) }}</span>
|
||||||
</button>
|
</button>
|
||||||
<button
|
<button
|
||||||
type="button"
|
type="button"
|
||||||
|
|||||||
@@ -305,6 +305,17 @@ export class TrajetListComponent {
|
|||||||
return `${trajet.distance.toFixed(this.parametresService.precisionDistance())} km`;
|
return `${trajet.distance.toFixed(this.parametresService.precisionDistance())} km`;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Total kilométrique de la journée, affiché dans l'en-tête du groupe à côté du
|
||||||
|
* nombre de trajets. Somme des distances EFFECTIVES (déjà doublées si A/R) des
|
||||||
|
* trajets du jour ; les trajets sans distance calculée (null) comptent comme 0.
|
||||||
|
* Formaté selon la précision courante, suffixé « km ».
|
||||||
|
*/
|
||||||
|
totalKmJour(groupe: GroupeJour): string {
|
||||||
|
const total = groupe.trajets.reduce((somme, t) => somme + (t.distance ?? 0), 0);
|
||||||
|
return `${total.toFixed(this.parametresService.precisionDistance())} km`;
|
||||||
|
}
|
||||||
|
|
||||||
/** Identité stable pour le suivi de la liste (drag & drop). */
|
/** Identité stable pour le suivi de la liste (drag & drop). */
|
||||||
trackById(_index: number, trajet: Trajet): number {
|
trackById(_index: number, trajet: Trajet): number {
|
||||||
return trajet.id;
|
return trajet.id;
|
||||||
|
|||||||
Reference in New Issue
Block a user