receipt_engine library
Motore di calcolo per scontrini fiscali.
Logica pura: nessuna dipendenza da Flutter, da un database o da I/O. È questo che rende il pacchetto testabile in millisecondi e riutilizzabile da un'app mobile, da un backend o da un tool a riga di comando.
Classes
- AmountDiscount
- Sconto espresso come importo fisso.
- Discount
- Sconto applicabile a una riga o all'intero documento.
- DiscountAllocator
- Distribuisce lo sconto di documento fra gli importi che lo compongono.
- ItalianMoneyFormatter
- Formato italiano: virgola come separatore decimale, simbolo in coda.
- Money
- Importo monetario rappresentato in centesimi.
- MoneyFormatter
- Formattazione degli importi.
- Payment
- Un importo versato con un mezzo di pagamento.
- PaymentMethod
- Mezzo di pagamento.
- PercentageDiscount
- Sconto espresso in percentuale.
- PlainMoneyFormatter
- Formato neutro per log e messaggi di errore.
- ProportionalDiscountAllocator
- Ripartizione proporzionale al peso di ciascun importo.
- Receipt
- Scontrino chiuso e immutabile.
- ReceiptBuilder
- Costruisce uno scontrino passo dopo passo e lo chiude in un Receipt immutabile.
- ReceiptJson
- Traduzione fra i documenti del dominio e mappe JSON.
- ReceiptLine
- Riga di uno scontrino.
- ReturnBuilder
- Costruisce un documento di reso a partire da uno scontrino chiuso.
- ReturnLine
- Riga di un documento di reso: una riga dello scontrino originale, resa in tutto o in parte.
- ReturnReceipt
- Documento di reso collegato a uno scontrino.
- VatBreakdown
- Scomposizione di un importo lordo in imponibile e imposta.
- VatCalculator
- Calcolo dell'IVA per scorporo.
- VatRate
- Aliquota IVA.
- VatSummaryCalculator
- Costruisce il riepilogo IVA di un documento.
Typedefs
-
DocumentTotals
= ({List<
Money> netLineTotals, List<VatBreakdown> vatSummary}) - Esito del calcolo di un documento.
- RatedAmount = ({Money amount, VatRate rate})
- Un importo con l'aliquota a cui appartiene.
Exceptions / Errors
- ChangeNotAvailableError
- Errore sollevato quando il resto dovrebbe uscire da un pagamento che non dà resto.
- ExcessiveReturnError
- Errore sollevato quando si tenta di rendere più di quanto venduto.
- InsufficientPaymentError
- Errore sollevato quando l'incasso non copre il totale.
- ReceiptClosedError
- Errore sollevato quando si opera su un documento già chiuso.