<?php

namespace OfficeBrain\Bundle\RequestQuoteBundle\Entity;

use Doctrine\ORM\EntityRepository;

/**
 * RequestQuoteGuestUserRepository
 *
 * This class was generated by the Doctrine ORM. Add your own custom
 * repository methods below.
 */
class RequestQuoteGuestUserRepository extends EntityRepository
{
	
	public function getQueryBuilder()
	{
		return $this->getEntityManager()->getRepository('OfficeBrainRequestQuoteBundle:RequestQuoteGuestUser')->createQueryBuilder('r');
	
	}
	
	/**
	 * To push all request quote guest user information into the database
	 */
	public function setRequestQuoteGuestUser($saveData)
	{
		$em=$this->getEntityManager();
		$guestObj= new RequestQuoteGuestUser();
		$guestObj->setFirstName($saveData['form_data']['first_name']);
		$guestObj->setEmail($saveData['form_data']['email']);
		$guestObj->setPhone($saveData['form_data']['phone']);
		$guestObj->setZipcode($saveData['form_data']['zipcode']);
		$guestObj->setCompanyName($saveData['form_data']['companyName']);
		$guestObj->setInstanceId($saveData['form_data']['instance_id']);
		$guestObj->setInstanceType($saveData['form_data']['instance_type']);
		$guestObj->setCreatedUid(0);
			
		$em = $this->getEntityManager();
		$em->persist($guestObj);
		$em->flush();
		return $guestObj;
	}
	
	public function getGuestUserDetailById($guestId)
	{
		$queryBuilder = $this->getQueryBuilder();
		$queryBuilder ->where('r.id = :guestId')
			//->andWhere('r.deletedAt IS NULL')
			->setParameter('guestId', $guestId);
		return $queryBuilder->getQuery()->getOneOrNullResult();
	}
}