<?php

namespace OfficeBrain\Bundle\ProductBundle\Entity;

use Doctrine\ORM\Mapping as ORM;
use Gedmo\Mapping\Annotation as GEDMO;
use Symfony\Component\Validator\Constraints as Assert;
use Doctrine\Common\Collections\ArrayCollection;

/**
 * OrderSample
 *
 * @ORM\Table(name="tbl_request_sample")
 * @ORM\Entity(repositoryClass="OfficeBrain\Bundle\ProductBundle\Entity\OrderSampleRepository")
 */
class OrderSample
{
    /**
     * @var integer
     *
     * @ORM\Column(name="id", type="integer")
     * @ORM\Id
     * @ORM\GeneratedValue(strategy="AUTO")
     */
    private $id;
    /**
     * @var integer
     *
     * @ORM\Column(name="guest_id", type="bigint", length=20, nullable=true, options={"unsigned"=true})
     */
    private $guestId;
    
    
    /**
     * @var string
     *
     * @ORM\Column(name="color", type="string", length=255, nullable=true)
     */
    private $color;

    /**
     * @var string
     *
     * @ORM\Column(name="size", type="string", length=255, nullable=true)
     */
    private $size;

    /**
     * @var string
     *
     * @ORM\Column(name="first_name", type="string", length=255, nullable=true)
     */
    private $firstName;

    /**
     * @var string
     *
     * @ORM\Column(name="last_name", type="string", length=255, nullable=true)
     */
    private $lastName;

    /**
     * @var string
     *
     * @ORM\Column(name="email", type="string", length=255, nullable=true)
     */
    private $email;

     /**
     * @var string
     *
     * @ORM\Column(name="phone", type="string", length=255, nullable=true)
     */
    private $phone;
    

     /**
     * @var string
     *
     * @ORM\Column(name="company_name", type="string", length=255, nullable=true)
     */
    private $companyName;

    /**
     * @var string
     *
     * @ORM\Column(name="product_sku", type="string", length=255, nullable=true)
     */
    private $productSku;

    /**
     * @var integer
     *
     * @ORM\Column(name="comment", type="string", nullable=true)
     */
    private $comment;

    /**
     * @var integer
     *
     * @ORM\Column(name="user_id", type="bigint", length=20,  nullable=true, options={"unsigned"=true})
     */
    private $userId;
    
    
    /**
     * @var text
     *
     * @ORM\Column(name="culture", type="text", length=60, nullable=true)
     */
    private $culture = 'en_us';

    
    /**
     * @var integer
     *
     * @ORM\Column(name="created_uid", type="bigint", length=20, options={"unsigned"=true})
     */
    private $createdUid;
    
    /**
     * @var integer
     *
     * @ORM\Column(name="updated_uid", type="bigint", length=20, nullable=true,options={"unsigned"=true})
     */
    private $upatedUid;
    
    /**
     * @var integer
     *
     * @ORM\Column(name="deleted_uid", type="bigint", length=20, nullable=true, options={"unsigned"=true})
     */
    private $deletedUid;
    
    /**
     * @var integer
     *
     * @ORM\Column(name="instance_id", type="bigint", length=20, nullable=true,options={"unsigned"=true})
     */
    private $instanceId;
    
    /**
     * @var string
     *
     * @ORM\Column(name="instance_type", type="string",nullable=true,length=255)
     */
    private $instanceType;
    
    /**
     * @var \DateTime
     * @Gedmo\Timestampable(on="create")
     * @ORM\Column(name="created_at", type="datetime")
     */
    private $createdAt;
    
    /**
     * @var \DateTime
     * @Gedmo\Timestampable(on="update")
     * @ORM\Column(name="updated_at", type="datetime", nullable=true)
     */
    private $updatedAt;
    
    /**
     * @var \DateTime
     * @ORM\Column(name="deleted_at", type="datetime", nullable=true)
     */
    private $deletedAt;
    
  
    /**
     * @var integer
     *
     * @ORM\Column(name="product_id",type="bigint", length=20, nullable=true, options={"unsigned"=true})
     */ 
    private $productId;
    

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

   
     /**
     * Set guestId
     *
     * @param integer $guestId
     * @return RequestInfo
     */
    public function setGuestId($guestId)
    {
        $this->guestId = $guestId;

        return $this;
    }

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

    /**
     * Set userId
     *
     * @param integer $userId
     * @return RequestInfo
     */
    public function setUserId($userId)
    {
        $this->userId = $userId;

        return $this;
    }

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

    /**
     * Set culture
     *
     * @param string $culture
     * @return RequestInfo
     */
    public function setCulture($culture)
    {
        $this->culture = $culture;

        return $this;
    }

    /**
     * Get culture
     *
     * @return string 
     */
    public function getCulture()
    {
        return $this->culture;
    }
    
     /**
     * Set color
     *
     * @param string $color
     * 
     */
    public function setColor($color)
    {
        $this->color = $color;

        return $this;
    }

    /**
     * Get FirstN
     *
     * @return string 
     */
    public function getColor()
    {
        return $this->color;
    }

