<?php
namespace App\Entity\Gos\VirtualCurrency;
use App\Entity\Gos\ProductVariant;
use App\Repository\Gos\VirtualCurrency\ProductVariantVirtualCurrencySettingsRepository;
use Doctrine\ORM\Mapping as ORM;
/**
* @ORM\Entity(repositoryClass=ProductVariantVirtualCurrencySettingsRepository::class)
* @ORM\HasLifecycleCallbacks()
*/
class ProductVariantVirtualCurrencySettings
{
/**
* @ORM\Id
* @ORM\GeneratedValue
* @ORM\Column(type="integer")
*/
private $id;
/**
* @ORM\OneToOne(targetEntity=ProductVariant::class, inversedBy="productVariantVirtualCurrencySettings", cascade={"persist"})
* @ORM\JoinColumn(nullable=false)
*/
private $productVariant;
/**
* @ORM\Column(type="boolean", nullable=true)
*/
private $virtualCurrencyOnBuyAllow;
/**
* @ORM\ManyToOne(targetEntity=VirtualCurrency::class)
*/
private $virtualCurrencyOnBuy;
/**
* @ORM\Column(type="integer", nullable=true)
*/
private $virtualCurrencyOnBuyValidFor;
/**
* @ORM\Column(type="float", nullable=true)
*/
private $virtualCurrencyOnBuyAmount;
/**
* @ORM\Column(type="boolean", nullable=true)
*/
private $virtualCurrencyOnBuyAmountIsUnlimited;
/**
* @ORM\Column(type="boolean", nullable=true)
*/
private $virtualCurrencyOnPayAllow;
/**
* @ORM\ManyToOne(targetEntity=VirtualCurrency::class)
*/
private $virtualCurrencyOnPay;
/**
* @ORM\Column(type="integer", nullable=true)
*/
private $virtualCurrencyOnPayAccessDays;
/**
* @ORM\Column(type="float", nullable=true)
*/
private $virtualCurrencyOnPayAmount;
/**
* @ORM\Column(type="datetime")
*/
private $createdAt;
/**
* @ORM\Column(type="datetime", nullable=true)
*/
private $updatedAt;
/**
* @ORM\PrePersist()
*/
public function prePersist()
{
$this->createdAt = new \DateTime();
}
/**
* @ORM\PreUpdate()
*/
public function preUpdate()
{
$this->updatedAt = new \DateTime();
}
public function getId(): ?int
{
return $this->id;
}
public function getProductVariant(): ?ProductVariant
{
return $this->productVariant;
}
public function setProductVariant(ProductVariant $productVariant): self
{
$this->productVariant = $productVariant;
return $this;
}
public function getVirtualCurrencyOnBuyAllow(): ?bool
{
return $this->virtualCurrencyOnBuyAllow;
}
public function setVirtualCurrencyOnBuyAllow(?bool $virtualCurrencyOnBuyAllow): self
{
$this->virtualCurrencyOnBuyAllow = $virtualCurrencyOnBuyAllow;
return $this;
}
public function getVirtualCurrencyOnBuy(): ?VirtualCurrency
{
return $this->virtualCurrencyOnBuy;
}
public function setVirtualCurrencyOnBuy(?VirtualCurrency $virtualCurrencyOnBuy): self
{
$this->virtualCurrencyOnBuy = $virtualCurrencyOnBuy;
return $this;
}
public function getVirtualCurrencyOnBuyValidFor(): ?int
{
return $this->virtualCurrencyOnBuyValidFor;
}
public function setVirtualCurrencyOnBuyValidFor(?int $virtualCurrencyOnBuyValidFor): self
{
$this->virtualCurrencyOnBuyValidFor = $virtualCurrencyOnBuyValidFor;
return $this;
}
public function getVirtualCurrencyOnBuyAmount(): ?float
{
return $this->virtualCurrencyOnBuyAmount;
}
public function setVirtualCurrencyOnBuyAmount(?float $virtualCurrencyOnBuyAmount): self
{
$this->virtualCurrencyOnBuyAmount = $virtualCurrencyOnBuyAmount;
return $this;
}
/**
* @return mixed
*/
public function getVirtualCurrencyOnBuyAmountIsUnlimited()
{
return $this->virtualCurrencyOnBuyAmountIsUnlimited;
}
/**
* @param mixed $virtualCurrencyOnBuyAmountIsUnlimited
* @return ProductVariantVirtualCurrencySettings
*/
public function setVirtualCurrencyOnBuyAmountIsUnlimited($virtualCurrencyOnBuyAmountIsUnlimited): ProductVariantVirtualCurrencySettings
{
$this->virtualCurrencyOnBuyAmountIsUnlimited = $virtualCurrencyOnBuyAmountIsUnlimited;
return $this;
}
public function getVirtualCurrencyOnPayAllow(): ?bool
{
return $this->virtualCurrencyOnPayAllow;
}
public function setVirtualCurrencyOnPayAllow(?bool $virtualCurrencyOnPayAllow): self
{
$this->virtualCurrencyOnPayAllow = $virtualCurrencyOnPayAllow;
return $this;
}
public function getVirtualCurrencyOnPay(): ?VirtualCurrency
{
return $this->virtualCurrencyOnPay;
}
public function setVirtualCurrencyOnPay(?VirtualCurrency $virtualCurrencyOnPay): self
{
$this->virtualCurrencyOnPay = $virtualCurrencyOnPay;
return $this;
}
public function getVirtualCurrencyOnPayAccessDays(): ?int
{
return $this->virtualCurrencyOnPayAccessDays;
}
public function setVirtualCurrencyOnPayAccessDays(?int $virtualCurrencyOnPayAccessDays): self
{
$this->virtualCurrencyOnPayAccessDays = $virtualCurrencyOnPayAccessDays;
return $this;
}
public function getVirtualCurrencyOnPayAmount(): ?float
{
return $this->virtualCurrencyOnPayAmount;
}
public function setVirtualCurrencyOnPayAmount(?float $virtualCurrencyOnPayAmount): self
{
$this->virtualCurrencyOnPayAmount = $virtualCurrencyOnPayAmount;
return $this;
}
public function getCreatedAt(): \DateTimeInterface
{
return $this->createdAt;
}
public function getUpdatedAt(): ?\DateTimeInterface
{
return $this->updatedAt;
}
}