diff --git a/src/app/api/diag-mvtart/route.ts b/src/app/api/diag-mvtart/route.ts deleted file mode 100644 index 0fbc955..0000000 --- a/src/app/api/diag-mvtart/route.ts +++ /dev/null @@ -1,44 +0,0 @@ -import { NextResponse } from "next/server"; -import { db } from "@/db"; -import { sql } from "drizzle-orm"; - -export async function GET() { - try { - // Colonnes de mvtart - const cols = await db.execute(sql` - SELECT column_name, data_type - FROM information_schema.columns - WHERE table_name = 'mvtart' - ORDER BY ordinal_position - `); - - // 5 ventes récentes avec tous les montants visibles - const sample = await db.execute(sql` - SELECT * - FROM mvtart - WHERE genremvt = 3 AND site IN ('292', '579') - ORDER BY datmvt DESC - LIMIT 5 - `); - - // CA mars 2025 par site via mntmvtttc — pour comparer avec le cube - const totaux = await db.execute(sql` - SELECT site, - ABS(SUM(mntmvtttc))::float AS ca_mntmvtttc, - COUNT(*) AS nb_lignes - FROM mvtart - WHERE genremvt = 3 - AND TO_CHAR(datmvt, 'YYYY-MM') = '2025-03' - AND site IN ('292', '579') - GROUP BY site - `); - - return NextResponse.json({ - columns: cols.rows, - sample_ventes: sample.rows, - totaux_202503: totaux.rows, - }); - } catch (e) { - return NextResponse.json({ error: String(e) }, { status: 500 }); - } -} diff --git a/src/app/api/diag/route.ts b/src/app/api/diag/route.ts index dd06243..0173569 100644 --- a/src/app/api/diag/route.ts +++ b/src/app/api/diag/route.ts @@ -151,6 +151,33 @@ export async function GET(req: NextRequest) { ventesProduitsDiag = { error: String(e) }; } + // Diagnostic mvtart : colonnes + totaux mars 2025 + sample vente + let mvtartDiag: unknown; + try { + const cols = await db.execute(sql` + SELECT column_name, data_type + FROM information_schema.columns + WHERE table_name = 'mvtart' + ORDER BY ordinal_position + `); + const totaux = await db.execute(sql` + SELECT site, + ABS(SUM(mntmvtttc))::float AS sum_mntmvtttc, + COUNT(*) AS nb_lignes + FROM mvtart + WHERE genremvt = 3 + AND TO_CHAR(datmvt, 'YYYY-MM') = '2025-03' + AND site IN ('292', '579') + GROUP BY site + `); + const sampleVente = await db.execute(sql` + SELECT * FROM mvtart WHERE genremvt = 3 AND site = '292' LIMIT 1 + `); + mvtartDiag = { columns: cols.rows, totaux_202503: totaux.rows, sample: sampleVente.rows }; + } catch (e) { + mvtartDiag = { error: String(e) }; + } + return NextResponse.json({ timestamp: new Date().toISOString(), dateRange: { dateDebut, dateFin }, @@ -170,5 +197,6 @@ export async function GET(req: NextRequest) { }, postgresql, ventesProduitsDiag, + mvtartDiag, }); }