ustSummePositionen function
Enthaltene MwSt einer Belegpositionsliste — je Steuersatz gruppiert, dann einmal zerlegt. Fuer Aufrufer, die die Positionen schon haben (Storno, Nachdruck), und die gemeinsame Rechnung hinter ustSumme.
Implementation
int ustSummePositionen(List<KasseneckItem> positionen) {
final brutto = <VatRate, int>{};
for (final p in positionen) {
brutto[p.vat] = (brutto[p.vat] ?? 0) + p.totalCents;
}
return brutto.entries.fold(0, (s, e) => s + ustCentsAusBrutto(e.value, e.key.rate));
}