2026-01-16 13:44:08 +01:00
|
|
|
<?php
|
|
|
|
|
|
|
|
|
|
namespace App\Entity;
|
|
|
|
|
|
|
|
|
|
use App\Repository\ProductRepository;
|
|
|
|
|
use Doctrine\ORM\Mapping as ORM;
|
2026-01-16 13:52:22 +01:00
|
|
|
use Symfony\Component\HttpFoundation\File\File;
|
|
|
|
|
use Vich\UploaderBundle\Mapping\Annotation as Vich;
|
2026-01-16 13:44:08 +01:00
|
|
|
|
|
|
|
|
#[ORM\Entity(repositoryClass: ProductRepository::class)]
|
2026-01-16 13:52:22 +01:00
|
|
|
#[Vich\Uploadable()]
|
2026-01-16 13:44:08 +01:00
|
|
|
class Product
|
|
|
|
|
{
|
|
|
|
|
#[ORM\Id]
|
|
|
|
|
#[ORM\GeneratedValue]
|
|
|
|
|
#[ORM\Column]
|
|
|
|
|
private ?int $id = null;
|
|
|
|
|
|
|
|
|
|
#[ORM\Column(length: 255)]
|
|
|
|
|
private ?string $ref = null;
|
|
|
|
|
|
|
|
|
|
#[ORM\Column(length: 255)]
|
|
|
|
|
private ?string $category = null;
|
|
|
|
|
|
|
|
|
|
#[ORM\Column(length: 255)]
|
|
|
|
|
private ?string $name = null;
|
|
|
|
|
|
|
|
|
|
#[ORM\Column]
|
|
|
|
|
private ?float $priceDay = null;
|
|
|
|
|
|
|
|
|
|
#[ORM\Column]
|
|
|
|
|
private ?float $priceSup = null;
|
|
|
|
|
|
|
|
|
|
#[ORM\Column]
|
|
|
|
|
private ?float $installation = null;
|
|
|
|
|
|
|
|
|
|
#[ORM\Column]
|
|
|
|
|
private ?float $caution = null;
|
|
|
|
|
|
2026-01-16 13:52:22 +01:00
|
|
|
|
|
|
|
|
#[Vich\UploadableField(mapping: 'image_product', fileNameProperty: 'imageName', size: 'imageSize')]
|
|
|
|
|
private ?File $imageFile = null;
|
|
|
|
|
#[ORM\Column(nullable: true)]
|
|
|
|
|
private ?string $imageName = null;
|
|
|
|
|
|
|
|
|
|
#[ORM\Column(nullable: true)]
|
|
|
|
|
private ?int $imageSize = null;
|
|
|
|
|
|
|
|
|
|
#[ORM\Column(nullable: true)]
|
|
|
|
|
private ?\DateTimeImmutable $updatedAt = null;
|
|
|
|
|
|
2026-01-16 13:55:11 +01:00
|
|
|
#[ORM\Column(length: 255, nullable: true)]
|
|
|
|
|
private ?string $productId = null;
|
|
|
|
|
|
2026-01-16 13:44:08 +01:00
|
|
|
public function getId(): ?int
|
|
|
|
|
{
|
|
|
|
|
return $this->id;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function getRef(): ?string
|
|
|
|
|
{
|
|
|
|
|
return $this->ref;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function setRef(string $ref): static
|
|
|
|
|
{
|
|
|
|
|
$this->ref = $ref;
|
|
|
|
|
|
|
|
|
|
return $this;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function getCategory(): ?string
|
|
|
|
|
{
|
|
|
|
|
return $this->category;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function setCategory(string $category): static
|
|
|
|
|
{
|
|
|
|
|
$this->category = $category;
|
|
|
|
|
|
|
|
|
|
return $this;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function getName(): ?string
|
|
|
|
|
{
|
|
|
|
|
return $this->name;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function setName(string $name): static
|
|
|
|
|
{
|
|
|
|
|
$this->name = $name;
|
|
|
|
|
|
|
|
|
|
return $this;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function getPriceDay(): ?float
|
|
|
|
|
{
|
|
|
|
|
return $this->priceDay;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function setPriceDay(float $priceDay): static
|
|
|
|
|
{
|
|
|
|
|
$this->priceDay = $priceDay;
|
|
|
|
|
|
|
|
|
|
return $this;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function getPriceSup(): ?float
|
|
|
|
|
{
|
|
|
|
|
return $this->priceSup;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function setPriceSup(float $priceSup): static
|
|
|
|
|
{
|
|
|
|
|
$this->priceSup = $priceSup;
|
|
|
|
|
|
|
|
|
|
return $this;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function getInstallation(): ?float
|
|
|
|
|
{
|
|
|
|
|
return $this->installation;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function setInstallation(float $installation): static
|
|
|
|
|
{
|
|
|
|
|
$this->installation = $installation;
|
|
|
|
|
|
|
|
|
|
return $this;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function getCaution(): ?float
|
|
|
|
|
{
|
|
|
|
|
return $this->caution;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function setCaution(float $caution): static
|
|
|
|
|
{
|
|
|
|
|
$this->caution = $caution;
|
|
|
|
|
|
|
|
|
|
return $this;
|
|
|
|
|
}
|
2026-01-16 13:52:22 +01:00
|
|
|
|
|
|
|
|
public function setImageFile(?File $imageFile = null): void
|
|
|
|
|
{
|
|
|
|
|
$this->imageFile = $imageFile;
|
|
|
|
|
|
|
|
|
|
if (null !== $imageFile) {
|
|
|
|
|
// It is required that at least one field changes if you are using doctrine
|
|
|
|
|
// otherwise the event listeners won't be called and the file is lost
|
|
|
|
|
$this->updatedAt = new \DateTimeImmutable();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function getImageFile(): ?File
|
|
|
|
|
{
|
|
|
|
|
return $this->imageFile;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function setImageName(?string $imageName): void
|
|
|
|
|
{
|
|
|
|
|
$this->imageName = $imageName;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function getImageName(): ?string
|
|
|
|
|
{
|
|
|
|
|
return $this->imageName;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function setImageSize(?int $imageSize): void
|
|
|
|
|
{
|
|
|
|
|
$this->imageSize = $imageSize;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function getImageSize(): ?int
|
|
|
|
|
{
|
|
|
|
|
return $this->imageSize;
|
|
|
|
|
}
|
2026-01-16 13:55:11 +01:00
|
|
|
|
|
|
|
|
public function getProductId(): ?string
|
|
|
|
|
{
|
|
|
|
|
return $this->productId;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function setProductId(?string $productId): static
|
|
|
|
|
{
|
|
|
|
|
$this->productId = $productId;
|
|
|
|
|
|
|
|
|
|
return $this;
|
|
|
|
|
}
|
2026-01-16 13:44:08 +01:00
|
|
|
}
|