src/Entity/Spot.php line 12
<?phpnamespace App\Entity;use App\Repository\SpotRepository;use Doctrine\ORM\Mapping as ORM;use Symfony\Component\Uid\Uuid;use function Symfony\Component\String\u;use Symfony\Component\Validator\Constraints as Assert;#[ORM\Entity(repositoryClass: SpotRepository::class)]class Spot implements \JsonSerializable{#[ORM\Id]#[ORM\Column(type: 'uuid', unique: true)]#[ORM\GeneratedValue(strategy: 'CUSTOM')]#[ORM\CustomIdGenerator(class: 'doctrine.uuid_generator')]private $id;#[ORM\ManyToOne(inversedBy: 'spots')]private ?Tower $tower = null;#[ORM\ManyToOne(inversedBy: 'spots')]private ?Rent $rent = null;#[ORM\Column]#[Assert\LessThanOrEqual(value: 'tower.height',message: "A altura do ponto não pode ser maior do que a altura da torre.")]private ?int $height = null;#[ORM\Column(length: 255)]private ?string $direction = null;private $directionNames = ['n' => 'Norte','s' => 'Sul','l' => 'Leste','o' => 'Oeste',];public function getId(): ?Uuid{return $this->id;}public function getTower(): ?Tower{return $this->tower;}public function setTower(?Tower $tower): self{$this->tower = $tower;return $this;}public function getRent(): ?Rent{return $this->rent;}public function setRent(?Rent $rent): self{$this->rent = $rent;return $this;}public function getHeight(): ?int{return $this->height;}public function setHeight(int $height): self{$this->height = $height;return $this;}public function getDirection(): ?string{return $this->direction;}public function setDirection(string $direction): self{$this->direction = $direction;return $this;}public function getDirectionName(): string{return $this->directionNames[$this->getDirection()];}public function __toString(): string{return "Direção: ". $this->getDirectionName() . ' a ' . $this->getHeight(). 'm';}public function jsonSerialize(){return ['id' => $this->getId(),'height' => $this->getHeight(),'direction' => $this->getDirection(),'directionName' => $this->getDirectionName(),'rent' => $this->getRent(),];}}