<?php
namespace CoreBundle\Entity;
use DateTime;
use Doctrine\ORM\Mapping as ORM;
use JsonSerializable;
/**
* @ORM\Table("kvik_customization_buy")
* @ORM\Entity
*/
class KvikCustomizationBuy implements JsonSerializable
{
/**
* @var int
*
* @ORM\Column(name="id", type="integer")
* @ORM\Id
* @ORM\GeneratedValue(strategy="AUTO")
*/
private int $id;
/**
* @var KvikCustomization
*
* @ORM\ManyToOne(targetEntity="KvikCustomization")
* @ORM\JoinColumn(name="kvik_customization", referencedColumnName="id", onDelete="CASCADE")
*/
private KvikCustomization $kvikCustomization;
/**
* @var GamificationProfile
*
* @ORM\ManyToOne(targetEntity="GamificationProfile")
* @ORM\JoinColumn(name="gamification_profile", referencedColumnName="id", onDelete="CASCADE")
*/
private GamificationProfile $gamificationProfile;
/**
* @var DateTime
*
* @ORM\Column(name="bought_at", type="datetime")
*/
private DateTime $boughtAt;
/**
* @var int
*
* @ORM\Column(name="price_paid", type="integer")
*/
private int $pricePaid;
public function getId(): int
{
return $this->id;
}
public function setId(int $id): void
{
$this->id = $id;
}
public function getKvikCustomization(): KvikCustomization
{
return $this->kvikCustomization;
}
public function setKvikCustomization(KvikCustomization $kvikCustomization): void
{
$this->kvikCustomization = $kvikCustomization;
}
public function getGamificationProfile(): GamificationProfile
{
return $this->gamificationProfile;
}
public function setGamificationProfile(GamificationProfile $gamificationProfile): void
{
$this->gamificationProfile = $gamificationProfile;
}
public function getBoughtAt(): DateTime
{
return $this->boughtAt;
}
public function setBoughtAt(DateTime $boughtAt): void
{
$this->boughtAt = $boughtAt;
}
public function getPricePaid(): int
{
return $this->pricePaid;
}
public function setPricePaid(int $pricePaid): void
{
$this->pricePaid = $pricePaid;
}
public function jsonSerialize(): mixed
{
return [
'id' => $this->id,
'kvikCustomization' => $this->kvikCustomization,
'gamificationProfile' => $this->gamificationProfile,
'boughtAt' => $this->boughtAt,
'pricePaid' => $this->pricePaid,
];
}
}