<?php
namespace App\Entity;
use Doctrine\ORM\Mapping as ORM;
use Doctrine\ORM\Mapping\JoinColumn;
use Doctrine\ORM\Mapping\OneToOne;
use JMS\Serializer\Annotation\Groups;
/**
* @ORM\Table("Webmaster")
*
* @ORM\Entity(repositoryClass="App\Repository\WebmasterRepository")
*/
class Webmaster
{
/**
* @Groups({"adminindex", "trafficindex"})
*
* @ORM\Id()
*
* @ORM\GeneratedValue()
*
* @ORM\Column(type="integer")
*/
private $id;
/**
* @Groups({"webmasterdetail", "trafficindex"})
*
* @OneToOne(targetEntity="Account", mappedBy="webmaster")
*/
protected $account;
/**
* @Groups({"webmasterindex", "webmasterdetail"})
*
* @OneToOne(targetEntity="Person", cascade={"persist"})
*
* @JoinColumn(name="person_id", referencedColumnName="id", onDelete="SET NULL")
*/
protected $person;
/**
* @Groups({"webmasterdetail"})
*
* @ORM\Column(type="smallint")
*/
private $provision_percent = 25;
/**
* @Groups({"webmasterdetail"})
*
* @ORM\Column(type="boolean")
*/
private $is_active = true;
/**
* @Groups({"webmasterdetail"})
*
* @ORM\Column(type="smallint")
*/
private $amateur_provision_percent = 5;
/**
* @Groups({"webmasterdetail"})
*
* @ORM\Column(type="smallint")
*/
private $webmaster_provision_percent = 5;
public function getId()
{
return $this->id;
}
public function setId(int $id): self
{
$this->id = $id;
return $this;
}
public function getProvisionPercent(): ?int
{
return $this->provision_percent;
}
public function setProvisionPercent(int $provision_percent): self
{
$this->provision_percent = $provision_percent;
return $this;
}
public function getIsActive(): ?bool
{
return $this->is_active;
}
public function setIsActive(bool $is_active): self
{
$this->is_active = $is_active;
return $this;
}
public function getAmateurProvisionPercent(): ?int
{
return $this->amateur_provision_percent;
}
public function setAmateurProvisionPercent(int $amateur_provision_percent): self
{
$this->amateur_provision_percent = $amateur_provision_percent;
return $this;
}
public function getWebmasterProvisionPercent(): ?int
{
return $this->webmaster_provision_percent;
}
public function setWebmasterProvisionPercent(int $webmaster_provision_percent): self
{
$this->webmaster_provision_percent = $webmaster_provision_percent;
return $this;
}
public function setPerson(?Person $person): self
{
$this->person = $person;
return $this;
}
public function getPerson(): ?Person
{
return $this->person;
}
public function getAccount(): ?Account
{
return $this->account;
}
public function setAccount(Account $account): self
{
$this->account = $account;
return $this;
}
}