<?php namespace Lc\ShopBundle\Model; use Doctrine\ORM\Mapping as ORM; use Gedmo\Mapping\Annotation as Gedmo; use Lc\ShopBundle\Context\UserInterface; /** * @ORM\MappedSuperclass */ abstract class AbstractEntity { /** * @ORM\Column(type="datetime") * @Gedmo\Timestampable(on="create") */ protected $createdAt; /** * @ORM\Column(type="datetime") * @Gedmo\Timestampable(on="update") */ protected $updatedAt; /** * @Gedmo\Blameable(on="create") * @ORM\ManyToOne(targetEntity="Lc\ShopBundle\Context\UserInterface") * @ORM\JoinColumn(nullable=false) */ protected $createdBy; /** * @Gedmo\Blameable(on="update") * @ORM\ManyToOne(targetEntity="Lc\ShopBundle\Context\UserInterface") * @ORM\JoinColumn(nullable=false) */ protected $updatedBy; public function getCreatedAt(): ?\DateTimeInterface { return $this->createdAt; } public function setCreatedAt(\DateTimeInterface $createdAt): self { $this->createdAt = $createdAt; return $this; } public function getUpdatedAt(): ?\DateTimeInterface { return $this->updatedAt; } public function setUpdatedAt(\DateTimeInterface $updatedAt): self { $this->updatedAt = $updatedAt; return $this; } public function getCreatedBy(): ?UserInterface { return $this->createdBy; } public function setCreatedBy(?UserInterface $createdBy): self { $this->createdBy = $createdBy; return $this; } public function getUpdatedBy(): ?UserInterface { return $this->updatedBy; } public function setUpdatedBy(?UserInterface $updatedBy): self { $this->updatedBy = $updatedBy; return $this; } }