diff --git a/backend/src/tools/bestellungen/routes.js b/backend/src/tools/bestellungen/routes.js index 48f0913..58cd5f6 100644 --- a/backend/src/tools/bestellungen/routes.js +++ b/backend/src/tools/bestellungen/routes.js @@ -24,7 +24,7 @@ const loadOrder = (id, userId) => { return order; }; -// GET / – Liste mit Zählern +// GET / – Liste mit Zählern + Items router.get('/', authenticate, (req, res) => { const orders = db.prepare(` SELECT o.*, @@ -38,6 +38,14 @@ router.get('/', authenticate, (req, res) => { GROUP BY o.id ORDER BY o.created_at DESC `).all(uid(req)); + // Attach items to each order + const items = db.prepare('SELECT * FROM order_items WHERE order_id IN (SELECT id FROM orders WHERE user_id=?) ORDER BY order_id, id').all(uid(req)); + const itemsByOrder = {}; + for (const item of items) { + if (!itemsByOrder[item.order_id]) itemsByOrder[item.order_id] = []; + itemsByOrder[item.order_id].push(item); + } + for (const order of orders) order.items = itemsByOrder[order.id] || []; res.json(orders); });