diff options
Diffstat (limited to 'src/Model/Village.php')
-rw-r--r-- | src/Model/Village.php | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/src/Model/Village.php b/src/Model/Village.php index 03a57b7..ff0b7e8 100644 --- a/src/Model/Village.php +++ b/src/Model/Village.php @@ -143,6 +143,17 @@ class Village return $results[0] ?? null; } + public static function getPopulationDemand(int $villageId): int + { + return array_reduce( + Village::getUnits($villageId, Village::FETCH_UNIT_RESIDENCE, Village::RETURN_UNIT_EXISTING), + function ($carry, Unit $unit) { + return $carry + $unit->getPopulationDemand(); + }, + 0 + ); + } + public const FETCH_UNIT_HOME_AT_HOME = 1; public const FETCH_UNIT_HOME_AT_SUPPORT = 2; public const FETCH_UNIT_SUPPORT_AT_HOME = 3; |