From 0a9deac0da50138c69744317633ce32099ddb117 Mon Sep 17 00:00:00 2001 From: seb Date: Sun, 18 Oct 2026 21:29:13 +0200 Subject: [PATCH] u --- src/components/manifest/ManifestFormLine.jsx | 62 ++++++++++++++++++++ 1 file changed, 62 insertions(+) diff --git a/src/components/manifest/ManifestFormLine.jsx b/src/components/manifest/ManifestFormLine.jsx index caf8704..04e4ee3 100644 --- a/src/components/manifest/ManifestFormLine.jsx +++ b/src/components/manifest/ManifestFormLine.jsx @@ -578,6 +578,23 @@ class ManifestFormLine extends PureComponent { ? Math.round((ekNetto * (1 + Number(ekTaxRate) / 100) + Number.EPSILON) * 100) / 100 : null; + const marge = + vkNetto > 0 && ekNetto != null + ? ((vkNetto - ekNetto) / vkNetto) * 100 + : vkBrutto > 0 && ekBrutto != null + ? ((vkBrutto - ekBrutto) / vkBrutto) * 100 + : null; + + const rebate = parseNum(this.props.line?.rebate) ?? 0; + const effectiveNet = + vkNetto != null && Number.isFinite(vkNetto) + ? vkNetto * (1 - rebate / 100) + : null; + const effectiveMarge = + effectiveNet != null && effectiveNet > 0 && ekNetto != null + ? ((effectiveNet - ekNetto) / effectiveNet) * 100 + : null; + const hasPriceInfo = vkNetto != null || vkBrutto != null || ekNetto != null || ekBrutto != null || kind === 'quote' || kind === 'order'; @@ -697,6 +714,26 @@ class ManifestFormLine extends PureComponent { whiteSpace: 'nowrap', }} > + {/* Marge */} + 0 && effectiveMarge != null ? ` ยท Nach ${rebate}% Rabatt: ${effectiveMarge.toFixed(1).replace('.', ',')}%` : ''}` + : 'Kein EK- oder VK-Preis hinterlegt' + } + > + + Marge: {marge != null ? `${Math.floor(marge)}%` : 'โ€”'} + + + {/* EK Netto */} 0 && priceNet != null && Number.isFinite(priceNetNum) + ? ((vkNettoNum - priceNetNum) / vkNettoNum) * 100 + : null; + return ( + {/* Marge */} + {margeDelivery != null && ( + + + Marge: {Math.floor(margeDelivery)}% + + + )} + {priceNet != null && (