<?php
namespace App\Entity\Projet\Portfolio;
use App\Repository\Projet\Portfolio\InterventionRepository;
use App\Entity\Projet\Portfolio\Imgportfolio;
use Doctrine\ORM\Mapping as ORM;
use Symfony\Component\HttpFoundation\File\File;
use Vich\UploaderBundle\Mapping\Annotation as Vich;
use App\Entity\Users\User\User;
/**
* @ORM\Table(name="`intervention`")
* @ORM\Entity(repositoryClass=InterventionRepository::class)
* @Vich\Uploadable
*/
class Intervention
{
/**
* @ORM\Id
* @ORM\GeneratedValue
* @ORM\Column(type="integer")
*/
private $id;
/**
* @ORM\Column(type="string", length=255)
*/
private $name;
/**
* @ORM\Column(type="string", length=255, nullable=true)
*/
private $description;
/**
* @ORM\Column(type="datetime")
*/
private $createdAt;
/**
* @ORM\Column(type="integer")
*/
private $imgNumber;
/**
* @ORM\Column(type="integer")
*/
private $rang;
/**
* @ORM\Column(type="string", length=255, nullable=true)
*/
public $contentUrl;
/**
* @ORM\Column(type="string", length=255, nullable=true)
*/
private $filePath;
/**
* @Vich\UploadableField(mapping="file_intervention", fileNameProperty="filePath", size="imageSize", mimeType="mimeType", originalName="originalName")
* @var File|null
*/
public ?File $file = null;
/**
* @ORM\Column(type="string", length=255, nullable=true)
*/
private $imageSize;
/**
* @ORM\Column(type="string", length=255, nullable=true)
*/
private $originalName;
/**
* @ORM\Column(type="string", length=255, nullable=true)
*/
private $mimeType;
/**
* @ORM\ManyToOne(targetEntity=User::class)
*/
private $user;
private $em;
public function __construct()
{
$this->createdAt = new \Datetime();
$this->imgNumber = 0;
$this->rang = 0;
}
public function getEm()
{
return $this->em;
}
public function setEm($em)
{
return $this->em = $em;
}
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;
}
public function getDescription(): ?string
{
return $this->description;
}
public function setDescription(?string $description): self
{
$this->description = $description;
return $this;
}
public function getCreatedAt(): ?\DateTimeInterface
{
return $this->createdAt;
}
public function setCreatedAt(\DateTimeInterface $createdAt): self
{
$this->createdAt = $createdAt;
return $this;
}
public function getImgNumber(): ?int
{
return $this->imgNumber;
}
public function setImgNumber(int $imgNumber): self
{
$this->imgNumber = $imgNumber;
return $this;
}
public function getRang(): ?int
{
return $this->rang;
}
public function setRang(int $rang): self
{
$this->rang = $rang;
return $this;
}
public function getFirstImages()
{
$repository = $this->em->getRepository(Imgportfolio::class);
$images_portfolio = $repository->findBy(array('intervention'=>$this));
return $images_portfolio;
}
public function getContentUrl(): ?string
{
return $this->contentUrl;
}
public function setContentUrl(?string $contentUrl): self
{
$this->contentUrl = $contentUrl;
return $this;
}
public function getFilePath(): ?string
{
return $this->filePath;
}
public function setFilePath(?string $filePath): self
{
$this->filePath = $filePath;
return $this;
}
public function getImageSize(): ?string
{
return $this->imageSize;
}
public function setImageSize(?string $imageSize): self
{
$this->imageSize = $imageSize;
return $this;
}
public function getOriginalName(): ?string
{
return $this->originalName;
}
public function setOriginalName(?string $originalName): self
{
$this->originalName = $originalName;
return $this;
}
public function getMimeType(): ?string
{
return $this->mimeType;
}
public function setMimeType(string $mimeType = null): self
{
$this->mimeType = $mimeType;
return $this;
}
public function getUser(): ?User
{
return $this->user;
}
public function setUser(?User $user): self
{
$this->user = $user;
return $this;
}
}