Fix Einkaufsliste: Mindestbestand in Packungen angebbar (Einheiten-Missverstaendnis)
Problem: min_stock wird in Basiseinheiten verglichen. Bei einem 190g-Glas (base gram, package 190) bedeutete "min 2" 2 Gramm statt 2 Glaeser -> Produkt tauchte nie auf der Einkaufsliste auf. Fix: - Produktformular: Mindestbestand wahlweise in Basiseinheit ODER Packungen eingebbar (mit Umrechnung); Default Packungen bei Packungsprodukten. - ShoppingItem liefert package_size; Einkaufsliste/Dashboard zeigen Bedarf in Packungen (+ Basiseinheit in Klammern) via amountText(). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -2,7 +2,7 @@ import { useEffect, useState } from "react";
|
||||
import { Link } from "react-router-dom";
|
||||
import { api } from "../api";
|
||||
import Icon from "../components/Icon";
|
||||
import { fmt, unitShort } from "../units";
|
||||
import { amountText, fmt, unitShort } from "../units";
|
||||
|
||||
export default function Dashboard() {
|
||||
const [expiring, setExpiring] = useState([]);
|
||||
@@ -115,8 +115,8 @@ export default function Dashboard() {
|
||||
{shopping.map((it) => (
|
||||
<tr key={`p${it.product_id}`}>
|
||||
<td>{it.name}</td>
|
||||
<td className="num">{fmt(it.stock)} {unitShort(it.base_unit)}</td>
|
||||
<td className="num strong">{fmt(it.deficit)} {unitShort(it.base_unit)}</td>
|
||||
<td className="num">{amountText(it.stock, it.package_size, it.base_unit)}</td>
|
||||
<td className="num strong">{amountText(it.deficit, it.package_size, it.base_unit)}</td>
|
||||
</tr>
|
||||
))}
|
||||
</tbody>
|
||||
|
||||
Reference in New Issue
Block a user