<?php

namespace OfficeBrain\Bundle\RequestQuoteBundle\Entity;

use Doctrine\ORM\Mapping as ORM;
use Gedmo\Mapping\Annotation as Gedmo;
use Doctrine\Common\Collections\ArrayCollection;

/**
 * RequestQuoteVariationMaster
 *
 * @ORM\Table("tbl_request_quote_variation_master", options={"type"="InnoDB","charset"="utf8","collate"="utf8_unicode_ci"})
 * @ORM\Entity(repositoryClass="OfficeBrain\Bundle\RequestQuoteBundle\Entity\RequestQuoteVariationMasterRepository")
 */
class RequestQuoteVariationMaster
{
    /**
     * @var integer
     *
     * @ORM\Column(name="id", type="bigint",length=20 ,options={"unsigned"=true})
     * @ORM\Id
     * @ORM\GeneratedValue(strategy="AUTO")
     */
    private $id;

    /**
     * @var integer
     *
     * @ORM\ManyToOne(targetEntity="RequestQuoteProduct", inversedBy="requestQuoteVariationMaster")  
     * @ORM\JoinColumn(name="request_quote_product_id", referencedColumnName="id")
     */
    private $requestQuoteProductId;

    /**
     * @var integer
     *
     * @ORM\Column(name="attribute_id", type="bigint",length=20 ,options={"unsigned"=true}, nullable=true)
     */
    private $attributeId;

    /**
     * @var integer
     *
     * @ORM\Column(name="attribute_value_id", type="bigint",length=20 ,options={"unsigned"=true}, nullable=true)
     */
    private $attributeValueId;


    /**
     * Get id
     *
     * @return integer 
     */
    public function getId()
    {
        return $this->id;
    }
    
    /**
     * @ORM\OneToOne(targetEntity="RequestQuoteVariationMapping", mappedBy="variationMasterId")
     */
    private $requestQuoteVariationMapping;
    
    
    
    /**
     * Set requestQuoteProductId
     *
     * @param integer $requestQuoteProductId
     * @return RequestQuoteVariationMaster
     */
    public function setRequestQuoteProductId($requestQuoteProductId)
    {
        $this->requestQuoteProductId = $requestQuoteProductId;

        return $this;
    }

    /**
     * Get requestQuoteProductId
     *
     * @return integer 
     */
    public function getRequestQuoteProductId()
    {
        return $this->requestQuoteProductId;
    }

    /**
     * Set attributeId
     *
     * @param integer $attributeId
     * @return RequestQuoteVariationMaster
     */
    public function setAttributeId($attributeId)
    {
        $this->attributeId = $attributeId;

        return $this;
    }

    /**
     * Get attributeId
     *
     * @return integer 
     */
    public function getAttributeId()
    {
        return $this->attributeId;
    }

    /**
     * Set attributeValueId
     *
     * @param integer $attributeValueId
     * @return RequestQuoteVariationMaster
     */
    public function setAttributeValueId($attributeValueId)
    {
        $this->attributeValueId = $attributeValueId;

        return $this;
    }

    /**
     * Get attributeValueId
     *
     * @return integer 
     */
    public function getAttributeValueId()
    {
        return $this->attributeValueId;
    }

    /**
     * Set requestQuoteVariationMapping
     *
     * @param \OfficeBrain\Bundle\RequestQuoteBundle\Entity\RequestQuoteVariationMapping $requestQuoteVariationMapping
     * @return RequestQuoteVariationMaster
     */
    public function setRequestQuoteVariationMapping(\OfficeBrain\Bundle\RequestQuoteBundle\Entity\RequestQuoteVariationMapping $requestQuoteVariationMapping = null)
    {
        $this->requestQuoteVariationMapping = $requestQuoteVariationMapping;

        return $this;
    }

    /**
     * Get requestQuoteVariationMapping
     *
     * @return \OfficeBrain\Bundle\RequestQuoteBundle\Entity\RequestQuoteVariationMapping 
     */
    public function getRequestQuoteVariationMapping()
    {
        return $this->requestQuoteVariationMapping;
    }
}
