src/Entity/Cliente.php line 17

Open in your IDE?
  1. <?php
  2. namespace App\Entity;
  3. use App\Repository\ClienteRepository;
  4. use Doctrine\Common\Collections\ArrayCollection;
  5. use Doctrine\Common\Collections\Collection;
  6. use Doctrine\ORM\Mapping as ORM;
  7. use Symfony\Component\Validator\Constraints as Assert;
  8. use Symfony\Component\HttpFoundation\File\File;
  9. use Vich\UploaderBundle\Mapping\Annotation as Vich;
  10. /**
  11.  * @ORM\Entity(repositoryClass=ClienteRepository::class)
  12.  * @Vich\Uploadable
  13.  */
  14. class Cliente
  15. {
  16.     /**
  17.      * @ORM\Id
  18.      * @ORM\GeneratedValue
  19.      * @ORM\Column(type="integer")
  20.      */
  21.     private $id;
  22.     /**
  23.      * @ORM\Column(type="string", length=255)
  24.      */
  25.     private $nombre;
  26.     /**
  27.      * @ORM\Column(type="string", length=255)
  28.      */
  29.     private $razonSocial;
  30.     /**
  31.      * @ORM\Column(type="string", length=255, nullable=true)
  32.      */
  33.     private $nombreContacto;
  34.     /**
  35.      * @ORM\Column(type="string", length=255, nullable=true)
  36.      */
  37.     private $telefonoContacto;
  38.     /**
  39.      * @ORM\Column(type="string", length=255, nullable=true)
  40.      */
  41.     private $emailContacto;
  42.     /**
  43.      * @ORM\Column(type="string", length=255, nullable=true)
  44.      */
  45.     private $emailNotificacion;
  46.     /**
  47.      * @ORM\Column(type="boolean")
  48.      */
  49.     private $activo;
  50.     /**
  51.      * @ORM\Column(type="string", length=255, nullable=true)
  52.      */
  53.     private $rut;
  54.     /**
  55.      * @ORM\OneToMany(targetEntity=Direccion::class, mappedBy="cliente")
  56.      */
  57.     private $direccions;
  58.     /**
  59.      * @ORM\OneToMany(targetEntity=Orden::class, mappedBy="cliente")
  60.      */
  61.     private $ordens;
  62.     /**
  63.      * @ORM\ManyToMany(targetEntity=User::class, mappedBy="clientes")
  64.      */
  65.     private $usuarios;
  66.     /**
  67.      * @ORM\Column(type="datetime", nullable=true)
  68.      */
  69.     private $fechaActualizacion;
  70.     /**
  71.      * @ORM\Column(type="string", length=255, nullable=true)
  72.      */
  73.     private $documentoName;
  74.     /**
  75.      * NOTE: This is not a mapped field of entity metadata, just a simple property.
  76.      * @Assert\File(
  77.      *     maxSize = "200Mi",
  78.      *     mimeTypes={ "image/*" }
  79.      * )
  80.      * @Vich\UploadableField(mapping="clientes_logo", fileNameProperty="documentoName")
  81.      * @var File
  82.      */
  83.     private $documentoFile;    
  84.     /**
  85.      * @ORM\Column(type="datetime", nullable=true)
  86.      */
  87.     private $fechaActualizacionEtiqueta;
  88.     /**
  89.      * NOTE: This is not a mapped field of entity metadata, just a simple property.
  90.      * @Assert\File(
  91.      *     maxSize = "200Mi",
  92.      *     mimeTypes={ "image/*" }
  93.      * )
  94.      * @Vich\UploadableField(mapping="clientes_logo_etiqueta", fileNameProperty="documentoNameEtiqueta")
  95.      * @var File
  96.      */
  97.     private $documentoFileEtiqueta;
  98.     /**
  99.      * @ORM\Column(type="string", length=255, nullable=true)
  100.      */
  101.     private $documentoNameEtiqueta;
  102.     /**
  103.      * @ORM\Column(type="string", length=255, nullable=true)
  104.      */
  105.     private $emailNotificacion2;
  106.     /**
  107.      * @ORM\Column(type="string", length=255, nullable=true)
  108.      */
  109.     private $emailNotificacion3;
  110.     /**
  111.      * @ORM\Column(type="integer", nullable=true)
  112.      */
  113.     private $telefonoContactoAnexo;
  114.     /**
  115.      * @ORM\Column(type="string", length=255, nullable=true)
  116.      */
  117.     private $emailNotificacion4;
  118.     /**
  119.      * @ORM\Column(type="string", length=255, nullable=true)
  120.      */
  121.     private $emailNotificacion5;
  122.     /**
  123.      * @ORM\OneToMany(targetEntity=DocumentoCliente::class, mappedBy="cliente")
  124.      */
  125.     private $documentoClientes;
  126.     /**
  127.      * @ORM\OneToMany(targetEntity=DocumentoTributario::class, mappedBy="cliente")
  128.      */
  129.     private $documentoTributarios;
  130.     /**
  131.      * @ORM\ManyToOne(targetEntity=Holding::class, inversedBy="clientes")
  132.      */
  133.     private $holding;
  134.     /**
  135.      * @ORM\Column(type="smallint", nullable=true)
  136.      */
  137.     private $idContratoPaqueteria;
  138.     /**
  139.      * @ORM\Column(type="smallint", nullable=true)
  140.      */
  141.     private $idContratoLogisticaInversa;
  142.     /**
  143.      * @ORM\Column(type="smallint", nullable=true)
  144.      */
  145.     private $idContratoProductoControlado;
  146.     /**
  147.      * @ORM\Column(type="string", length=255, nullable=true)
  148.      */
  149.     private $emailNotificacionTemperatura1;
  150.     /**
  151.      * @ORM\Column(type="string", length=255, nullable=true)
  152.      */
  153.     private $emailNotificacionTemperatura2;
  154.     /**
  155.      * @ORM\Column(type="string", length=255, nullable=true)
  156.      */
  157.     private $emailNotificacionTemperatura3;
  158.     /**
  159.      * @ORM\Column(type="string", length=255, nullable=true)
  160.      */
  161.     private $emailNotificacionTemperatura4;
  162.     /**
  163.      * @ORM\Column(type="string", length=255, nullable=true)
  164.      */
  165.     private $emailNotificacionTemperatura5;
  166.     /**
  167.      * @ORM\ManyToMany(targetEntity=Vehiculo::class, mappedBy="clientes")
  168.      */
  169.     private $vehiculos;
  170.     /**
  171.      * @ORM\Column(type="boolean", nullable=true)
  172.      */
  173.     private $ocultarDocumentoTributario;
  174.     /**
  175.      * @ORM\ManyToOne(targetEntity=BodegaSectorCliente::class)
  176.      */
  177.     private $sector;
  178.     /**
  179.      * @ORM\Column(type="boolean", nullable=true)
  180.      */
  181.     private $puedeAgregarOrdenes;
  182.     /**
  183.      * @ORM\OneToMany(targetEntity=Caja::class, mappedBy="cliente")
  184.      */
  185.     private $cajas;
  186.     /**
  187.      * @ORM\Column(type="boolean", nullable=true)
  188.      */
  189.     private $enviarNotificacionDiaria;
  190.     /**
  191.      * @ORM\Column(type="text", nullable=true)
  192.      */
  193.     private $emailNotificacionDiaria;
  194.     /**
  195.      * @ORM\ManyToMany(targetEntity=Box::class, mappedBy="clientes")
  196.      */
  197.     private $boxes;
  198.     /**
  199.      * @ORM\Column(type="boolean", nullable=true)
  200.      */
  201.     private $consolidadoNotificacionDiaria;
  202.     /**
  203.      * @ORM\Column(type="boolean", nullable=true)
  204.      */
  205.     private $enviarNotificacionEnRuta;
  206.     /**
  207.      * @ORM\Column(type="text", nullable=true)
  208.      */
  209.     private $emailNotificacionEnRuta;
  210.     /**
  211.      * @ORM\Column(type="boolean", nullable=true)
  212.      */
  213.     private $enviarNotificacionEntregado;
  214.     /**
  215.      * @ORM\Column(type="text", nullable=true)
  216.      */
  217.     private $emailNotificacionEntregado;
  218.     /**
  219.      * @ORM\Column(type="boolean", nullable=true)
  220.      */
  221.     private $incluirPdfEnOrden;
  222.     /**
  223.      * @ORM\OneToMany(targetEntity=ProformaMandante::class, mappedBy="cliente")
  224.      */
  225.     private $proformaMandantes;
  226.     /**
  227.      * @ORM\Column(type="boolean", nullable=true)
  228.      */
  229.     private $informaCedible;
  230.     /**
  231.      * @ORM\Column(type="boolean", nullable=true)
  232.      */
  233.     private $mostrarMatrizTransito;
  234.     /**
  235.      * @ORM\ManyToOne(targetEntity=Direccion::class)
  236.      */
  237.     private $direccionOrigen;
  238.     /**
  239.      * @ORM\Column(type="boolean", nullable=true)
  240.      */
  241.     private $integracionTeva;
  242.     /**
  243.      * @ORM\Column(type="boolean", nullable=true)
  244.      */
  245.     private $integracionLoginsa;
  246.     /**
  247.      * @ORM\Column(type="string", length=255, nullable=true)
  248.      */
  249.     private $codigoMandante;
  250.     /**
  251.      * @ORM\Column(type="boolean", nullable=true)
  252.      */
  253.     private $otifOrdenIngresada;
  254.     /**
  255.      * @ORM\Column(type="boolean", nullable=true)
  256.      */
  257.     private $integracionLoginsaMultiple;
  258.     /**
  259.      * @ORM\Column(type="boolean", nullable=true)
  260.      */
  261.     private $integracionDhl;
  262.     /**
  263.      * @ORM\Column(type="boolean", nullable=true)
  264.      */
  265.     private $enviarNotificacionInformeMensual;
  266.     /**
  267.      * @ORM\Column(type="string", length=255, nullable=true)
  268.      */
  269.     private $emailNotificacionInformeMensual;
  270.     /**
  271.      * @ORM\Column(type="boolean", nullable=true)
  272.      */
  273.     private $integracionCaribean;
  274.     
  275.     /**
  276.      * @ORM\ManyToOne(targetEntity=Supermandante::class, inversedBy="clientes")
  277.      */
  278.     private $supermandante;
  279.     /**
  280.      * @ORM\Column(type="boolean", nullable=true)
  281.      */
  282.     private $tieneDelivery;
  283.     /**
  284.      * @ORM\Column(type="boolean", nullable=true)
  285.      */
  286.     private $integracionClinicalMarket;
  287.     /**
  288.      * @ORM\Column(type="boolean", nullable=true)
  289.      */
  290.     private $tienePrealerta;
  291.     /**
  292.      * @ORM\Column(type="string", length=255, nullable=true)
  293.      */
  294.     private $tipoPrealerta1;
  295.     /**
  296.      * @ORM\Column(type="string", length=255, nullable=true)
  297.      */
  298.     private $tipoPrealerta2;
  299.     /**
  300.      * @ORM\Column(type="string", length=255, nullable=true)
  301.      */
  302.     private $tipoPrealerta3;
  303.     /**
  304.      * @ORM\Column(type="string", length=255, nullable=true)
  305.      */
  306.     private $tipoPrealerta4;
  307.     /**
  308.      * @ORM\Column(type="string", length=255, nullable=true)
  309.      */
  310.     private $tipoPrealerta5;
  311.     /**
  312.      * @ORM\Column(type="boolean", nullable=true)
  313.      */
  314.     private $integracionKn;
  315.     /**
  316.      * @ORM\Column(type="boolean", nullable=true)
  317.      */
  318.     private $grifolsDedicado;
  319.     /**
  320.      * @ORM\Column(type="boolean", nullable=true)
  321.      */
  322.     private $retiroProductosCirugia false;
  323.     /**
  324.      * @ORM\Column(type="boolean", nullable=true)
  325.      */
  326.     private $integracionSiemens;
  327.     /**
  328.      * @ORM\Column(type="boolean", nullable=true)
  329.      */
  330.     private $bloquearMatrizTransito;
  331.     /**
  332.      * @ORM\ManyToOne(targetEntity=User::class)
  333.      */
  334.     private $usuarioSolicitudRetiro;
  335.     /**
  336.      * @ORM\Column(type="boolean", nullable=true)
  337.      */
  338.     private $noIncluirEnComercial;
  339.         
  340. public function isRetiroProductosCirugia(): ?bool
  341. {
  342.     return $this->retiroProductosCirugia;
  343. }
  344. public function setRetiroProductosCirugia(?bool $retiroProductosCirugia): self
  345. {
  346.     $this->retiroProductosCirugia $retiroProductosCirugia;
  347.     return $this;
  348. }
  349. public function isTienePrealerta(): ?bool
  350. {
  351.     return $this->tienePrealerta;
  352. }
  353. public function setTienePrealerta(?bool $tienePrealerta): self
  354. {
  355.     $this->tienePrealerta $tienePrealerta;
  356.     return $this;
  357. }
  358. public function getTipoPrealerta1(): ?string { return $this->tipoPrealerta1; }
  359. public function setTipoPrealerta1(?string $tipoPrealerta1): self $this->tipoPrealerta1 $tipoPrealerta1; return $this; }
  360. public function getTipoPrealerta2(): ?string { return $this->tipoPrealerta2; }
  361. public function setTipoPrealerta2(?string $tipoPrealerta2): self $this->tipoPrealerta2 $tipoPrealerta2; return $this; }
  362. public function getTipoPrealerta3(): ?string { return $this->tipoPrealerta3; }
  363. public function setTipoPrealerta3(?string $tipoPrealerta3): self $this->tipoPrealerta3 $tipoPrealerta3; return $this; }
  364. public function getTipoPrealerta4(): ?string { return $this->tipoPrealerta4; }
  365. public function setTipoPrealerta4(?string $tipoPrealerta4): self $this->tipoPrealerta4 $tipoPrealerta4; return $this; }
  366. public function getTipoPrealerta5(): ?string { return $this->tipoPrealerta5; }
  367. public function setTipoPrealerta5(?string $tipoPrealerta5): self $this->tipoPrealerta5 $tipoPrealerta5; return $this; }
  368.     public function getDocumentoNameOriginal()
  369.     {
  370.         $docName $this->getDocumentoName();
  371.         if($docName)
  372.         {
  373.             $posName strrpos($docName'-');
  374.             $posExt strrpos($docName'.');
  375.             if($posName && $posExt)
  376.             {
  377.                 $name substr($docName0$posName);
  378.                 $ext substr($docName$posExt);
  379.                 return $name.$ext;
  380.             }
  381.         }
  382.         return $docName;
  383.     }
  384.     
  385.     public function getDocumentoNameEtiquetaOriginal()
  386.     {
  387.         $docName $this->getDocumentoNameEtiqueta();
  388.         if($docName)
  389.         {
  390.             $posName strrpos($docName'-');
  391.             $posExt strrpos($docName'.');
  392.             if($posName && $posExt)
  393.             {
  394.                 $name substr($docName0$posName);
  395.                 $ext substr($docName$posExt);
  396.                 return $name.$ext;
  397.             }
  398.         }
  399.         return $docName;
  400.     }
  401.     /**
  402.      * If manually uploading a file (i.e. not using Symfony Form) ensure an instance
  403.      * of 'UploadedFile' is injected into this setter to trigger the  update. If this
  404.      * bundle's configuration parameter 'inject_on_load' is set to 'true' this setter
  405.      * must be able to accept an instance of 'File' as the bundle will inject one here
  406.      * during Doctrine hydration.
  407.      *
  408.      * @param File|\Symfony\Component\HttpFoundation\File\UploadedFile $documento
  409.      *
  410.      * @return Product
  411.      */
  412.     public function setDocumentoFile(?File $documento null): void
  413.     {
  414.         $this->documentoFile $documento;
  415.         if ($documento) {
  416.             // It is required that at least one field changes if you are using doctrine
  417.             // otherwise the event listeners won't be called and the file is lost
  418.             $this->fechaActualizacion = new \DateTimeImmutable(null);
  419.         }
  420.     }
  421.     /**
  422.      * @return File|null
  423.      */
  424.     public function getDocumentoFile(): ?File
  425.     {
  426.         return $this->documentoFile;
  427.     }
  428.     public function getDocumentoName(): ?string
  429.     {
  430.         return $this->documentoName;
  431.     }
  432.     public function setDocumentoName(?string $documentoName ""): self
  433.     {
  434.         $this->documentoName $documentoName;
  435.         return $this;
  436.     }
  437.     /**
  438.      * If manually uploading a file (i.e. not using Symfony Form) ensure an instance
  439.      * of 'UploadedFile' is injected into this setter to trigger the  update. If this
  440.      * bundle's configuration parameter 'inject_on_load' is set to 'true' this setter
  441.      * must be able to accept an instance of 'File' as the bundle will inject one here
  442.      * during Doctrine hydration.
  443.      *
  444.      * @param File|\Symfony\Component\HttpFoundation\File\UploadedFile $documento
  445.      *
  446.      * @return Product
  447.      */
  448.     public function setDocumentoFileEtiqueta(?File $documento null): void
  449.     {
  450.         $this->documentoFileEtiqueta $documento;
  451.         if ($documento) {
  452.             // It is required that at least one field changes if you are using doctrine
  453.             // otherwise the event listeners won't be called and the file is lost
  454.             $this->fechaActualizacionEtiqueta = new \DateTimeImmutable(null);
  455.         }
  456.     }
  457.     /**
  458.      * @return File|null
  459.      */
  460.     public function getDocumentoFileEtiqueta(): ?File
  461.     {
  462.         return $this->documentoFileEtiqueta;
  463.     }
  464.     public function getDocumentoNameEtiqueta(): ?string
  465.     {
  466.         return $this->documentoNameEtiqueta;
  467.     }
  468.     public function setDocumentoNameEtiqueta(?string $documentoNameEtiqueta ""): self
  469.     {
  470.         $this->documentoNameEtiqueta $documentoNameEtiqueta;
  471.         return $this;
  472.     }
  473.     public function __toString() 
  474.     {
  475.         return $this->nombre;
  476.     }
  477.     public function __construct()
  478.     {
  479.         $this->direccions = new ArrayCollection();
  480.         $this->ordens = new ArrayCollection();
  481.         $this->usuarios = new ArrayCollection();
  482.         $this->documentoClientes = new ArrayCollection();
  483.         $this->documentoTributarios = new ArrayCollection();
  484.         $this->vehiculos = new ArrayCollection();
  485.         $this->cajas = new ArrayCollection();
  486.         $this->boxes = new ArrayCollection();
  487.         $this->proformaMandantes = new ArrayCollection();
  488.        
  489.     }
  490.     /**
  491.      * @return Collection|User[]
  492.      */
  493.     public function getUsuarios(): Collection
  494.     {
  495.         return $this->usuarios;
  496.     }
  497.     public function addUsuario(User $usuario): self
  498.     {
  499.         if (!$this->usuarios->contains($usuario)) {
  500.             $this->usuarios[] = $usuario;
  501.             $usuario->addCliente($this); // Mantener sincronizada la relaciè´¸n inversa
  502.         }
  503.         return $this;
  504.     }
  505.     public function removeUsuario(User $usuario): self
  506.     {
  507.         if ($this->usuarios->removeElement($usuario)) {
  508.             $usuario->removeCliente($this); // Mantener sincronizada la relaciè´¸n inversa
  509.         }
  510.         return $this;
  511.     }
  512.     public function getId(): ?int
  513.     {
  514.         return $this->id;
  515.     }
  516.     public function getNombre(): ?string
  517.     {
  518.         return $this->nombre;
  519.     }
  520.     public function setNombre(string $nombre): self
  521.     {
  522.         $this->nombre $nombre;
  523.         return $this;
  524.     }
  525.     public function getRazonSocial(): ?string
  526.     {
  527.         return $this->razonSocial;
  528.     }
  529.     public function setRazonSocial(string $razonSocial): self
  530.     {
  531.         $this->razonSocial $razonSocial;
  532.         return $this;
  533.     }
  534.     public function getNombreContacto(): ?string
  535.     {
  536.         return $this->nombreContacto;
  537.     }
  538.     public function setNombreContacto(?string $nombreContacto): self
  539.     {
  540.         $this->nombreContacto $nombreContacto;
  541.         return $this;
  542.     }
  543.     public function getTelefonoContacto(): ?string
  544.     {
  545.         return $this->telefonoContacto;
  546.     }
  547.     public function setTelefonoContacto(?string $telefonoContacto): self
  548.     {
  549.         $this->telefonoContacto $telefonoContacto;
  550.         return $this;
  551.     }
  552.     public function getEmailContacto(): ?string
  553.     {
  554.         return $this->emailContacto;
  555.     }
  556.     public function setEmailContacto(?string $emailContacto): self
  557.     {
  558.         $this->emailContacto $emailContacto;
  559.         return $this;
  560.     }
  561.     public function getEmailNotificacion(): ?string
  562.     {
  563.         return $this->emailNotificacion;
  564.     }
  565.     public function setEmailNotificacion(?string $emailNotificacion): self
  566.     {
  567.         $this->emailNotificacion $emailNotificacion;
  568.         return $this;
  569.     }
  570.     public function getActivo(): ?bool
  571.     {
  572.         return $this->activo;
  573.     }
  574.     public function setActivo(bool $activo): self
  575.     {
  576.         $this->activo $activo;
  577.         return $this;
  578.     }
  579.     public function getRut(): ?string
  580.     {
  581.         return $this->rut;
  582.     }
  583.     public function setRut(?string $rut): self
  584.     {
  585.         $this->rut $rut;
  586.         return $this;
  587.     }
  588.     
  589.     /**
  590.      * @return Collection|Direccion[]
  591.      */
  592.     public function getDireccions(): Collection
  593.     {
  594.         return $this->direccions;
  595.     }
  596.     public function addDireccion(Direccion $direccion): self
  597.     {
  598.         if (!$this->direccions->contains($direccion)) {
  599.             $this->direccions[] = $direccion;
  600.             $direccion->setCliente($this);
  601.         }
  602.         return $this;
  603.     }
  604.     public function removeDireccion(Direccion $direccion): self
  605.     {
  606.         if ($this->direccions->contains($direccion)) {
  607.             $this->direccions->removeElement($direccion);
  608.             // set the owning side to null (unless already changed)
  609.             if ($direccion->getCliente() === $this) {
  610.                 $direccion->setCliente(null);
  611.             }
  612.         }
  613.         return $this;
  614.     }
  615.     /**
  616.      * @return Collection|Orden[]
  617.      */
  618.     public function getOrdens(): Collection
  619.     {
  620.         return $this->ordens;
  621.     }
  622.     public function addOrden(Orden $orden): self
  623.     {
  624.         if (!$this->ordens->contains($orden)) {
  625.             $this->ordens[] = $orden;
  626.             $orden->setCliente($this);
  627.         }
  628.         return $this;
  629.     }
  630.     public function removeOrden(Orden $orden): self
  631.     {
  632.         if ($this->ordens->contains($orden)) {
  633.             $this->ordens->removeElement($orden);
  634.             // set the owning side to null (unless already changed)
  635.             if ($orden->getCliente() === $this) {
  636.                 $orden->setCliente(null);
  637.             }
  638.         }
  639.         return $this;
  640.     }
  641.     public function getEmailNotificacion2(): ?string
  642.     {
  643.         return $this->emailNotificacion2;
  644.     }
  645.     public function setEmailNotificacion2(?string $emailNotificacion2): self
  646.     {
  647.         $this->emailNotificacion2 $emailNotificacion2;
  648.         return $this;
  649.     }
  650.     public function getEmailNotificacion3(): ?string
  651.     {
  652.         return $this->emailNotificacion3;
  653.     }
  654.     public function setEmailNotificacion3(?string $emailNotificacion3): self
  655.     {
  656.         $this->emailNotificacion3 $emailNotificacion3;
  657.         return $this;
  658.     }
  659.     public function getTelefonoContactoAnexo(): ?int
  660.     {
  661.         return $this->telefonoContactoAnexo;
  662.     }
  663.     public function setTelefonoContactoAnexo(?int $telefonoContactoAnexo): self
  664.     {
  665.         $this->telefonoContactoAnexo $telefonoContactoAnexo;
  666.         return $this;
  667.     }
  668.     public function getEmailNotificacion4(): ?string
  669.     {
  670.         return $this->emailNotificacion4;
  671.     }
  672.     public function setEmailNotificacion4(?string $emailNotificacion4): self
  673.     {
  674.         $this->emailNotificacion4 $emailNotificacion4;
  675.         return $this;
  676.     }
  677.     public function getEmailNotificacion5(): ?string
  678.     {
  679.         return $this->emailNotificacion5;
  680.     }
  681.     public function setEmailNotificacion5(?string $emailNotificacion5): self
  682.     {
  683.         $this->emailNotificacion5 $emailNotificacion5;
  684.         return $this;
  685.     }
  686.     /**
  687.      * @return Collection|DocumentoCliente[]
  688.      */
  689.     public function getDocumentoClientes(): Collection
  690.     {
  691.         return $this->documentoClientes;
  692.     }
  693.     public function addDocumentoCliente(DocumentoCliente $documentoCliente): self
  694.     {
  695.         if (!$this->documentoClientes->contains($documentoCliente)) {
  696.             $this->documentoClientes[] = $documentoCliente;
  697.             $documentoCliente->setCliente($this);
  698.         }
  699.         return $this;
  700.     }
  701.     public function removeDocumentoCliente(DocumentoCliente $documentoCliente): self
  702.     {
  703.         if ($this->documentoClientes->contains($documentoCliente)) {
  704.             $this->documentoClientes->removeElement($documentoCliente);
  705.             // set the owning side to null (unless already changed)
  706.             if ($documentoCliente->getCliente() === $this) {
  707.                 $documentoCliente->setCliente(null);
  708.             }
  709.         }
  710.         return $this;
  711.     }
  712.     /**
  713.      * @return Collection|DocumentoTributario[]
  714.      */
  715.     public function getDocumentoTributarios(): Collection
  716.     {
  717.         return $this->documentoTributarios;
  718.     }
  719.     public function addDocumentoTributario(DocumentoTributario $documentoTributario): self
  720.     {
  721.         if (!$this->documentoTributarios->contains($documentoTributario)) {
  722.             $this->documentoTributarios[] = $documentoTributario;
  723.             $documentoTributario->setCliente($this);
  724.         }
  725.         return $this;
  726.     }
  727.     public function removeDocumentoTributario(DocumentoTributario $documentoTributario): self
  728.     {
  729.         if ($this->documentoTributarios->removeElement($documentoTributario)) {
  730.             // set the owning side to null (unless already changed)
  731.             if ($documentoTributario->getCliente() === $this) {
  732.                 $documentoTributario->setCliente(null);
  733.             }
  734.         }
  735.         return $this;
  736.     }
  737.     public function getHolding(): ?Holding
  738.     {
  739.         return $this->holding;
  740.     }
  741.     public function setHolding(?Holding $holding): self
  742.     {
  743.         $this->holding $holding;
  744.         return $this;
  745.     }
  746.     public function getIdContratoPaqueteria(): ?int
  747.     {
  748.         return $this->idContratoPaqueteria;
  749.     }
  750.     public function setIdContratoPaqueteria(?int $idContratoPaqueteria): self
  751.     {
  752.         $this->idContratoPaqueteria $idContratoPaqueteria;
  753.         return $this;
  754.     }
  755.     public function getIdContratoLogisticaInversa(): ?int
  756.     {
  757.         return $this->idContratoLogisticaInversa;
  758.     }
  759.     public function setIdContratoLogisticaInversa(?int $idContratoLogisticaInversa): self
  760.     {
  761.         $this->idContratoLogisticaInversa $idContratoLogisticaInversa;
  762.         return $this;
  763.     }
  764.     public function getIdContratoProductoControlado(): ?int
  765.     {
  766.         return $this->idContratoProductoControlado;
  767.     }
  768.     public function setIdContratoProductoControlado(?int $idContratoProductoControlado): self
  769.     {
  770.         $this->idContratoProductoControlado $idContratoProductoControlado;
  771.         return $this;
  772.     }
  773.     public function getEmailNotificacionTemperatura1(): ?string
  774.     {
  775.         return $this->emailNotificacionTemperatura1;
  776.     }
  777.     public function setEmailNotificacionTemperatura1(string $emailNotificacionTemperatura1): self
  778.     {
  779.         $this->emailNotificacionTemperatura1 $emailNotificacionTemperatura1;
  780.         return $this;
  781.     }
  782.     public function getEmailNotificacionTemperatura2(): ?string
  783.     {
  784.         return $this->emailNotificacionTemperatura2;
  785.     }
  786.     public function setEmailNotificacionTemperatura2(string $emailNotificacionTemperatura2): self
  787.     {
  788.         $this->emailNotificacionTemperatura2 $emailNotificacionTemperatura2;
  789.         return $this;
  790.     }
  791.     public function getEmailNotificacionTemperatura3(): ?string
  792.     {
  793.         return $this->emailNotificacionTemperatura3;
  794.     }
  795.     public function setEmailNotificacionTemperatura3(string $emailNotificacionTemperatura3): self
  796.     {
  797.         $this->emailNotificacionTemperatura3 $emailNotificacionTemperatura3;
  798.         return $this;
  799.     }
  800.     public function getEmailNotificacionTemperatura4(): ?string
  801.     {
  802.         return $this->emailNotificacionTemperatura4;
  803.     }
  804.     public function setEmailNotificacionTemperatura4(string $emailNotificacionTemperatura4): self
  805.     {
  806.         $this->emailNotificacionTemperatura4 $emailNotificacionTemperatura4;
  807.         return $this;
  808.     }
  809.     public function getEmailNotificacionTemperatura5(): ?string
  810.     {
  811.         return $this->emailNotificacionTemperatura5;
  812.     }
  813.     public function setEmailNotificacionTemperatura5(string $emailNotificacionTemperatura5): self
  814.     {
  815.         $this->emailNotificacionTemperatura5 $emailNotificacionTemperatura5;
  816.         return $this;
  817.     }
  818.     /**
  819.      * @return Collection|Vehiculo[]
  820.      */
  821.     public function getVehiculos(): Collection
  822.     {
  823.         return $this->vehiculos;
  824.     }
  825.     public function addVehiculo(Vehiculo $vehiculo): self
  826.     {
  827.         if (!$this->vehiculos->contains($vehiculo)) {
  828.             $this->vehiculos[] = $vehiculo;
  829.             $vehiculo->addCliente($this);
  830.         }
  831.         return $this;
  832.     }
  833.     public function removeVehiculo(Vehiculo $vehiculo): self
  834.     {
  835.         if ($this->vehiculos->removeElement($vehiculo)) {
  836.             $vehiculo->removeCliente($this);
  837.         }
  838.         return $this;
  839.     }
  840.     public function getOcultarDocumentoTributario(): ?bool
  841.     {
  842.         return $this->ocultarDocumentoTributario;
  843.     }
  844.     public function setOcultarDocumentoTributario(?bool $ocultarDocumentoTributario): self
  845.     {
  846.         $this->ocultarDocumentoTributario $ocultarDocumentoTributario;
  847.         return $this;
  848.     }
  849.     public function getSector(): ?BodegaSectorCliente
  850.     {
  851.         return $this->sector;
  852.     }
  853.     public function setSector(?BodegaSectorCliente $sector): self
  854.     {
  855.         $this->sector $sector;
  856.         return $this;
  857.     }
  858.     public function getPuedeAgregarOrdenes(): ?bool
  859.     {
  860.         return $this->puedeAgregarOrdenes;
  861.     }
  862.     public function setPuedeAgregarOrdenes(?bool $puedeAgregarOrdenes): self
  863.     {
  864.         $this->puedeAgregarOrdenes $puedeAgregarOrdenes;
  865.         return $this;
  866.     }
  867.     /**
  868.      * @return Collection<int, Caja>
  869.      */
  870.     public function getCajas(): Collection
  871.     {
  872.         return $this->cajas;
  873.     }
  874.     public function addCaja(Caja $caja): self
  875.     {
  876.         if (!$this->cajas->contains($caja)) {
  877.             $this->cajas[] = $caja;
  878.             $caja->setCliente($this);
  879.         }
  880.         return $this;
  881.     }
  882.     public function removeCaja(Caja $caja): self
  883.     {
  884.         if ($this->cajas->removeElement($caja)) {
  885.             // set the owning side to null (unless already changed)
  886.             if ($caja->getCliente() === $this) {
  887.                 $caja->setCliente(null);
  888.             }
  889.         }
  890.         return $this;
  891.     }
  892.     public function getEnviarNotificacionDiaria(): ?bool
  893.     {
  894.         return $this->enviarNotificacionDiaria;
  895.     }
  896.     public function setEnviarNotificacionDiaria(?bool $enviarNotificacionDiaria): self
  897.     {
  898.         $this->enviarNotificacionDiaria $enviarNotificacionDiaria;
  899.         return $this;
  900.     }
  901.     public function getEmailNotificacionDiaria(): ?string
  902.     {
  903.         return $this->emailNotificacionDiaria;
  904.     }
  905.     public function setEmailNotificacionDiaria(?string $emailNotificacionDiaria): self
  906.     {
  907.         $this->emailNotificacionDiaria $emailNotificacionDiaria;
  908.         return $this;
  909.     }
  910.     /**
  911.      * @return Collection<int, Box>
  912.      */
  913.     public function getBoxes(): Collection
  914.     {
  915.         return $this->boxes;
  916.     }
  917.     public function addBox(Box $box): self
  918.     {
  919.         if (!$this->boxes->contains($box)) {
  920.             $this->boxes[] = $box;
  921.             $box->addCliente($this);
  922.         }
  923.         return $this;
  924.     }
  925.     public function removeBox(Box $box): self
  926.     {
  927.         if ($this->boxes->removeElement($box)) {
  928.             $box->removeCliente($this);
  929.         }
  930.         return $this;
  931.     }
  932.     public function getConsolidadoNotificacionDiaria(): ?bool
  933.     {
  934.         return $this->consolidadoNotificacionDiaria;
  935.     }
  936.     public function setConsolidadoNotificacionDiaria(?bool $consolidadoNotificacionDiaria): self
  937.     {
  938.         $this->consolidadoNotificacionDiaria $consolidadoNotificacionDiaria;
  939.         return $this;
  940.     }
  941.     public function getEnviarNotificacionEnRuta(): ?bool
  942.     {
  943.         return $this->enviarNotificacionEnRuta;
  944.     }
  945.     public function setEnviarNotificacionEnRuta(?bool $enviarNotificacionEnRuta): self
  946.     {
  947.         $this->enviarNotificacionEnRuta $enviarNotificacionEnRuta;
  948.         return $this;
  949.     }
  950.     public function getEmailNotificacionEnRuta(): ?string
  951.     {
  952.         return $this->emailNotificacionEnRuta;
  953.     }
  954.     public function setEmailNotificacionEnRuta(?string $emailNotificacionEnRuta): self
  955.     {
  956.         $this->emailNotificacionEnRuta $emailNotificacionEnRuta;
  957.         return $this;
  958.     }
  959.     public function getEnviarNotificacionEntregado(): ?bool
  960.     {
  961.         return $this->enviarNotificacionEntregado;
  962.     }
  963.     public function setEnviarNotificacionEntregado(?bool $enviarNotificacionEntregado): self
  964.     {
  965.         $this->enviarNotificacionEntregado $enviarNotificacionEntregado;
  966.         return $this;
  967.     }
  968.     public function getEmailNotificacionEntregado(): ?string
  969.     {
  970.         return $this->emailNotificacionEntregado;
  971.     }
  972.     public function setEmailNotificacionEntregado(?string $emailNotificacionEntregado): self
  973.     {
  974.         $this->emailNotificacionEntregado $emailNotificacionEntregado;
  975.         return $this;
  976.     }
  977.     public function getIncluirPdfEnOrden(): ?bool
  978.     {
  979.         return $this->incluirPdfEnOrden;
  980.     }
  981.     public function setIncluirPdfEnOrden(?bool $incluirPdfEnOrden): self
  982.     {
  983.         $this->incluirPdfEnOrden $incluirPdfEnOrden;
  984.         return $this;
  985.     }
  986.     /**
  987.      * @return Collection<int, ProformaMandante>
  988.      */
  989.     public function getProformaMandantes(): Collection
  990.     {
  991.         return $this->proformaMandantes;
  992.     }
  993.     public function addProformaMandante(ProformaMandante $proformaMandante): self
  994.     {
  995.         if (!$this->proformaMandantes->contains($proformaMandante)) {
  996.             $this->proformaMandantes[] = $proformaMandante;
  997.             $proformaMandante->setCliente($this);
  998.         }
  999.         return $this;
  1000.     }
  1001.     public function removeProformaMandante(ProformaMandante $proformaMandante): self
  1002.     {
  1003.         if ($this->proformaMandantes->removeElement($proformaMandante)) {
  1004.             // set the owning side to null (unless already changed)
  1005.             if ($proformaMandante->getCliente() === $this) {
  1006.                 $proformaMandante->setCliente(null);
  1007.             }
  1008.         }
  1009.         return $this;
  1010.     }
  1011.     public function getInformaCedible(): ?bool
  1012.     {
  1013.         return $this->informaCedible;
  1014.     }
  1015.     public function setInformaCedible(?bool $informaCedible): self
  1016.     {
  1017.         $this->informaCedible $informaCedible;
  1018.         return $this;
  1019.     }
  1020.     public function getMostrarMatrizTransito(): ?bool
  1021.     {
  1022.         return $this->mostrarMatrizTransito;
  1023.     }
  1024.     public function setMostrarMatrizTransito(?bool $mostrarMatrizTransito): self
  1025.     {
  1026.         $this->mostrarMatrizTransito $mostrarMatrizTransito;
  1027.         return $this;
  1028.     }
  1029.     public function getDireccionOrigen(): ?Direccion
  1030.     {
  1031.         return $this->direccionOrigen;
  1032.     }
  1033.     public function setDireccionOrigen(?Direccion $direccionOrigen): self
  1034.     {
  1035.         $this->direccionOrigen $direccionOrigen;
  1036.         return $this;
  1037.     }
  1038.     public function isIntegracionTeva(): ?bool
  1039.     {
  1040.         return $this->integracionTeva;
  1041.     }
  1042.     public function setIntegracionTeva(?bool $integracionTeva): self
  1043.     {
  1044.         $this->integracionTeva $integracionTeva;
  1045.         return $this;
  1046.     }
  1047.     public function isIntegracionLoginsa(): ?bool
  1048.     {
  1049.         return $this->integracionLoginsa;
  1050.     }
  1051.     public function setIntegracionLoginsa(?bool $integracionLoginsa): self
  1052.     {
  1053.         $this->integracionLoginsa $integracionLoginsa;
  1054.         return $this;
  1055.     }
  1056.     public function getCodigoMandante(): ?string
  1057.     {
  1058.         return $this->codigoMandante;
  1059.     }
  1060.     public function setCodigoMandante(?string $codigoMandante): self
  1061.     {
  1062.         $this->codigoMandante $codigoMandante;
  1063.         return $this;
  1064.     }
  1065.     public function isOtifOrdenIngresada(): ?bool
  1066.     {
  1067.         return $this->otifOrdenIngresada;
  1068.     }
  1069.     public function setOtifOrdenIngresada(?bool $otifOrdenIngresada): self
  1070.     {
  1071.         $this->otifOrdenIngresada $otifOrdenIngresada;
  1072.         return $this;
  1073.     }
  1074.     public function isIntegracionLoginsaMultiple(): ?bool
  1075.     {
  1076.         return $this->integracionLoginsaMultiple;
  1077.     }
  1078.     public function setIntegracionLoginsaMultiple(?bool $integracionLoginsaMultiple): self
  1079.     {
  1080.         $this->integracionLoginsaMultiple $integracionLoginsaMultiple;
  1081.         return $this;
  1082.     }
  1083.     public function isIntegracionDhl(): ?bool
  1084.     {
  1085.         return $this->integracionDhl;
  1086.     }
  1087.     public function setIntegracionDhl(?bool $integracionDhl): self
  1088.     {
  1089.         $this->integracionDhl $integracionDhl;
  1090.         return $this;
  1091.     }
  1092.     public function isEnviarNotificacionInformeMensual(): ?bool
  1093.     {
  1094.         return $this->enviarNotificacionInformeMensual;
  1095.     }
  1096.     public function setEnviarNotificacionInformeMensual(?bool $enviarNotificacionInformeMensual): self
  1097.     {
  1098.         $this->enviarNotificacionInformeMensual $enviarNotificacionInformeMensual;
  1099.         return $this;
  1100.     }
  1101.     public function getEmailNotificacionInformeMensual(): ?string
  1102.     {
  1103.         return $this->emailNotificacionInformeMensual;
  1104.     }
  1105.     public function setEmailNotificacionInformeMensual(?string $emailNotificacionInformeMensual): self
  1106.     {
  1107.         $this->emailNotificacionInformeMensual $emailNotificacionInformeMensual;
  1108.         return $this;
  1109.     }
  1110.     public function isIntegracionCaribean(): ?bool
  1111.     {
  1112.         return $this->integracionCaribean;
  1113.     }
  1114.     public function setIntegracionCaribean(?bool $integracionCaribean): self
  1115.     {
  1116.         $this->integracionCaribean $integracionCaribean;
  1117.         return $this;
  1118.     }
  1119.     public function getSupermandante(): ?Supermandante
  1120.     {
  1121.         return $this->supermandante;
  1122.     }
  1123.     public function setSupermandante(?Supermandante $supermandante): self
  1124.     {
  1125.         $this->supermandante $supermandante;
  1126.         return $this;
  1127.     }
  1128.     public function isTieneDelivery(): ?bool
  1129.     {
  1130.         return $this->tieneDelivery;
  1131.     }
  1132.     public function setTieneDelivery(?bool $tieneDelivery): self
  1133.     {
  1134.         $this->tieneDelivery $tieneDelivery;
  1135.         return $this;
  1136.     }
  1137.     public function isIntegracionClinicalMarket(): ?bool
  1138.     {
  1139.         return $this->integracionClinicalMarket;
  1140.     }
  1141.     public function setIntegracionClinicalMarket(?bool $integracionClinicalMarket): self
  1142.     {
  1143.         $this->integracionClinicalMarket $integracionClinicalMarket;
  1144.         return $this;
  1145.     }
  1146.     public function isIntegracionKn(): ?bool
  1147.     {
  1148.         return $this->integracionKn;
  1149.     }
  1150.     public function setIntegracionKn(?bool $integracionKn): self
  1151.     {
  1152.         $this->integracionKn $integracionKn;
  1153.         return $this;
  1154.     }
  1155.     public function isGrifolsDedicado(): ?bool
  1156.     {
  1157.         return $this->grifolsDedicado;
  1158.     }
  1159.     public function setGrifolsDedicado(?bool $grifolsDedicado): self
  1160.     {
  1161.         $this->grifolsDedicado $grifolsDedicado;
  1162.         return $this;
  1163.     }
  1164.     public function isIntegracionSiemens(): ?bool
  1165.     {
  1166.         return $this->integracionSiemens;
  1167.     }
  1168.     public function setIntegracionSiemens(?bool $integracionSiemens): self
  1169.     {
  1170.         $this->integracionSiemens $integracionSiemens;
  1171.         return $this;
  1172.     }
  1173.     public function isBloquearMatrizTransito(): ?bool
  1174.     {
  1175.         return $this->bloquearMatrizTransito;
  1176.     }
  1177.     public function setBloquearMatrizTransito(?bool $bloquearMatrizTransito): self
  1178.     {
  1179.         $this->bloquearMatrizTransito $bloquearMatrizTransito;
  1180.         return $this;
  1181.     }
  1182.     public function getUsuarioSolicitudRetiro(): ?User
  1183.     {
  1184.         return $this->usuarioSolicitudRetiro;
  1185.     }
  1186.     public function setUsuarioSolicitudRetiro(?User $usuarioSolicitudRetiro): self
  1187.     {
  1188.         $this->usuarioSolicitudRetiro $usuarioSolicitudRetiro;
  1189.         return $this;
  1190.     }
  1191.     public function isNoIncluirEnComercial(): ?bool
  1192.     {
  1193.         return $this->noIncluirEnComercial;
  1194.     }
  1195.     public function setNoIncluirEnComercial(?bool $noIncluirEnComercial): self
  1196.     {
  1197.         $this->noIncluirEnComercial $noIncluirEnComercial;
  1198.         return $this;
  1199.     }
  1200. }