<?phpdeclare(strict_types=1);namespace App\Entity;use Doctrine\ORM\Mapping as ORM;use Doctrine\Common\Collections\ArrayCollection;use Doctrine\Common\Collections\Collection;use Symfony\Component\Serializer\Annotation\Groups;/** * CampaignType * * @ORM\Table(name="campaign_type") * @ORM\Entity */class CampaignType{ public const SERIALIZATION_GROUP_LISTING = 'campaign_type_listing'; /** * @var int * * @ORM\Column(name="id", type="smallint", nullable=false) * @ORM\Id * @ORM\GeneratedValue(strategy="IDENTITY") * @Groups({self::SERIALIZATION_GROUP_LISTING}) */ private $id; /** * @var string * * @ORM\Column(name="name", type="string", length=40, nullable=false) * @Groups({self::SERIALIZATION_GROUP_LISTING}) */ private $name; /** * @var Collection * * @ORM\OneToMany(targetEntity=CampaignTypeStatus::class, mappedBy="campaignType") */ private $status; /** * Constructor */ public function __construct() { $this->status = new ArrayCollection(); } public function getId(): ?int { return $this->id; } public function getName(): ?string { return $this->name; } public function setName(string $name): self { $this->name = $name; return $this; } /** * @return Collection<int, CampaignTypeStatus> */ public function getStatus(): Collection { return $this->status; } public function addStatus(CampaignTypeStatus $status): self { if (!$this->status->contains($status)) { $this->status[] = $status; $status->setCampaignType($this); } return $this; } public function removeStatus(CampaignTypeStatus $status): self { if ($this->status->removeElement($status)) { // set the owning side to null (unless already changed) if ($status->getCampaignType() === $this) { $status->setCampaignType(null); } } return $this; }}