From f0a360115f896203c9cea1d8d3b0aaed4d2b24e4 Mon Sep 17 00:00:00 2001 From: Michael SCHAL Date: Tue, 31 Mar 2026 17:32:54 +0200 Subject: [PATCH] chore: inspect fouident table for correct supplier names --- src/app/api/diag-fournisseurs/route.ts | 39 +++++++++++--------------- 1 file changed, 16 insertions(+), 23 deletions(-) diff --git a/src/app/api/diag-fournisseurs/route.ts b/src/app/api/diag-fournisseurs/route.ts index 14f3a94..d65eaf4 100644 --- a/src/app/api/diag-fournisseurs/route.ts +++ b/src/app/api/diag-fournisseurs/route.ts @@ -4,39 +4,32 @@ import { sql } from "drizzle-orm"; export async function GET() { try { - // 1. Colonnes de v_ca_fournisseur - const vCols = await db.execute(sql` + // 1. Colonnes de fouident + const cols = await db.execute(sql` SELECT column_name, data_type FROM information_schema.columns - WHERE table_name = 'v_ca_fournisseur' + WHERE table_name = 'fouident' ORDER BY ordinal_position `); - // 2. Sample de v_ca_fournisseur - const vSample = await db.execute(sql` - SELECT * FROM v_ca_fournisseur LIMIT 10 - `); + // 2. Sample fouident + const sample = await db.execute(sql`SELECT * FROM fouident LIMIT 10`); - // 3. D005 dans v_ca_fournisseur - const vD005 = await db.execute(sql` - SELECT * FROM v_ca_fournisseur - WHERE code = 'D005' OR codefou = 'D005' - OR raisonsociale ILIKE '%depot%' OR raisonsociale ILIKE '%bazar%' - LIMIT 10 - `); + // 3. D005 dans fouident + const d005 = await db.execute(sql`SELECT * FROM fouident WHERE code = 'D005' LIMIT 5`); - // 4. Définition SQL de la vue - const vDef = await db.execute(sql` - SELECT definition - FROM pg_views - WHERE viewname = 'v_ca_fournisseur' + // 4. Nos fournisseurs clés pour comparer les noms + const known = await db.execute(sql` + SELECT * FROM fouident + WHERE code IN ('D005','J009','M0341','L0091','S053','B0071','T015','C024','S025','C023') + ORDER BY code `); return NextResponse.json({ - v_ca_fournisseur_columns: vCols.rows, - v_ca_fournisseur_sample: vSample.rows, - v_ca_fournisseur_d005: vD005.rows, - view_definition: vDef.rows, + fouident_columns: cols.rows, + fouident_sample: sample.rows, + fouident_d005: d005.rows, + fouident_known: known.rows, }); } catch (e) { return NextResponse.json({ error: String(e) }, { status: 500 });