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>
This commit is contained in:
co-authored by
Claude Sonnet 4.6
parent
88a0dbe6d2
commit
8d901da125
@@ -5,7 +5,7 @@
|
||||
const express = require('express');
|
||||
const router = express.Router();
|
||||
const { getMarches } = require('../services/baserow');
|
||||
const { isCloture, normalizeMarche, parseNum } = require('../services/calc');
|
||||
const { isCloture, normalizeMarche, parseNum, selectVal } = require('../services/calc');
|
||||
|
||||
router.get('/', async (req, res) => {
|
||||
try {
|
||||
@@ -14,8 +14,8 @@ router.get('/', async (req, res) => {
|
||||
|
||||
let rows = await getMarches();
|
||||
|
||||
// Uniquement non clôturés
|
||||
rows = rows.filter(r => !isCloture(r));
|
||||
// Uniquement en service (non clôturés, observation = "En service")
|
||||
rows = rows.filter(r => !isCloture(r) && selectVal(r.observation).toLowerCase().includes('en service'));
|
||||
|
||||
// Filtres
|
||||
if (regionFilter) rows = rows.filter(r => r.region === regionFilter);
|
||||
|
||||
Reference in New Issue
Block a user