Files
HenFlow/lib/models/breed_setting.dart
T

36 lines
761 B
Dart

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