import 'breed_catalog.dart'; import 'hen.dart'; class BreedSetting { final String breedId; List hens; BreedSetting({ required this.breedId, required this.hens, }); Map toMap() { return { 'breedId': breedId, 'hens': hens.map((e) => e.toMap()).toList(), }; } factory BreedSetting.fromMap(Map map) { return BreedSetting( breedId: map['breedId'], hens: ((map['hens'] ?? []) as List) .map((e) => Hen.fromMap(Map.from(e))) .toList(), ); } int get activeHensCount { return hens.where((hen) => hen.isLaying).length; } double get dailyProduction => activeHensCount * breedFromId(breedId).eggsPerHenPerDay; }