Beispiel #1
0
 /**
  * 
  * @param array $resultDecoded
  * @return LookupResult
  */
 private function convertToLookupResult($resultDecoded)
 {
     $resultProp = $resultDecoded['resourceSets'][0]['resources'][0];
     $address = $resultProp['address'];
     $geocode = $resultProp['geocodePoints'][0]['coordinates'];
     $countryIso = array_search($address['countryRegion'], LookupResult::$ISO_TABLE);
     if ($countryIso) {
         $countryIso = LookupResult::remapIso($countryIso);
     }
     return new LookupResult($address['postalCode'], $countryIso, $geocode[1], $geocode[0], $resultProp['adminDistrict'], $address['countryRegion']);
 }
 /**
  *
  * @param \models\services\LookupResult $lookupResult
  * @param type $preciseLong
  * @param type $preciseLat
  * @return \models\entities\GeocodeCached
  */
 protected function cacheLookup(LookupResult $lookupResult, $preciseLong, $preciseLat, $extraData = array())
 {
     $data = array('longitude' => $preciseLong, 'latitude' => $preciseLat) + $lookupResult->getCachingData($extraData);
     if ($data['longitude'] && $data['longitude']) {
         $saveId = $this->geocodeCachedManager->createEntity($data)->save(true);
         return $this->geocodeCachedManager->getEntity($saveId);
     } else {
         return null;
     }
 }