/** * Renvoie les Productions liés aux Batiments de cette collection * @return ProductionCollection */ public function getProductions() { if (is_null($this->cacheProductions)) { $this->cacheProductions = ProductionBusiness::getFromBatiments($this); $this->cacheProductions->store(); } return $this->cacheProductions; }
/** * Renvoie les Infrastructures liés à une collection de Productions * @param ProductionCollection $productions * @return InfrastructureCollection */ public static function getFromProductions(ProductionCollection $productions) { $ids = $productions->getIdInfrastructures(); if (!$ids) { return new InfrastructureCollection(); } $req = "SELECT * FROM infrastructure WHERE idInfrastructure IN (" . $ids . ");"; return DbHandler::collFromQuery($req, 'Infrastructure', 'InfrastructureCollection'); }
/** * Renvoie les Batiments liés à une collection de Productions * @param ProductionCollection $productions * @return BatimentCollection */ public static function getFromProductions(ProductionCollection $productions) { $ids = $productions->getIdBatiments(); if (!$ids) { return new BatimentCollection(); } $req = "SELECT * FROM batiment WHERE idBatiment IN (" . $ids . ");"; return DbHandler::collFromQuery($req, 'Batiment', 'BatimentCollection'); }
/** * Renvoie les Productions liés à l'objet * @return ProductionCollection */ public function getProductions() { if (is_null($this->cacheProductions)) { $this->cacheProductions = ProductionBusiness::getByInfrastructure($this); $this->cacheProductions->store(); } return $this->cacheProductions; }
/** * Renvoie les Hexas liées à une collection de Productions * @param ProductionCollection $productions * @return HexaCollection */ public static function getFromProductions(ProductionCollection $productions) { $ids = $productions->getIdUnites(); $ids2 = $productions->getIdBatiments(); $ids3 = $productions->getIdInfrastructures(); $ids = implode(',', array_merge(explode(',', $ids), explode(',', $ids2), explode(',', $ids3))); if (!$ids) { return new HexaCollection(); } $req = "SELECT * FROM hexa WHERE idHexa IN (" . $ids . ");"; return DbHandler::collFromQuery($req, 'Hexa', 'HexaCollection'); }
/** * Renvoie les Unités liées à une collection de Productions * @param ProductionCollection $productions * @return UniteCollection */ public static function getFromProductions(ProductionCollection $productions) { $ids = $productions->getIdUnites(); if (!$ids) { return new UniteCollection(); } $req = "SELECT * FROM unite WHERE idUnite IN (" . $ids . ");"; return DbHandler::collFromQuery($req, 'Unite', 'UniteCollection'); }