<?php
namespace App\Entity;
use App\Repository\StorePlaceDataRepository;
use Doctrine\ORM\Mapping as ORM;
/**
* @ORM\Entity(repositoryClass=StorePlaceDataRepository::class)
*/
class StorePlaceData
{
/**
* @ORM\Id
* @ORM\GeneratedValue
* @ORM\Column(type="integer")
*/
private $id;
/**
* @ORM\Column(type="string", length=255, nullable=true)
*/
private $placeId;
/**
* @ORM\Column(type="float", nullable=true)
*/
private $rating;
/**
* @ORM\Column(type="integer", nullable=true)
*/
private $userRatingCount;
/**
* @ORM\Column(type="datetime_immutable", nullable=true)
*/
private $lastFetchedAt;
/**
* @ORM\Column(type="datetime_immutable", nullable=true)
*/
private $noPlaceIdDetectedAt;
/**
* @ORM\OneToOne(targetEntity=Store::class, inversedBy="storePlaceData", cascade={"persist", "remove"})
*/
private $store;
/**
* @ORM\Column(type="json", nullable=true)
*/
private $openHoursWeekdayDescriptions = [];
/**
* @ORM\Column(type="json", nullable=true)
*/
private $nearbyTransit = [];
/**
* @ORM\Column(type="datetime_immutable", nullable=true)
*/
private $placeIdLastRefreshAt;
public function getId(): ?int
{
return $this->id;
}
public function getPlaceId(): ?string
{
return $this->placeId;
}
public function setPlaceId(?string $placeId): self
{
$this->placeId = $placeId;
return $this;
}
public function getRating(): ?float
{
return $this->rating;
}
public function setRating(?float $rating): self
{
$this->rating = $rating;
return $this;
}
public function getUserRatingCount(): ?int
{
return $this->userRatingCount;
}
public function setUserRatingCount(?int $userRatingCount): self
{
$this->userRatingCount = $userRatingCount;
return $this;
}
public function getLastFetchedAt(): ?\DateTimeImmutable
{
return $this->lastFetchedAt;
}
public function setLastFetchedAt(?\DateTimeImmutable $lastFetchedAt): self
{
$this->lastFetchedAt = $lastFetchedAt;
return $this;
}
public function getNoPlaceIdDetectedAt(): ?\DateTimeImmutable
{
return $this->noPlaceIdDetectedAt;
}
public function setNoPlaceIdDetectedAt(?\DateTimeImmutable $noPlaceIdDetectedAt): self
{
$this->noPlaceIdDetectedAt = $noPlaceIdDetectedAt;
return $this;
}
public function getStore(): ?Store
{
return $this->store;
}
public function setStore(?Store $store): self
{
$this->store = $store;
return $this;
}
public function getOpenHoursWeekdayDescriptions(): ?array
{
return $this->openHoursWeekdayDescriptions;
}
public function setOpenHoursWeekdayDescriptions(?array $openHoursWeekdayDescriptions): self
{
$this->openHoursWeekdayDescriptions = $openHoursWeekdayDescriptions;
return $this;
}
public function getNearbyTransit(): ?array
{
return $this->nearbyTransit;
}
public function setNearbyTransit(?array $nearbyTransit): self
{
$this->nearbyTransit = $nearbyTransit;
return $this;
}
public function getPlaceIdLastRefreshAt(): ?\DateTimeImmutable
{
return $this->placeIdLastRefreshAt;
}
public function setPlaceIdLastRefreshAt(?\DateTimeImmutable $placeIdLastRefreshAt): self
{
$this->placeIdLastRefreshAt = $placeIdLastRefreshAt;
return $this;
}
}