From 06e1b1a238ae758f09987f159dcfe1372335d45c Mon Sep 17 00:00:00 2001 From: Michael SCHAL Date: Wed, 18 Mar 2026 19:17:22 +0100 Subject: [PATCH] chore: add ventesProduits diagnostic to diag endpoint Shows row counts, gamme/code3 fill rates, and sample rows for AUXENCE/A025 to diagnose missing classification data. Co-Authored-By: Claude Sonnet 4.6 --- src/app/api/diag/route.ts | 34 ++++++++++++++++++++++++++++++++-- 1 file changed, 32 insertions(+), 2 deletions(-) diff --git a/src/app/api/diag/route.ts b/src/app/api/diag/route.ts index d35d890..735880c 100644 --- a/src/app/api/diag/route.ts +++ b/src/app/api/diag/route.ts @@ -98,13 +98,42 @@ export async function GET(req: NextRequest) { probe(`${FF_API_BASE}/api/mouvements/types`), ]); - // Test PostgreSQL + // Test PostgreSQL + diagnostic ventesProduits let postgresql: unknown; + let ventesProduitsDiag: unknown; try { const r = await db.execute(sql`SELECT COUNT(*) as count FROM session_snapshots`); - postgresql = { ok: true, snapshots: Number(r.rows[0]?.count ?? 0) }; + + // Diagnostic ventesProduits : cherche par les 2 codes possibles d'AUXENCE + const vpByName = await db.execute(sql` + SELECT code_fournisseur, COUNT(*) as nb_rows, + COUNT(code_gamme) as nb_gamme, + COUNT(code_gamme_init) as nb_gamme_init, + COUNT(code3) as nb_code3 + FROM ventes_produits + WHERE code_fournisseur IN ('AUXENCE', 'A025', ${codefou}) + GROUP BY code_fournisseur + `); + + // Sample de quelques codeins dans ventesProduits pour ce fournisseur + const vpSample = await db.execute(sql` + SELECT codein, code_fournisseur, code_gamme, code_gamme_init, code3, libelle3 + FROM ventes_produits + WHERE code_fournisseur IN ('AUXENCE', 'A025', ${codefou}) + LIMIT 3 + `); + + postgresql = { + ok: true, + snapshots: Number(r.rows[0]?.count ?? 0), + }; + ventesProduitsDiag = { + byFournisseur: vpByName.rows, + sample: vpSample.rows, + }; } catch (e) { postgresql = { ok: false, error: String(e) }; + ventesProduitsDiag = { error: String(e) }; } return NextResponse.json({ @@ -122,5 +151,6 @@ export async function GET(req: NextRequest) { "mouvements/types": mvt_types, }, postgresql, + ventesProduitsDiag, }); }