src/Entity/ChannelUserData/Activity/MeetingActivity.php line 16

Open in your IDE?
  1. <?php
  2. namespace App\Entity\ChannelUserData\Activity;
  3. use App\Enum\ChannelUserData\Activity\MeetingActivityContactTypeEnum;
  4. use App\Enum\ChannelUserData\Activity\MeetingActivityModalityEnum;
  5. use App\Repository\ChannelUserData\Activity\CommentActivityRepository;
  6. use Doctrine\ORM\Mapping as ORM;
  7. use Symfony\Component\Serializer\Annotation as Serial;
  8. use Symfony\Component\Validator\Constraints as Assert;
  9. #[
  10.     ORM\Entity(repositoryClassCommentActivityRepository::class),
  11.     ORM\Table(name'channel_user_data_meeting_activity'),
  12. ]
  13. class MeetingActivity extends AbstractActivity
  14. {
  15.     #[ORM\Column(type'integer'nullabletrue)]
  16.     #[Serial\Groups(['activity:get''activity:post'])]
  17.     #[
  18.         Assert\Choice(
  19.             callback: [MeetingActivityContactTypeEnum::class, 'getChoices'],
  20.             message'meetingActivity.contactType.Choice.message',
  21.             groups: ['activity:post']
  22.         )
  23.     ]
  24.     private ?int $contactType null;
  25.     #[ORM\Column(type'integer'nullabletrue)]
  26.     #[Serial\Groups(['activity:get''activity:post'])]
  27.     #[Assert\GreaterThanOrEqual(value0message'meetingActivity.duration.GreaterThanOrEqual.message'groups: ['activity:post'])]
  28.     private ?int $duration null;
  29.     #[ORM\Column(type'integer'nullabletrue)]
  30.     #[Serial\Groups(['activity:get''activity:post'])]
  31.     #[
  32.         Assert\Choice(
  33.             callback: [MeetingActivityModalityEnum::class, 'getChoices'],
  34.             message'meetingActivity.modality.Choice.message',
  35.             groups: ['activity:post']
  36.         )
  37.     ]
  38.     private ?int $modality null;
  39.     /** @var int[] $objective  */
  40.     #[ORM\Column(type'simple_array'nullabletrue)]
  41.     #[Serial\Groups(['activity:get''activity:post'])]
  42.     #[
  43.         Assert\NotBlank(
  44.             message'meetingActivity.objectives.Choice.message',
  45.             groups: ['activity:post'],
  46.         )
  47.     ]
  48.     private array $objectives = [];
  49.     #[ORM\Column(type'text'length10000nullabletrue)]
  50.     #[Assert\NotBlank(groups: ['activity:post'])]
  51.     #[Assert\Length(min20max10000groups: ['activity:post'])]
  52.     #[Serial\Groups(['activity:get''activity:post'])]
  53.     private ?string $content null;
  54.     #[ORM\Column(type'text'length10000nullabletrue)]
  55.     #[Serial\Groups(['activity:get''activity:post'])]
  56.     #[Assert\Length(max10000groups: ['activity:post'])]
  57.     private ?string $planContent null;
  58.     #[Serial\Groups(['activity:get'])]
  59.     public function getContentNl2br(): string
  60.     {
  61.         return $this->content nl2br($this->content) : '';
  62.     }
  63.     #[Serial\Groups(['activity:get'])]
  64.     public function getPlanContentNl2br(): string
  65.     {
  66.         return $this->planContent nl2br($this->planContent) : '';
  67.     }
  68.     public function getContactType(): ?int
  69.     {
  70.         return $this->contactType;
  71.     }
  72.     public function setContactType(?int $contactType): MeetingActivity
  73.     {
  74.         $this->contactType $contactType;
  75.         return $this;
  76.     }
  77.     public function getDuration(): ?int
  78.     {
  79.         return $this->duration;
  80.     }
  81.     public function setDuration(?int $duration): MeetingActivity
  82.     {
  83.         $this->duration $duration;
  84.         return $this;
  85.     }
  86.     public function getModality(): ?int
  87.     {
  88.         return $this->modality;
  89.     }
  90.     public function setModality(?int $modality): MeetingActivity
  91.     {
  92.         $this->modality $modality;
  93.         return $this;
  94.     }
  95.     public function getObjectives(): array
  96.     {
  97.         return $this->objectives;
  98.     }
  99.     public function setObjectives(array $objectives): MeetingActivity
  100.     {
  101.         $this->objectives $objectives;
  102.         return $this;
  103.     }
  104.     public function getContent(): ?string
  105.     {
  106.         return $this->content;
  107.     }
  108.     public function setContent(?string $content): MeetingActivity
  109.     {
  110.         $this->content $content;
  111.         return $this;
  112.     }
  113.     public function getPlanContent(): ?string
  114.     {
  115.         return $this->planContent;
  116.     }
  117.     public function setPlanContent(?string $planContent): MeetingActivity
  118.     {
  119.         $this->planContent $planContent;
  120.         return $this;
  121.     }
  122. }