From f07946b48983a989307da2c3a23ee138fed4fa01 Mon Sep 17 00:00:00 2001 From: Claude Agent Date: Wed, 25 Mar 2026 22:39:21 +0000 Subject: [PATCH] feat(dashboard): show article subtotal, discount, and transport in order detail receipt Co-Authored-By: Claude Opus 4.6 (1M context) --- api/app/static/js/dashboard.js | 20 +++++++++++++++++--- api/app/templates/dashboard.html | 2 +- 2 files changed, 18 insertions(+), 4 deletions(-) diff --git a/api/app/static/js/dashboard.js b/api/app/static/js/dashboard.js index f078a9f..6415752 100644 --- a/api/app/static/js/dashboard.js +++ b/api/app/static/js/dashboard.js @@ -747,10 +747,24 @@ function renderReceipt(items, order) { return; } + const articole = items.reduce((s, i) => s + Number(i.price || 0) * Number(i.quantity || 0), 0); + const discount = Number(order.discount_total || 0); + const transport = Number(order.delivery_cost || 0); const total = order.order_total != null ? fmtNum(order.order_total) : '-'; - const html = `Total: ${total} lei`; - desktop.innerHTML = html; - mobile.innerHTML = html; + + // Desktop: full labels + let dHtml = `Articole: ${fmtNum(articole)}`; + if (discount > 0) dHtml += `Discount: \u2013${fmtNum(discount)}`; + if (transport > 0) dHtml += `Transport: ${fmtNum(transport)}`; + dHtml += `Total: ${total} lei`; + desktop.innerHTML = dHtml; + + // Mobile: shorter labels + let mHtml = `Art: ${fmtNum(articole)}`; + if (discount > 0) mHtml += `Disc: \u2013${fmtNum(discount)}`; + if (transport > 0) mHtml += `Transp: ${fmtNum(transport)}`; + mHtml += `Total: ${total} lei`; + mobile.innerHTML = mHtml; } // ── Quick Map Modal (uses shared openQuickMap) ─── diff --git a/api/app/templates/dashboard.html b/api/app/templates/dashboard.html index 8a01f5a..fdb543f 100644 --- a/api/app/templates/dashboard.html +++ b/api/app/templates/dashboard.html @@ -168,5 +168,5 @@ {% endblock %} {% block scripts %} - + {% endblock %}