コード例 #1
0
ファイル: AutocompleteManager.php プロジェクト: blab2015/seh
 /**
  * @param Region $region
  *
  * @return $this
  */
 public function addRegion($region)
 {
     $em = $this->entityManager;
     /** @var HotelRepository $hotelRepo */
     $hotelRepo = $em->getRepository('SehBundle:Hotel');
     $departments = $region->getDepartments();
     $depIds = array();
     $brands = array();
     foreach (array_keys($this->context->getValues('brand')) as $brand) {
         $brands[$brand] = (int) 0;
     }
     /** @var Department $department */
     foreach ($departments as $department) {
         $depIds[] = $department->getId();
     }
     unset($brands['seh']);
     $nbForRegion = $hotelRepo->findNbForRegion($region);
     foreach ($nbForRegion as $nbPerBrand) {
         $brands[strtolower($nbPerBrand['artsysID'])] = (int) $nbPerBrand['nbHotels'];
     }
     $data = array('id' => $region->getId(), 'brands' => $brands, 'departmentsIds' => $depIds);
     $document = $this->regionType->createDocument($region->getId());
     $document->setData($data);
     $this->regionType->addDocument($document);
     $this->updateRegion($region);
     return $this;
 }