Commit Graph

5 Commits

Author SHA1 Message Date
Nabil Derouiche 18ec359cf2 feat: exports conformes fichiers-cibles (PPTX/XLSX/DOCX/PDF)
- PPTX : 9 slides ciblées — couverture blanche #0B2A55, alertes rouge
  #DC2626 (8 cols + barres █/░), CAPEX/OPEX paginés (7 cols), en cours (4 cols)
- XLSX : Sheet 2 renommée "Estimation Évolution" avec colonnes Marché DT,
  Min DT, Consommé DT, DT/Mois, Projeté DT, Résultat (Normal/Sous Min/Avenant)
- DOCX : rapport complet 10 sections — TOC, Synthèse, Alertes, Modernisation,
  par-région avec couleurs régionales, Estimation, Matrice risque, Recommandations
- PDF : palette mise à jour (#0B2A55, #0680C3, régions) conforme au cible
- export-pptx.js et export-docx.js extraits en services dédiés
- routes/export.js allégé (inline PPTX/DOCX ~400 lignes → 20 lignes)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-19 11:35:37 +01:00
Nabil Derouiche 0a0ffc31cf feat: intégration table 872 — Pipeline AO enrichi + Modernisation succession
1. routes/pipeline.js — enrichissement AO
   - Phase calculée (Préparation/Ouvert/Dépouillé/Évaluation/Attribué)
   - Jours restants avant date-limite
   - Régions avec couleurs config
   - Estimation totale agrégée

2. routes/modernisation.js (nouveau)
   - Croise table 856 (nature Modernisation) avec table 872 (pipeline)
   - Jointure par région
   - Retourne actuel + suivant(s) par région

3. server.js — route /api/modernisation (admin+)

4. index.html
   - Slide 6 Pipeline AO : 8 colonnes, phases badges, région tags, jours alerte
   - Slide 4 Par Région : bloc "AO en lancement" sous chaque carte région
   - Slide 9 Modernisation (nouveau) : vue chaîne actuel → suivant par région
   - Nav : bouton Modernisation (admin+)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-19 10:59:10 +01:00
Nabil Derouiche 7ca0eccb96 feat: ajouter region_csc à toutes les références marchés
Implémente buildRef(r) dans calc.js :
  ref = id_marche + ' - ' + region_csc  (ex: AO 58/2024 : Lot01 - ULS Gabes)

Propagé dans :
- services/calc.js       → champ ref de normalizeMarche()
- services/export-xlsx.js → toutes les cellules référence
- routes/export.js        → PPTX + DOCX (3 occurrences)
- index.html              → normalizeMarche() champ id_marche

export-pdf.js déjà couvert via r.ref (utilise normalizeMarche)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-19 10:40:07 +01:00
Nabil Derouiche 8d901da125 feat: v3 — refonte thème + avancement physique + exports conformes cibles
- index.html: refonte complète thème dark gradient (top-header + slide-nav, 9 vues)
- calc.js: ajout resultatPhysique(), avancement physique partout
- routes/pilotage.js: catégories Normal/Sous Avancement/Dépassement/Non déterminé
- services/export-xlsx.js: rapport complet multi-feuilles (Situation + Pilotage)
- routes/export.js: XLSX/PPTX/DOCX — sortie unique complète Zone Sud
  - PPTX: 5 slides (couverture, synthèse, alertes, pilotage, par région)
  - DOCX: rapport structuré (couverture, KPIs, alertes, par région, pilotage)
- services/export-pdf.js: colonnes avancement physique uniquement

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-13 19:45:53 +01:00
Nabil Derouiche 88a0dbe6d2 feat: RLA API v1.0.0 — API complète + exports + thème McKinsey
- 9 endpoints métier : synthese, alertes, en-service, en-cours,
  par-region, clotures, pilotage-proactif, matrice-risque
- Exports PDF (tous rôles) / XLSX PPTX DOCX (superadmin)
- services/calc.js : helpers normalisés partagés
- services/export-pdf.js : PDF async PDFKit par vue
- Thème McKinsey (#1C2B4B / bleu pétrole / gris sobre)
- Boutons XLSX/DOCX front (superadmin uniquement)
- BASEROW_API_URL → https://baserow.bolbol.tn/api/
- dotenv override: true

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-12 23:47:10 +01:00