<?phpnamespace App\Entity;use App\Repository\GroupRepository;use Doctrine\Common\Collections\ArrayCollection;use Doctrine\Common\Collections\Collection;use Doctrine\ORM\Mapping as ORM;/** * @ORM\Entity(repositoryClass=GroupRepository::class) * @ORM\Table(name="`group`") */class Group{ /** * @ORM\Id * @ORM\GeneratedValue * @ORM\Column(type="integer") */ private $id; /** * @ORM\Column(type="string", length=255) */ private $name; /** * @ORM\ManyToMany(targetEntity=User::class, inversedBy="groups") */ private $member; /** * @ORM\Column(type="datetime") */ private $created; /** * @ORM\OneToMany(targetEntity=Cars::class, mappedBy="parentGroup") */ private $cars; /** * @ORM\ManyToOne(targetEntity=User::class, inversedBy="ownedGroups") * @ORM\JoinColumn(nullable=false) */ private $owner; public function __construct() { $this->member = new ArrayCollection(); $this->cars = new ArrayCollection(); $this->created = new \DateTime(); } public function getId(): ?int { return $this->id; } public function getName(): ?string { return $this->name; } public function setName(string $name): self { $this->name = $name; return $this; } /** * @return Collection<int, User> */ public function getMember(): Collection { if($this->getOwner() != null){ $this->member->add($this->getOwner()); } return $this->member; } public function addMember(User $member): self { if (!$this->member->contains($member)) { $this->member[] = $member; } return $this; } public function removeMember(User $member): self { $this->member->removeElement($member); return $this; } public function getCreated(): ?\DateTimeInterface { return $this->created; } public function setCreated(\DateTimeInterface $created): self { $this->created = $created; return $this; } /** * @return Collection<int, Cars> */ public function getCars(): Collection { return $this->cars; } public function addCar(Cars $car): self { if (!$this->cars->contains($car)) { $this->cars[] = $car; $car->setParentGroup($this); } return $this; } public function removeCar(Cars $car): self { if ($this->cars->removeElement($car)) { // set the owning side to null (unless already changed) if ($car->getParentGroup() === $this) { $car->setParentGroup(null); } } return $this; } public function __toString() { return $this->name; } public function getOwner(): ?User { return $this->owner; } public function setOwner(?User $owner): self { $this->owner = $owner; return $this; }}