src/Entity/Gos/Consultant/ConsultantRoomQueue.php line 14

Open in your IDE?
  1. <?php
  2. namespace App\Entity\Gos\Consultant;
  3. use App\Repository\Gos\Consultant\ConsultantRoomQueueRepository;
  4. use Doctrine\Common\Collections\ArrayCollection;
  5. use Doctrine\Common\Collections\Collection;
  6. use Doctrine\ORM\Mapping as ORM;
  7. /**
  8.  * @ORM\Entity(repositoryClass=ConsultantRoomQueueRepository::class)
  9.  * @ORM\HasLifecycleCallbacks()
  10.  */
  11. class ConsultantRoomQueue extends ConsultantChatBase
  12. {
  13.     /**
  14.      * @ORM\OneToMany(targetEntity=ConsultantMessage::class, mappedBy="consultantRoomQueue")
  15.      */
  16.     private $consultantMessages;
  17.     /**
  18.      * @ORM\Column(type="datetime", nullable=true)
  19.      */
  20.     private $lastMessageAt;
  21.     public function __construct()
  22.     {
  23.         $this->consultantMessages = new ArrayCollection();
  24.     }
  25.     /**
  26.      * @return Collection|ConsultantMessage[]
  27.      */
  28.     public function getConsultantMessages(): Collection
  29.     {
  30.         return $this->consultantMessages;
  31.     }
  32.     public function addConsultantMessage(ConsultantMessage $consultantMessage): self
  33.     {
  34.         if (!$this->consultantMessages->contains($consultantMessage)) {
  35.             $this->consultantMessages[] = $consultantMessage;
  36.             $consultantMessage->setConsultantRoomQueue($this);
  37.         }
  38.         return $this;
  39.     }
  40.     public function removeConsultantMessage(ConsultantMessage $consultantMessage): self
  41.     {
  42.         if ($this->consultantMessages->contains($consultantMessage)) {
  43.             $this->consultantMessages->removeElement($consultantMessage);
  44.             // set the owning side to null (unless already changed)
  45.             if ($consultantMessage->getConsultantRoomQueue() === $this) {
  46.                 $consultantMessage->setConsultantRoomQueue(null);
  47.             }
  48.         }
  49.         return $this;
  50.     }
  51.     public function getLastMessageAt(): ?\DateTimeInterface
  52.     {
  53.         return $this->lastMessageAt;
  54.     }
  55.     public function setLastMessageAt(?\DateTimeInterface $lastMessageAt): self
  56.     {
  57.         $this->lastMessageAt $lastMessageAt;
  58.         return $this;
  59.     }
  60. }