mirror of
https://github.com/R0m1k3/CollectFlow.git
synced 2026-10-21 22:18:08 +02:00
chore: improve diag to check mntmvtht vs mntmvtttc totals and artfou1.preference distribution
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
1 parent
63641e9de9
commit
8b3ed4c435
1 file changed
+28
-11
+28
-11
@@ -151,18 +151,14 @@ export async function GET(req: NextRequest) {
|
|||||||
ventesProduitsDiag = { error: String(e) };
|
ventesProduitsDiag = { error: String(e) };
|
||||||
}
|
}
|
||||||
|
|
||||||
// Diagnostic mvtart : colonnes + totaux mars 2025 + sample vente
|
// Diagnostic analytics CA TTC
|
||||||
let mvtartDiag: unknown;
|
let mvtartDiag: unknown;
|
||||||
try {
|
try {
|
||||||
const cols = await db.execute(sql`
|
// 1. Totaux mars 2025 avec mntmvtht et mntmvtttc pour comparer avec API (HT=225k, TTC=269k)
|
||||||
SELECT column_name, data_type
|
|
||||||
FROM information_schema.columns
|
|
||||||
WHERE table_name = 'mvtart'
|
|
||||||
ORDER BY ordinal_position
|
|
||||||
`);
|
|
||||||
const totaux = await db.execute(sql`
|
const totaux = await db.execute(sql`
|
||||||
SELECT site,
|
SELECT site,
|
||||||
ABS(SUM(mntmvtttc))::float AS sum_mntmvtttc,
|
ABS(SUM(mntmvtht))::float AS sum_ht,
|
||||||
|
ABS(SUM(mntmvtttc))::float AS sum_ttc,
|
||||||
COUNT(*) AS nb_lignes
|
COUNT(*) AS nb_lignes
|
||||||
FROM mvtart
|
FROM mvtart
|
||||||
WHERE genremvt = 3
|
WHERE genremvt = 3
|
||||||
@@ -170,10 +166,31 @@ export async function GET(req: NextRequest) {
|
|||||||
AND site IN ('292', '579')
|
AND site IN ('292', '579')
|
||||||
GROUP BY site
|
GROUP BY site
|
||||||
`);
|
`);
|
||||||
const sampleVente = await db.execute(sql`
|
// 2. Distribution des valeurs de preference dans artfou1
|
||||||
SELECT * FROM mvtart WHERE genremvt = 3 AND site = '292' LIMIT 1
|
const prefDist = await db.execute(sql`
|
||||||
|
SELECT preference, COUNT(*) AS nb
|
||||||
|
FROM artfou1
|
||||||
|
GROUP BY preference
|
||||||
|
ORDER BY preference
|
||||||
`);
|
`);
|
||||||
mvtartDiag = { columns: cols.rows, totaux_202503: totaux.rows, sample: sampleVente.rows };
|
// 3. Ventes mars 2025 non attribuées (aucune ligne artfou1 avec preference=1)
|
||||||
|
const sansPreference = await db.execute(sql`
|
||||||
|
SELECT COUNT(DISTINCT m.artnoid) AS nb_articles_sans_pref
|
||||||
|
FROM mvtart m
|
||||||
|
JOIN articles a ON a.no_id = m.artnoid
|
||||||
|
WHERE m.genremvt = 3
|
||||||
|
AND TO_CHAR(m.datmvt, 'YYYY-MM') = '2025-03'
|
||||||
|
AND m.site IN ('292','579')
|
||||||
|
AND NOT EXISTS (
|
||||||
|
SELECT 1 FROM artfou1 af
|
||||||
|
WHERE af.art_no_id = a.no_id AND af.preference = 1
|
||||||
|
)
|
||||||
|
`);
|
||||||
|
mvtartDiag = {
|
||||||
|
totaux_202503: totaux.rows,
|
||||||
|
artfou1_preference_distribution: prefDist.rows,
|
||||||
|
articles_vendus_sans_pref1: sansPreference.rows,
|
||||||
|
};
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
mvtartDiag = { error: String(e) };
|
mvtartDiag = { error: String(e) };
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in new issue
Block a user