<?phpnamespace App\Entity\Users;use Symfony\Component\Validator\Constraints AS Constraints;use Symfony\Component\Validator\Constraints AS Assert;use Doctrine\ORM\Mapping AS ORM;use Doctrine\ORM\Mapping\JoinColumn;use Ramsey\Uuid\Uuid;/** * @ORM\Entity(repositoryClass="App\Repository\Users\GroupRepository") * @ORM\Table(name="users_group") */class Group{ /** * @ORM\Column(type="integer") * @ORM\Id * @ORM\GeneratedValue(strategy="AUTO") */ private $id; /** * @ORM\Column(type="uuid") * @Assert\Uuid */ protected $uuid; /** * @var \DateTime * * @ORM\Column(type="datetime", nullable=false) */ private $created; /** * @var string * * @ORM\Column(type="string", length=255) */ private $name; /** * @var string * * @ORM\Column(type="string", length=255) */ private $type; /** * @var boolean * * @ORM\Column(type="boolean") */ private $isLocked; /** * @ORM\ManyToMany(targetEntity="Permission") * @ORM\JoinTable(name="cwdadmin_group_permission", * joinColumns={@JoinColumn(name="group_id", referencedColumnName="id")}, * inverseJoinColumns={@JoinColumn(name="permission_id", referencedColumnName="id", unique=false)} * ) */ protected $permissions; /** * @ORM\OneToMany(targetEntity="User", mappedBy="group") **/ private $users; public function __construct() { // UUID if(!$this->getUuid()) { $uuid = Uuid::uuid1(); $this->setUuid($uuid->toString()); } // Set some defaults $this->setCreated(new \DateTime()); if(!$this->getIsLocked()) $this->setIsLocked(false); } public function __toString() { return $this->getName(); } public function getId() { return $this->id; } public function setUuid($uuid) { $this->uuid = $uuid; return $this; } public function getUuid() { return $this->uuid; } public function setCreated($created) { $this->created = $created; return $this; } public function getCreated() { return $this->created; } public function setName($name) { $this->name = $name; return $this; } public function getName() { return $this->name; } public function setType($type) { $this->type = $type; return $this; } public function getType() { return $this->type; } public function addPermission(\App\Entity\Users\Permission $permission) { $this->permissions[] = $permission; return $this; } public function removePermission(\App\Entity\Users\Permission $permission) { $this->permissions->removeElement($permission); } public function getPermissions() { return $this->permissions; } public function setIsLocked($isLocked) { $this->isLocked = $isLocked; return $this; } public function getIsLocked() { return $this->isLocked; } public function getUsers() { return $this->users; }}