public function getLastOrderByItineraryAndPeriodOfDay(\Buggl\MainBundle\Entity\Itinerary $itinerary, $periodOfDay = 0)
 {
     $sql = "SELECT itsd.* \n\t\t\t\t\tFROM itinerary_to_spot_detail itsd\n\t\t\t\t\tWHERE 1\n\t\t\t\t\t\tAND itsd.itinerary_id = ?\n\t\t\t\t\t\tAND itsd.period_of_day = ?\n\t\t\t\t\t\tORDER BY itsd.order DESC\n\t\t\t\t\t\tLIMIT 0, 1";
     $params = array($itinerary->getID(), $periodOfDay);
     $em = $this->getEntityManager();
     $rsm = new ResultSetMappingBuilder($em);
     $rsm->addRootEntityFromClassMetadata('BugglMainBundle:ItineraryToSpotDetail', 'itsd');
     $query = $this->_em->createNativeQuery($sql, $rsm);
     $query->setParameters($params);
     try {
         $result = $query->getResult();
     } catch (\Doctrine\ORM\NoResultException $e) {
         return null;
     }
     return $result;
 }
 public function getByItinerary(\Buggl\MainBundle\Entity\Itinerary $itinerary = null)
 {
     $em = $this->getEntityManager();
     $rsm = new ResultSetMappingBuilder($em);
     $rsm->addRootEntityFromClassMetadata('BugglMainBundle:SpotDetail', 'sd');
     $sql = "SELECT sd.* FROM spot_detail AS sd \n\t\t\t\t\tLEFT JOIN itinerary_to_spot_detail AS itsd \n\t\t\t\t\tON itsd.spot_detail_id = sd.id \n\t\t\t\tWHERE 1\n\t\t\t\t\tAND itsd.itinerary_id = ?\n\t\t\t\tORDER BY itsd.period_of_day, itsd.`order` ASC";
     $query = $em->createNativeQuery($sql, $rsm);
     $query->setParameters(array($itinerary->getID()));
     // $query->setParameter(1, 34);
     $spotDetails = $query->getResult();
     return $spotDetails;
 }