src/App/Entity/RecurrentJobOccupationalFieldCapabilityValue.php line 18

Open in your IDE?
  1. <?php
  2. namespace App\Entity;
  3. use App\Service\OccupationalFieldCapabilitiesService;
  4. use Doctrine\ORM\Mapping as ORM;
  5. use Exception;
  6. use Symfony\Component\Validator\Constraints as Assert;
  7. /**
  8. * @ORM\Entity
  9. *
  10. * @ORM\Table(
  11. * name="recurrent_job_occupational_field_capability_values",
  12. * uniqueConstraints={@ORM\UniqueConstraint(name="recurrent_jobs_id_capability_idx", columns={"recurrent_jobs_id", "capability_id"})}
  13. * )
  14. */
  15. class RecurrentJobOccupationalFieldCapabilityValue
  16. {
  17. /**
  18. * @var RecurrentJob
  19. *
  20. * @ORM\Id
  21. *
  22. * @ORM\ManyToOne(targetEntity="App\Entity\RecurrentJob", inversedBy="occupationalFieldCapabilityValues", cascade={"persist"})
  23. *
  24. * @ORM\JoinColumn(name="recurrent_jobs_id", referencedColumnName="id", nullable=false, onDelete="CASCADE")
  25. */
  26. private $recurrentJob;
  27. public function setRecurrentJob(RecurrentJob $recurrentJob): void
  28. {
  29. $this->recurrentJob = $recurrentJob;
  30. }
  31. public function getRecurrentJob(): RecurrentJob
  32. {
  33. return $this->recurrentJob;
  34. }
  35. /**
  36. * @var int
  37. *
  38. * @ORM\Id
  39. *
  40. * @ORM\Column(name="capability_id", type="integer", nullable=false)
  41. */
  42. private $capabilityId;
  43. /** @throws Exception */
  44. public function setCapabilityId(int $capabilityId): void
  45. {
  46. if (!OccupationalFieldCapabilitiesService::isValidCapabilityId($capabilityId)) {
  47. throw new Exception('Cannot set RecurrentJobOccupationalFieldCapabilityValue capability for ' . $capabilityId);
  48. }
  49. $this->capabilityId = $capabilityId;
  50. }
  51. public function getCapabilityId(): int
  52. {
  53. return $this->capabilityId;
  54. }
  55. /**
  56. * @var int
  57. *
  58. * @Assert\GreaterThanOrEqual(0)
  59. *
  60. * @Assert\LessThanOrEqual(5)
  61. *
  62. * @Assert\NotNull()
  63. *
  64. * @ORM\Column(name="value", type="integer", nullable=false)
  65. */
  66. private $value;
  67. public function setValue(int $value): void
  68. {
  69. $this->value = $value;
  70. }
  71. public function getValue(): int
  72. {
  73. return $this->value;
  74. }
  75. }