<?php
namespace App\Entity;
use DateTime;
use Doctrine\ORM\Mapping as ORM;
/**
* UserChoice
*
* @ORM\Table(name="user_choice")
* @ORM\HasLifecycleCallbacks()
* @ORM\Entity(repositoryClass="App\Repository\UserChoiceRepository")
*/
class UserChoice
{
/**
* @var int
*
* @ORM\Column(name="id", type="integer")
* @ORM\Id
* @ORM\GeneratedValue(strategy="AUTO")
*/
private $id;
/**
* @var Cart
*
* @ORM\ManyToOne(targetEntity="User")
* @ORM\JoinColumn(name="user_id", referencedColumnName="id")
*/
protected $user;
/**
* @var string
*
* @ORM\Column(name="type", type="string", length=255)
*/
private $type;
/**
* @var string
*
* @ORM\Column(name="subjectClass", type="string", length=255, nullable=true)
*/
private $subjectClass;
/**
* @var int
*
* @ORM\Column(name="subjectId", type="integer", nullable=true)
*/
private $subjectId;
/**
* @var string
*
* @ORM\Column(name="value", type="string", length=255, nullable=true)
*/
private $value;
/**
* @var DateTime
*
* @ORM\Column(name="createdAt", type="datetime")
*/
private $createdAt;
/**
* @var DateTime
*
* @ORM\Column(name="updatedAt", type="datetime")
*/
private $updatedAt;
/**
* Get id
*
* @return int
*/
public function getId()
{
return $this->id;
}
/**
* Set type
*
* @param string $type
*
* @return UserChoice
*/
public function setType($type)
{
$this->type = $type;
return $this;
}
/**
* Get type
*
* @return string
*/
public function getType()
{
return $this->type;
}
/**
* Set subjectClass
*
* @param string $subjectClass
*
* @return UserChoice
*/
public function setSubjectClass($subjectClass)
{
$this->subjectClass = $subjectClass;
return $this;
}
/**
* Get subjectClass
*
* @return string
*/
public function getSubjectClass()
{
return $this->subjectClass;
}
/**
* Set subjectId
*
* @param integer $subjectId
*
* @return UserChoice
*/
public function setSubjectId($subjectId)
{
$this->subjectId = $subjectId;
return $this;
}
/**
* Get subjectId
*
* @return int
*/
public function getSubjectId()
{
return $this->subjectId;
}
/**
* Set value
*
* @param string $value
*
* @return UserChoice
*/
public function setValue($value)
{
$this->value = $value;
return $this;
}
/**
* Get value
*
* @return string
*/
public function getValue()
{
return $this->value;
}
/**
* @return Cart
*/
public function getUser()
{
return $this->user;
}
/**
* @param Cart $user
*/
public function setUser($user)
{
$this->user = $user;
}
/**
* @ORM\PrePersist()
*/
public function creationDate()
{
$this->createdAt = new DateTime();
$this->updatedAt = new DateTime();
return $this;
}
/**
* @ORM\PreUpdate
*/
public function updatedDate()
{
$this->updatedAt = new DateTime();
return $this;
}
/**
* @return DateTime
*/
public function getCreatedAt()
{
return $this->createdAt;
}
/**
* @param DateTime $createdAt
*/
public function setCreatedAt($createdAt)
{
$this->createdAt = $createdAt;
}
/**
* @return DateTime
*/
public function getUpdatedAt()
{
return $this->updatedAt;
}
/**
* @param DateTime $updatedAt
*/
public function setUpdatedAt($updatedAt)
{
$this->updatedAt = $updatedAt;
}
}