summaryrefslogtreecommitdiff
path: root/src/Model/Village.php
diff options
context:
space:
mode:
Diffstat (limited to 'src/Model/Village.php')
-rw-r--r--src/Model/Village.php11
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;