src/Program/Doctrine/Entity/ProgramEmail.php line 18

Open in your IDE?
  1. <?php
  2. declare(strict_types=1);
  3. namespace App\Program\Doctrine\Entity;
  4. use App\Shared\Doctrine\Entity\Email;
  5. use Doctrine\ORM\Mapping\Column;
  6. use Doctrine\ORM\Mapping\Entity;
  7. use Doctrine\ORM\Mapping\GeneratedValue;
  8. use Doctrine\ORM\Mapping\Id;
  9. use Doctrine\ORM\Mapping\JoinColumn;
  10. use Doctrine\ORM\Mapping\ManyToOne;
  11. use Symfony\Component\Serializer\Annotation\Groups;
  12. use Symfony\Component\Validator\Constraints\NotBlank;
  13. #[Entity]
  14. class ProgramEmail
  15. {
  16.     #[Id]
  17.     #[Column(type'integer')]
  18.     #[GeneratedValue]
  19.     #[Groups('read')]
  20.     private ?int $id null;
  21.     #[ManyToOne]
  22.     #[JoinColumn(nullablefalseonDelete'CASCADE')]
  23.     private Email $email;
  24.     #[ManyToOne(inversedBy'emails')]
  25.     #[JoinColumn(nullablefalseonDelete'CASCADE')]
  26.     private Program $program;
  27.     #[Column(type'integer')]
  28.     #[NotBlank]
  29.     private int $templateId;
  30.     public function getId(): ?int
  31.     {
  32.         return $this->id;
  33.     }
  34.     public function getEmail(): Email
  35.     {
  36.         return $this->email;
  37.     }
  38.     public function setEmail(Email $email): self
  39.     {
  40.         $this->email $email;
  41.         return $this;
  42.     }
  43.     public function getTemplateId(): int
  44.     {
  45.         return $this->templateId;
  46.     }
  47.     public function setTemplateId(int $templateId): self
  48.     {
  49.         $this->templateId $templateId;
  50.         return $this;
  51.     }
  52.     public function getProgram(): Program
  53.     {
  54.         return $this->program;
  55.     }
  56.     public function setProgram(Program $program): self
  57.     {
  58.         $this->program $program;
  59.         return $this;
  60.     }
  61. }