    /**
     * Set size
     *
     * @param string $size
     * 
     */
    public function setSize($size)
    {
        $this->size = $size;

        return $this;
    }

    /**
     * Get FirstN
     *
     * @return string 
     */
    public function getSize()
    {
        return $this->size;
    }



  /**
     * Set firstName
     *
     * @param string $firstName
     * 
     */
    public function setFirstName($firstName)
    {
        $this->firstName = $firstName;

        return $this;
    }

    /**
     * Get FirstN
     *
     * @return string 
     */
    public function getFirstName()
    {
        return $this->firstName;
    }

     /**
     * Set lastName
     *
     * @param string $lastName
     * 
     */
    public function setLastName($lastName)
    {
        $this->lastName = $lastName;

        return $this;
    }

    /**
     * Get culture
     *
     * @return string 
     */
    public function getLastName()
    {
        return $this->lastName;
    }

      /**
     * Set email
     *
     * @param string $email
     * 
     */
    public function setEmail($email)
    {
        $this->email = $email;

        return $this;
    }

    /**
     * Get culture
     *
     * @return string 
     */
    public function getEmail()
    {
        return $this->email;
    }

      /**
     * Set phone
     *
     * @param string $phone
     * 
     */
    public function setPhone($phone)
    {
        $this->phone = $phone;

        return $this;
    }

    /**
     * Get culture
     *
     * @return string 
     */
    public function getPhone()
    {
        return $this->phone;
    }

     /**
     * Set companyName
     *
     * @param string $companyName
     * 
     */
    public function setCompanyName($companyName)
    {
        $this->companyName = $companyName;

        return $this;
    }

    /**
     * Get culture
     *
     * @return string 
     */
    public function getCompanyName()
    {
        return $this->companyName;
    }

    /**
     * Set productSku
     *
     * @param string $productSku
     * 
     */
    public function setProductSku($productSku)
    { 
        $this->productSku = $productSku;

        return $this;
    }

    /**
     * Get culture
     *
     * @return string 
     */
    public function getProductSku()
    {
        return $this->productSku;
    }
    
      /**
     * Set companyName
     *
     * @param string $companyName
     * 
     */
    public function setComment($comment)
    {
        $this->comment = $comment;

        return $this;
    }

    /**
     * Get culture
     *
     * @return string 
     */
    public function getComment()
    {
        return $this->comment;
    }
    

    

     /**
     * Set createdUid
     *
     * @param integer $createdUid
     */
    public function setCreatedUid($createdUid)
    {
        $this->createdUid = $createdUid;

        return $this;
    }

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

    /**
     * Set upatedUid
     *
     * @param integer $upatedUid
     * @return RequestInfo
     */
    public function setUpatedUid($upatedUid)
    {
        $this->upatedUid = $upatedUid;

        return $this;
    }

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

    /**
     * Set deletedUid
     *
     * @param integer $deletedUid
     * @return RequestInfo
     */
    public function setDeletedUid($deletedUid)
    {
        $this->deletedUid = $deletedUid;

        return $this;
    }

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

     /**
      * Set instanceId
      *
      * @param integer $instanceId
      * @return RequestInfo
      */
   public function setInstanceId($instanceId)
     {
         $this->instanceId = $instanceId;

         return $this;
     }

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

     /**
     * Set instanceType
     *
     * @param string $instanceType
     * @return RequestInfo
     */
    public function setInstanceType($instanceType)
    {
        $this->instanceType = $instanceType;

        return $this;
    }

    /**
     * Get instanceType
     *
     * @return string 
     */
    public function getInstanceType()
    {
        return $this->instanceType;
    }


    /**
     * Set createdAt
     *
     * @param \DateTime $createdAt
     * @return RequestInfo
     */
    public function setCreatedAt($createdAt)
    {
        $this->createdAt = $createdAt;

        return $this;
    }

    /**
     * Get createdAt
     *
     * @return \DateTime 
     */
    public function getCreatedAt()
    {
        return $this->createdAt;
    }

    /**
     * Set updatedAt
     *
     * @param \DateTime $updatedAt
     * @return RequestInfo
     */
    public function setUpdatedAt($updatedAt)
    {
        $this->updatedAt = $updatedAt;

        return $this;
    }

    /**
     * Get updatedAt
     *
     * @return \DateTime 
     */
    public function getUpdatedAt()
    {
        return $this->updatedAt;
    }

    /**
     * Set deletedAt
     *
     * @param \DateTime $deletedAt
     * @return RequestInfo
     */
    public function setDeletedAt($deletedAt)
    {
        $this->deletedAt = $deletedAt;

        return $this;
    }

    /**
     * Get deletedAt
     *
     * @return \DateTime 
     */
    public function getDeletedAt()
    {
        return $this->deletedAt;
    }

    /**
     * Set productId
     *
     * @param integer $productId
     * @return OrderItemLine
     */
    public function setProductId($productId)
    {
        $this->productId = $productId;

        return $this;
    }

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

}

