add some new features
This commit is contained in:
@@ -0,0 +1,27 @@
|
||||
import 'bauteil_model.dart';
|
||||
|
||||
enum BauteilZeitraum { jahr, monat, tag }
|
||||
|
||||
class BauteilAuswertungsGruppe {
|
||||
const BauteilAuswertungsGruppe({
|
||||
required this.beginn,
|
||||
required this.bauteile,
|
||||
});
|
||||
final DateTime beginn;
|
||||
final List<BauteilModel> bauteile;
|
||||
|
||||
static bool preisBekannt(BauteilModel bauteil) =>
|
||||
bauteil.gesamtpreis != null &&
|
||||
bauteil.gesamtpreis!.isFinite &&
|
||||
bauteil.gesamtpreis! >= 0;
|
||||
|
||||
static double summeFuer(Iterable<BauteilModel> bauteile) => double.parse(
|
||||
bauteile
|
||||
.where(preisBekannt)
|
||||
.fold<double>(0, (sum, item) => sum + item.gesamtpreis!)
|
||||
.toStringAsFixed(2),
|
||||
);
|
||||
|
||||
double get summe => summeFuer(bauteile);
|
||||
int get ohnePreis => bauteile.where((item) => !preisBekannt(item)).length;
|
||||
}
|
||||
Reference in New Issue
Block a user