<?php
namespace App\Entity;
use App\Trait\ArchiveEntity;
use App\Trait\LoggableEntity;
use Doctrine\ORM\Mapping as ORM;
use Gedmo\Timestampable\Traits\TimestampableEntity;
/**
* @ORM\MappedSuperclass()
*/
abstract class AbstractEntity implements \JsonSerializable
{
use TimestampableEntity, LoggableEntity, ArchiveEntity;
/**
* @ORM\Id
* @ORM\GeneratedValue
* @ORM\Column(type="integer")
*/
protected $id;
public function getId(): int
{
return $this->id;
}
public function setId(?int $id): ?int
{
return $this->id=$id;
}
public function jsonSerialize(): array
{
return get_object_vars($this);
}
}