src/Entity/Chat/MessageUser.php line 16

Open in your IDE?
  1. <?php
  2. namespace App\Entity\Chat;
  3. use App\Entity\Account\User;
  4. use App\Repository\Chat\MessageUserRepository;
  5. use Doctrine\ORM\Mapping as ORM;
  6. use Drosalys\Bundle\ApiBundle\Serializer\Attributes\IdGroups;
  7. use Symfony\Bridge\Doctrine\Validator\Constraints\UniqueEntity;
  8. use Symfony\Component\Serializer\Annotation as Serial;
  9. #[ORM\Entity(repositoryClassMessageUserRepository::class)]
  10. #[ORM\Table(name'chat_message_users')]
  11. #[ORM\UniqueConstraint(name'unique_chat_message_user'columns: ['message_id''user_id'])]
  12. #[UniqueEntity(fields: ['message''user'], groups: ['PostMessageUser''PostMessage'])]
  13. class MessageUser
  14. {
  15.     #[ORM\Id]
  16.     #[ORM\GeneratedValue]
  17.     #[ORM\Column(type'integer')]
  18.     #[Serial\Groups(groups: ['Message''WS_MESSAGE''PostMessage'])]
  19.     private ?int $id null;
  20.     #[ORM\Column(type'string'length255nullabletrue)]
  21.     #[Serial\Groups(groups: ['Message''WS_MESSAGE'"PostMessageUser"'PostMessage'])]
  22.     private ?string $content null;
  23.     #[ORM\ManyToOne(targetEntityMessage::class)]
  24.     #[ORM\JoinColumn(nullablefalseonDelete'CASCADE')]
  25.     #[IdGroups(groups: ['WS_MESSAGE'])]
  26.     private ?Message $message null;
  27.     #[ORM\ManyToOne(targetEntityUser::class)]
  28.     #[ORM\JoinColumn(nullablefalseonDelete'CASCADE')]
  29.     #[Serial\Groups(groups: ['Message''WS_MESSAGE''PostMessage'])]
  30.     private ?User $user null;
  31.     #[ORM\Column(type'datetime'nullabletrue)]
  32.     #[Serial\Groups(groups: ['Message''WS_MESSAGE'])]
  33.     private ?\DateTime $seenAt null;
  34.     public function getId(): ?int
  35.     {
  36.         return $this->id;
  37.     }
  38.     public function getContent(): ?string
  39.     {
  40.         return $this->content;
  41.     }
  42.     public function setContent(?string $content): self
  43.     {
  44.         $this->content $content;
  45.         return $this;
  46.     }
  47.     public function getMessage(): ?Message
  48.     {
  49.         return $this->message;
  50.     }
  51.     public function setMessage(?Message $message): self
  52.     {
  53.         $this->message $message;
  54.         return $this;
  55.     }
  56.     public function getUser(): ?User
  57.     {
  58.         return $this->user;
  59.     }
  60.     public function setUser(?User $user): self
  61.     {
  62.         $this->user $user;
  63.         return $this;
  64.     }
  65.     public function getSeenAt(): ?\DateTime
  66.     {
  67.         return $this->seenAt;
  68.     }
  69.     public function setSeenAt(?\DateTime $seenAt): MessageUser
  70.     {
  71.         $this->seenAt $seenAt;
  72.         return $this;
  73.     }
  74. }