Commit Graph
4 Commits
Author SHA1 Message Date
MadJax 61298d6384 Refonte export PDF, colonne commentaire et UX résumés
- Export PDF: nouveau nommage AAAAMM/AAAA_Trajets_MATRICULE_PLAQUE.pdf,
  logo carré embarqué en en-tête, km formatés selon Precision_Distance,
  restructuration en-têtes (Domicile déplacé, période/année fusionnées
  au titre)
- Correction bug: le nom de fichier suggéré au téléchargement ne
  remontait pas au frontend (CORS WithExposedHeaders manquant +
  composants résumé ne lisaient pas Content-Disposition)
- Résumé mensuel: colonne Commentaire, sélecteur temporel unifié
  (auto-chargement), km selon précision
- Résumé annuel: bouton Export PDF repositionné, km selon précision
- Panneau totaux: renommage "Remboursement indicatif" + infobulles
  d'aide (icône) au lieu du texte permanent
- Ajout de PdfServiceIntegrationTests (3 tests), 65/65 tests backend OK
- Mise à jour requirements.md et design.md en conséquence
2026-09-28 08:58:23 +02:00
MadJax 91b59d4ce7 Charte graphique SchotzIAD : logo, favicon, palette de couleurs
Intègre l'identité visuelle officielle (planche fournie) :

- Assets ajoutés (frontend/src/assets/images/) : logo-icon, logo-carre,
  logo-horizontal (réservé aux PDF, non encore câblé), favicon.
- Favicon : src/favicon.ico régénéré depuis favicon.png (16/32/48, via Pillow)
  pour remplacer l'icône Angular par défaut ; PNG référencé en priorité dans
  index.html avec cache-busting (?v=) pour contourner le cache favicon des
  navigateurs Chromium (Chrome/Brave).
- Barre de navigation : logo-icon en tête (fond blanc localisé pour ressortir
  sur l'anthracite), couleurs de charte (fond anthracite, lien actif bleu IAD,
  survol orange).
- Pages d'authentification (login, register, forgot-password, reset-password) :
  logo carré centré au-dessus du formulaire, boutons en bleu IAD.
- Palette officielle en variables CSS globales (styles.scss) : --couleur-orange,
  --couleur-bleu, --couleur-anthracite, --couleur-gris-clair (+ déclinaisons
  de survol).
- Harmonisation des boutons d'action à fond bleu (texte) sur toute l'app :
  survol orange (véhicules, profil, barème, montants réglés, résumés mensuel/
  annuel, onboarding, formulaire de trajet, dialog de confirmation, carte).
  Exclusions volontaires : boutons rouges (suppression), boutons à icône,
  boutons secondaires à fond blanc, indicateurs d'état sélectionné/actif.

Specs : design.md complété (section Charte graphique : palette, convention de
survol, rôle de chaque asset).
2026-09-21 09:17:14 +02:00
MadJax f3465e04d2 Corrections UX : première connexion, carte Leaflet en prod, mise en page
- Onboarding : redirection automatique vers /register lorsqu'aucun compte n'existe
  (première utilisation), au lieu d'afficher la page de connexion.
- Carte Leaflet en production : import normalisé (Leaflet est CommonJS, l'API pouvait
  se retrouver sous .default en build prod -> échec d'initialisation). Nettoyage du
  marqueur _leaflet_id du conteneur pour que « Réessayer » fonctionne après un échec.
  Logs d'erreur explicites en cas d'échec d'import/init.
- Mise en page : layout applicatif en flex pleine hauteur (nav de hauteur naturelle,
  <main> occupe le reste et défile si besoin) sans étirer les vues courtes. La vue
  Trajets occupe l'espace restant (height:100%) sans scrollbar de page : seule la
  liste défile. Reset global (body margin 0, box-sizing border-box) supprimant la
  scrollbar de page parasite.
- Centrage uniforme des pages : ajout de margin:0 auto aux vues profil, véhicules,
  barème, résumé mensuel/annuel et montants réglés (comme trajets et carnet).

Builds backend (solution) et frontend (production) OK.
2026-09-15 19:53:16 +02:00
MadJax e3f946f7d4 SchotzIAD KM Tracker : suivi des trajets kilométriques (Angular + .NET 8)
Application complète de saisie et de suivi des trajets kilométriques avec
calcul de distance routière (OpenRouteService), barème kilométrique, résumés
et régularisation annuelle.

Backend (ASP.NET Core .NET 8, EF Core, SQLite) :
- Trajets (CRUD, réordonnancement, insertion), calcul de distance ORS avec
  fallback Haversine, géométrie d'itinéraire stockée par trajet, recalcul en masse.
- Profil, véhicules (avec dénomination), carnet d'adresses nommées, cache d'adresses.
- Barème kilométrique : tranches multiples par puissance fiscale, borne max
  exclusive avec 'illimité' (KmMax nullable), coefficient à 3 décimales,
  recopie du dernier barème connu.
- Résumés mensuel/annuel, montants réglés, régularisation, export PDF.

Frontend (Angular 22, zoneless + signals) :
- Consultation par jour, navigation temporelle synchronisée, carte Leaflet,
  formulaire de trajet (adresses nommées, domicile, autocomplétion BAN).
- Détection de changement zoneless (indépendante de zone.js).

Hébergement : Docker Compose (nginx + backend), scripts run-dev.sh / run-docker.sh.
2026-09-14 02:08:27 +02:00