From f4302c8aad88425dbe483d5b00a916e0e2c8a68d Mon Sep 17 00:00:00 2001 From: Dicken Date: Wed, 17 Jun 2026 17:19:07 +0200 Subject: [PATCH] =?UTF-8?q?debug:=20Revenue-Aufschl=C3=BCsselung=20im=20De?= =?UTF-8?q?bug-Endpoint?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- backend/src/tools/statistik/routes.js | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/backend/src/tools/statistik/routes.js b/backend/src/tools/statistik/routes.js index b5f99ed..adb5de4 100644 --- a/backend/src/tools/statistik/routes.js +++ b/backend/src/tools/statistik/routes.js @@ -205,11 +205,17 @@ router.get('/overview', authenticate, (req, res) => { }); }); -// Debug: rohe Auftragsdaten anzeigen +// Debug: rohe Auftragsdaten mit Revenue router.get('/debug', authenticate, (req, res) => { const u = uid(req); const orders = db.prepare('SELECT id, name, status, bezahlt, bezahlt_am, created_at, custom_price FROM orders WHERE user_id=? ORDER BY created_at DESC LIMIT 20').all(u); - res.json(orders); + const result = orders.map(o => { + const items = db.prepare('SELECT custom_price, stueckzahl, preis_freundschaft FROM order_items WHERE order_id=?').all(o.id); + const itemRevenue = items.reduce((s,i) => s + (i.custom_price||0)*(i.stueckzahl||1), 0); + const baseCost = items.reduce((s,i) => s + (i.preis_freundschaft||0)*(i.stueckzahl||1), 0); + return { ...o, itemRevenue, baseCost, totalRevenue: o.custom_price || itemRevenue, items }; + }); + res.json(result); }); module.exports = router;