apps/backend/src/Entity/Blog.php line 13

  1. <?php
  2. namespace Backend\Entity;
  3. use Backend\Repository\BlogRepository;
  4. use Doctrine\DBAL\Types\Types;
  5. use Doctrine\ORM\Mapping as ORM;
  6. #[ORM\Table(name'blog')]
  7. #[ORM\Index(columns: ['blog_category_id'], name'fk_blog_category_idx')]
  8. #[ORM\Entity(repositoryClassBlogRepository::class)]
  9. #[ORM\HasLifecycleCallbacks]
  10. class Blog
  11. {
  12.     #[ORM\Id]
  13.     #[ORM\GeneratedValue]
  14.     #[ORM\Column]
  15.     private ?int $id null;
  16.     #[ORM\Column(length255nullablefalse)]
  17.     private string $title;
  18.     #[ORM\Column(length255nullablefalse)]
  19.     private string $url;
  20.     #[ORM\Column(length255nullablefalse)]
  21.     private string $imageThumbnail;
  22.     #[ORM\Column(length255nullablefalse)]
  23.     private string $image;
  24.     #[ORM\Column(typeTypes::TEXTnullablefalse)]
  25.     private string $content;
  26.     #[ORM\JoinColumn(name'blog_category_id'referencedColumnName'id')]
  27.     #[ORM\ManyToOne(targetEntity'BlogCategory')]
  28.     private BlogCategory $blogCategory;
  29.     #[ORM\Column(typeTypes::TEXTnullabletrue)]
  30.     private ?string $tags null;
  31.     #[ORM\Column(type"datetime"nullabletrue)]
  32.     private $createDate;
  33.     #[ORM\Column(type"datetime"nullabletrue)]
  34.     private \DateTimeInterface $updateDate;
  35.     #[ORM\PrePersist]
  36.     #[ORM\PreUpdate]
  37.     public function updatedTimestamps(): void
  38.     {
  39.         $this->setUpdateDate(new \DateTime('now'));
  40.         if ($this->getCreateDate() == null) {
  41.             $this->setCreateDate(new \DateTime('now'));
  42.         }
  43.     }
  44.     public function getId(): ?int
  45.     {
  46.         return $this->id;
  47.     }
  48.     /**
  49.      * @return string
  50.      */
  51.     public function getTitle(): string
  52.     {
  53.         return $this->title;
  54.     }
  55.     /**
  56.      * @param string $title
  57.      */
  58.     public function setTitle(string $title): void
  59.     {
  60.         $this->title $title;
  61.     }
  62.     /**
  63.      * @return string
  64.      */
  65.     public function getUrl(): string
  66.     {
  67.         return $this->url;
  68.     }
  69.     /**
  70.      * @param string $url
  71.      */
  72.     public function setUrl(string $url): void
  73.     {
  74.         $this->url $url;
  75.     }
  76.     /**
  77.      * @return string
  78.      */
  79.     public function getImageThumbnail(): string
  80.     {
  81.         return $this->imageThumbnail;
  82.     }
  83.     /**
  84.      * @param string $imageThumbnail
  85.      */
  86.     public function setImageThumbnail(string $imageThumbnail): void
  87.     {
  88.         $this->imageThumbnail $imageThumbnail;
  89.     }
  90.     /**
  91.      * @return string
  92.      */
  93.     public function getImage(): string
  94.     {
  95.         return $this->image;
  96.     }
  97.     /**
  98.      * @param string $image
  99.      */
  100.     public function setImage(string $image): void
  101.     {
  102.         $this->image $image;
  103.     }
  104.     /**
  105.      * @return BlogCategory
  106.      */
  107.     public function getBlogCategory(): BlogCategory
  108.     {
  109.         return $this->blogCategory;
  110.     }
  111.     public function setBlogCategory(BlogCategory $blogCategory): self
  112.     {
  113.         $this->blogCategory $blogCategory;
  114.         return $this;
  115.     }
  116.     public function getCreateDate(): ?\DateTimeInterface
  117.     {
  118.         return $this->createDate;
  119.     }
  120.     /**
  121.      * @param \DateTimeInterface $createDate
  122.      */
  123.     public function setCreateDate(\DateTimeInterface $createDate): void
  124.     {
  125.         $this->createDate $createDate;
  126.     }
  127.     /**
  128.      * @return \DateTimeInterface
  129.      */
  130.     public function getUpdateDate(): \DateTimeInterface
  131.     {
  132.         return $this->updateDate;
  133.     }
  134.     /**
  135.      * @param \DateTimeInterface $updateDate
  136.      */
  137.     public function setUpdateDate(\DateTimeInterface $updateDate): void
  138.     {
  139.         $this->updateDate $updateDate;
  140.     }
  141.     /**
  142.      * @return string
  143.      */
  144.     public function getContent(): string
  145.     {
  146.         return $this->content;
  147.     }
  148.     /**
  149.      * @param string $content
  150.      */
  151.     public function setContent(string $content): void
  152.     {
  153.         $this->content $content;
  154.     }
  155.     /**
  156.      * @return string|null
  157.      */
  158.     public function getTags(): ?string
  159.     {
  160.         return $this->tags;
  161.     }
  162.     /**
  163.      * @param string|null $tags
  164.      */
  165.     public function setTags(?string $tags): void
  166.     {
  167.         $this->tags $tags;
  168.     }
  169. }