/** * @inheritdoc */ public function getStates(array $ids, Struct\ShopContextInterface $context) { $query = $this->connection->createQueryBuilder(); $query->select($this->fieldHelper->getStateFields()); $query->from('s_core_countries_states', 'countryState')->leftJoin('countryState', 's_core_countries_states_attributes', 'countryStateAttribute', 'countryStateAttribute.stateID = countryState.id'); $this->fieldHelper->addCountryStateTranslation($query, $context); $query->where('countryState.id IN (:ids)')->setParameter(':ids', $ids, Connection::PARAM_INT_ARRAY); /**@var $statement \Doctrine\DBAL\Driver\ResultStatement */ $statement = $query->execute(); $data = $statement->fetchAll(\PDO::FETCH_ASSOC); $states = []; foreach ($data as $row) { $states[] = $this->countryHydrator->hydrateState($row); } return $states; }