src/Application/Internit/DownloadBundle/Entity/Download.php line 22

Open in your IDE?
  1. <?php
  2. namespace App\Application\Internit\DownloadBundle\Entity;
  3. use App\Application\Internit\DownloadBundle\Repository\DownloadRepository;
  4. use App\Application\Internit\ClienteBundle\Entity\Cliente;
  5. use App\Application\Internit\UnidadeClienteBundle\Entity\UnidadeCliente;
  6. use Symfony\Bridge\Doctrine\Validator\Constraints\UniqueEntity;
  7. use Symfony\Component\Validator\Constraints as Assert;
  8. use Doctrine\Common\Collections\ArrayCollection;
  9. use Doctrine\Common\Collections\Collection;
  10. use App\Entity\SonataMediaGallery;
  11. use App\Entity\SonataMediaMedia;
  12. use Doctrine\ORM\Mapping as ORM;
  13. use DateTime;
  14. /** Info:  */
  15. #[ORM\Table(name'download')]
  16. #[ORM\Entity(repositoryClassDownloadRepository::class)]
  17. #[UniqueEntity('id')]
  18. class Download
  19. {
  20.     #[ORM\Id]
  21.     #[ORM\GeneratedValue]
  22.     #[ORM\Column(name'id'type'integer'uniquetruenullablefalse)]
  23.     private ?int $id null;
  24.     #[Assert\NotNull]
  25.     #[Assert\NotBlank]
  26.     #[ORM\Column(name'titulo'type'string'uniquefalsenullablefalse)]
  27.     private string $titulo;
  28.     #[ORM\Column(name'descricao'type'text'uniquefalsenullabletrue)]
  29.     private ?string $descricao null;
  30.     #[ORM\Column(name'visivel'type'boolean'uniquefalsenullabletrue)]
  31.     private ?bool $visivel null;
  32.     #[ORM\JoinTable(name'cliente_download')]
  33.     #[ORM\JoinColumn(name'download_id'referencedColumnName'id')] // , onDelete: 'SET NULL'
  34.     #[ORM\InverseJoinColumn(name'cliente_id'referencedColumnName'id')]
  35.     #[ORM\ManyToMany(targetEntityCliente::class, inversedBy'downloads')]
  36.     private Collection $clientes;
  37.     #[ORM\JoinTable(name'unidade_cliente_download')]
  38.     #[ORM\JoinColumn(name'download_id'referencedColumnName'id')] // , onDelete: 'SET NULL'
  39.     #[ORM\InverseJoinColumn(name'unidade_cliente_id'referencedColumnName'id')]
  40.     #[ORM\ManyToMany(targetEntityUnidadeCliente::class, inversedBy'downloads')]
  41.     private Collection $unidadeCliente;
  42.     private mixed $multipleUpload;
  43.     #[ORM\ManyToOne(targetEntitySonataMediaGallery::class, cascade: ['persist'])]
  44.     private mixed $arquivos;
  45.     private int $qtdUnidades;
  46.     public function __construct()
  47.     {
  48.         $this->clientes = new ArrayCollection();
  49.     }
  50.     public function getId(): ?int
  51.     {
  52.         return $this->id;
  53.     }
  54.     public function getTitulo(): string
  55.     {
  56.         return $this->titulo;
  57.     }
  58.     public function setTitulo(string $titulo): void
  59.     {
  60.         $this->titulo $titulo;
  61.     }
  62.     public function getDescricao(): ?string
  63.     {
  64.         return $this->descricao;
  65.     }
  66.     public function setDescricao(?string $descricao): void
  67.     {
  68.         $this->descricao $descricao;
  69.     }
  70.     public function getVisivel(): ?bool
  71.     {
  72.         return $this->visivel;
  73.     }
  74.     public function setVisivel(?bool $visivel): void
  75.     {
  76.         $this->visivel $visivel;
  77.     }
  78.     public function getClientes(): Collection
  79.     {
  80.         return $this->clientes;
  81.     }
  82.     public function setClientes(Collection $clientes): void
  83.     {
  84.         $this->clientes $clientes;
  85.     }
  86.     /**
  87.      * @return Collection
  88.      */
  89.     public function getUnidadeCliente(): Collection
  90.     {
  91.         return $this->unidadeCliente;
  92.     }
  93.     /**
  94.      * @param Collection $unidadeCliente
  95.      */
  96.     public function setUnidadeCliente(Collection $unidadeCliente): void
  97.     {
  98.         $this->unidadeCliente $unidadeCliente;
  99.     }
  100.     public function getArquivos(): mixed
  101.     {
  102.         return $this->arquivos;
  103.     }
  104.     public function setArquivos(mixed $arquivos): void
  105.     {
  106.         $this->arquivos $arquivos;
  107.     }
  108.     /**
  109.      * @return mixed
  110.      */
  111.     public function getMultipleUpload(): mixed
  112.     {
  113.         return $this->multipleUpload;
  114.     }
  115.     /**
  116.      * @param mixed $multipleUpload
  117.      */
  118.     public function setMultipleUpload(mixed $multipleUpload): void
  119.     {
  120.         $this->multipleUpload $multipleUpload;
  121.     }
  122.     public function getQtdUnidades(): int
  123.     {
  124.         return count($this->getUnidadeCliente());
  125.     }
  126. }