src/Entity/Cupon.php line 22
<?phpnamespace App\Entity;use App\Entity\User;use App\Entity\TransaccionAfiliado;use App\Entity\UserStats;use Doctrine\Common\Collections\ArrayCollection;use Doctrine\ORM\Mapping as ORM;use Symfony\Component\Validator\Mapping\ClassMetadata;use Symfony\Bridge\Doctrine\Validator\Constraints\UniqueEntity;/*** Cupon** @ORM\Table()* @ORM\Entity()* @UniqueEntity("codigo")* @ORM\HasLifecycleCallbacks()*/class Cupon{/*** @var integer** @ORM\Column(name="id", type="integer")* @ORM\Id* @ORM\GeneratedValue(strategy="AUTO")*/private $id;/*** @ORM\ManyToOne(targetEntity="User", inversedBy="cupon")* @ORM\JoinColumn(name="user_id", referencedColumnName="id", nullable=true)*/private $usuario;/*** @var string** @ORM\Column(name="descripcion", type="string", length=255, nullable=true)*/private $descripcion;/*** @var boolean** @ORM\Column(name="activo", type="boolean")*/private $activo=true;/*** @var \DateTime** @ORM\Column(name="inicio", type="datetime", nullable=true)*/private $inicio;/*** @var \DateTime** @ORM\Column(name="fin", type="datetime", nullable=true)*/private $fin;/*** @var string** @ORM\Column(name="total_usos", type="integer")*/private $totalUsos=1;/*** @var string** @ORM\Column(name="total_usos_usuario", type="integer")*/private $totalUsosUsuario=1;/*** @var string** @ORM\Column(name="codigo", type="string", length=255, unique=true)*/private $codigo;/*** @var string** @ORM\Column(name="codigo_tpv", type="string", length=255)*/private $codigoTPV;/*** @var float** @ORM\Column(name="porcentaje_descuento", type="float", nullable=false)*/private $porcentajeDescuento;/*** @ORM\ManyToMany(targetEntity="Divisa", inversedBy="cupones")* @ORM\JoinTable(name="cupon_divisa")*/private $divisas;/*** @var boolean** @ORM\Column(name="carrito_abandonado", type="boolean")*/private $carritoAbandonado = false;public function __construct() {$this->totalUsosUsuario = 1;$this->totalUsos = 1;$this->activo = true;$this->carritoAbandonado = false;$this->divisas = new ArrayCollection();}public static function loadValidatorMetadata(ClassMetadata $metadata){$metadata->addConstraint(new UniqueEntity(array('fields' => 'codigo','message' => 'Ya existe otro cuṕon con este código.',)));}/*** Get id** @return integer*/public function getId(){return $this->id;}/*** Set usuario** @param string $usuario* @return Transaccion*/public function setUsuario($usuario){$this->usuario = $usuario;return $this;}/*** Get usuario** @return Usuario*/public function getUsuario(){return $this->usuario;}/*** Set descripcion** @param string $descripcion* @return Transaccion*/public function setDescripcion($descripcion){$this->descripcion = $descripcion;return $this;}/*** Set valor usos** @param string $cupon* @return Cupon*/public function quitarUnUso(){$this->totalUsos = $totalUsos -1;}/*** Get descripcion** @return User*/public function getDescripcion(){return $this->descripcion;}/*** Set activo** @param string $activo* @return Transaccion*/public function setActivo($activo){$this->activo = $activo;return $this;}/*** Get activo** @return User*/public function getActivo(){return $this->activo;}/*** Set inicio** @param string $inicio* @return Transaccion*/public function setInicio($inicio){$this->inicio = $inicio;return $this;}/*** Get inicio** @return string*/public function getInicio(){return $this->inicio;}/*** Set fin** @param string $fin* @return Transaccion*/public function setFin($fin){$this->fin = $fin;return $this;}/*** Get fin** @return string*/public function getFin(){return $this->fin;}/*** Set totalUsos** @param string $totalUsos* @return Transaccion*/public function setTotalUsos($totalUsos){$this->totalUsos = $totalUsos;return $this;}/*** Get totalUsos** @return \DateTime*/public function getTotalUsos(){return $this->totalUsos;}/*** Set totalUsosUsuario** @param string $totalUsosUsuario* @return Transaccion*/public function setTotalUsosUsuario($totalUsosUsuario){$this->totalUsosUsuario = $totalUsosUsuario;return $this;}/*** Get totalUsosUsuario** @return \DateTime*/public function getTotalUsosUsuario(){return $this->totalUsosUsuario;}/*** Set codigo** @param string $codigo* @return Transaccion*/public function setCodigo($codigo){$this->codigo = $codigo;return $this;}/*** Get codigo** @return string*/public function getCodigo(){return $this->codigo;}/*** Set codigoTPV** @param string $codigoTPV* @return Transaccion*/public function setCodigoTPV($codigoTPV){$this->codigoTPV = $codigoTPV;return $this;}/*** Get codigoTPV** @return string*/public function getCodigoTPV(){return $this->codigoTPV;}public function getPorcentajeDescuento(){return $this->porcentajeDescuento;}public function setPorcentajeDescuento($porcentajeDescuento){$this->porcentajeDescuento = $porcentajeDescuento;return $this;}public function getDivisas(){return $this->divisas;}public function addDivisa($divisa): self{if (!$this->divisas->contains($divisa)) {$this->divisas->add($divisa);}return $this;}public function removeDivisa($divisa): self{$this->divisas->removeElement($divisa);return $this;}public function setCarritoAbandonado($carritoAbandonado){$this->carritoAbandonado = $carritoAbandonado;return $this;}public function getCarritoAbandonado(){return $this->carritoAbandonado;}}