src/Entity/Notification.php line 19

Open in your IDE?
  1. <?php
  2. namespace App\Entity;
  3. use DateTime;
  4. use Doctrine\ORM\Mapping as ORM;
  5. use Symfony\Component\Validator\Constraints as Assert;
  6. /**
  7.  * @ORM\Entity(
  8.  *     repositoryClass="App\Repository\NotificationRepository"
  9.  * )
  10.  * @ORM\Table(
  11.  *     name="notification",
  12.  *     options={"collate"="utf8_swedish_ci"}
  13.  * )
  14.  * @ORM\HasLifecycleCallbacks
  15.  */
  16. class Notification implements EntityInterface
  17. {
  18.     /**
  19.      * @ORM\Id
  20.      * @ORM\Column(
  21.      *     type="integer"
  22.      * )
  23.      * @ORM\GeneratedValue(
  24.      *     strategy="AUTO"
  25.      * )
  26.      *
  27.      * @var int|null
  28.      */
  29.     protected ?int $id null;
  30.     /**
  31.      * @ORM\Column(
  32.      *     type="string",
  33.      *     length=2000
  34.      * )
  35.      *
  36.      * @var string
  37.      */
  38.     protected string $note;
  39.     /**
  40.      * @ORM\ManyToOne(
  41.      *     targetEntity="SalesCase",
  42.      *     inversedBy="notifications"
  43.      * )
  44.      * @ORM\JoinColumn(
  45.      *     name="sales_case_id",
  46.      *     referencedColumnName="id",
  47.      *     onDelete="cascade"
  48.      * )
  49.      *
  50.      * @Assert\NotNull
  51.      *
  52.      * @var SalesCase
  53.      */
  54.     protected SalesCase $salesCase;
  55.     /**
  56.      * @ORM\Column(
  57.      *     type="datetime"
  58.      * )
  59.      * @Assert\NotNull
  60.      *
  61.      * @var DateTime
  62.      */
  63.     protected DateTime $time;
  64.     /**
  65.      * @param SalesCase $salesCase
  66.      * @param string    $note
  67.      */
  68.     public function __construct(SalesCase $salesCasestring $note)
  69.     {
  70.         $this->salesCase $salesCase;
  71.         $this->note $note;
  72.         $this->time = new DateTime();
  73.     }
  74.     /**
  75.      * @return int|null
  76.      */
  77.     public function getId(): ?int
  78.     {
  79.         return $this->id;
  80.     }
  81.     /**
  82.      * @return string
  83.      */
  84.     public function getNote(): string
  85.     {
  86.         return $this->note;
  87.     }
  88.     /**
  89.      * @return SalesCase
  90.      */
  91.     public function getSalesCase(): SalesCase
  92.     {
  93.         return $this->salesCase;
  94.     }
  95.     /**
  96.      * @return DateTime
  97.      */
  98.     public function getTime(): DateTime
  99.     {
  100.         return $this->time;
  101.     }
  102.     /**
  103.      * @param string $note
  104.      */
  105.     public function setNote(string $note)
  106.     {
  107.         $this->note $note;
  108.     }
  109.     /**
  110.      * @param SalesCase $salesCase
  111.      */
  112.     public function setSalesCase(SalesCase $salesCase)
  113.     {
  114.         $this->salesCase $salesCase;
  115.     }
  116.     /**
  117.      * @param DateTime $time
  118.      */
  119.     public function setTime(DateTime $time)
  120.     {
  121.         $this->time $time;
  122.     }
  123. }