Files
SchotzIAD/backend/SchotzIadKmTracker.Api/Models/DTOs/ProfilDtos.cs
T
MadJax d015ca1c98 feat: réutilisation des coordonnées déjà géocodées (domicile, insertion de trajets)
Expose les coordonnées déjà géocodées dans ProfilDto
(DomicileLatitude/Longitude) et TrajetDto (DepartLatitude/Longitude,
ArriveeLatitude/Longitude) afin que le Frontend les réutilise sans
déclencher un nouveau géocodage BAN :

- Bouton « Utiliser mon domicile » (trajet-form) : utilise désormais
  les coordonnées du Profil au lieu de forcer un re-géocodage.
- Actions « insérer avant/après » (trajet-list) : transmettent les
  coordonnées déjà connues du point de fin repris au formulaire
  d'insertion.

Le résumé mensuel (ResumeService) résout les coordonnées via le
Cache_Adresses pour chaque trajet (nouvelle méthode
ConstruireResumeMensuelAvecCoordonneesAsync) ; le résumé annuel reste
inchangé pour éviter des lookups de cache inutiles sur une vue qui
n'affiche pas le détail des trajets.

Met à jour design.md et design-requirements.md (Requirements 10 et 11)
pour refléter le nouveau contrat d'API.
2026-10-13 20:52:04 +02:00

28 lines
874 B
C#

namespace SchotzIadKmTracker.Api.Models.DTOs;
// Profil
public record ProfilDto(
string? Nom,
string? Prenom,
string? Matricule,
string? AdresseDomicile,
bool DomicileGeocode,
// Coordonnées du domicile déjà géocodées (null si non résolues). Exposées au
// frontend pour qu'il puisse les transmettre lors de la saisie d'un trajet
// (bouton « Utiliser mon domicile »), évitant un re-géocodage BAN côté backend.
double? DomicileLatitude,
double? DomicileLongitude
);
public record SaveProfilDto(
string? Nom,
string? Prenom,
string? Matricule, // max 8 car.
string AdresseDomicile
);
// État de configuration du profil (onboarding première utilisation)
public record EtatProfilDto(
bool EstConfigure // true ssi Profil.Nom et Profil.Prenom non vides ET au moins un Vehicule existe
);