<?php
namespace App\Entity\Clients;
use App\Entity\Adresses\Adresse;
use App\Entity\Articles\Compta;
use App\Entity\Articles\PrixPromo;
use App\Entity\GestionComerciale\Acompte;
use App\Entity\GestionComerciale\Commande;
use App\Entity\GestionComerciale\Devis;
use App\Entity\GestionComerciale\LCR;
use App\Entity\GestionComerciale\ModeReglement;
use App\Entity\GestionComerciale\MouvementCaisse;
use App\Entity\Litiges\Litige;
use App\Entity\Localisation\SecteurGeographique;
use App\Entity\Localisation\Zone;
use App\Entity\MarketPlace\CompteMarketPlace;
use App\Entity\Remises\CategorieRemiseClientClient;
use App\Entity\Traductions\Langue;
use App\Entity\Transporteurs\Transporteur;
use App\Entity\Utilisateur\Civilite;
use App\Entity\Notes\Note;
use App\Entity\GestionComerciale\DelaiPaiement;
use App\Entity\Utilisateur\Contact;
use App\Entity\Utilisateur\Utilisateur;
use App\Entity\Vehicules\VehiculeClient;
use DateTime;
use Doctrine\Common\Collections\ArrayCollection;
use Doctrine\Common\Collections\Collection;
use Doctrine\ORM\Mapping as ORM;
use Gedmo\Mapping\Annotation as Gedmo;
use Symfony\Component\Validator\Constraints as Assert;
use App\Annotations\SecuredEntity;
/**
* Client
*
* @ORM\Table("client__client")
* @ORM\Entity(repositoryClass="App\Repository\Clients\ClientRepository")
* @Gedmo\SoftDeleteable(fieldName="dateSuppression",timeAware=false)
* @SecuredEntity(name="Client", group="CLIENTS")
*/
class Client
{
/**
* @ORM\Column(name="id", type="integer")
* @ORM\Id
* @ORM\GeneratedValue(strategy="AUTO")
*/
private $id;
/**
* @ORM\OneToMany(targetEntity="App\Entity\Articles\PrixPromo", mappedBy="client")
*/
private $prixPromo;
/**
* @ORM\ManyToOne(targetEntity="App\Entity\Clients\Client")
* @ORM\JoinColumn(nullable=true)
*/
private $parent;
/**
* @ORM\Column(name="groupe", type="boolean", nullable=true)
*/
private $groupe;
/**
* @ORM\Column(name="jours_livraison", type="string", length=255, nullable=true)
*/
private $joursLivraison;
/**
* @ORM\Column(name="tva", type="boolean", nullable=true)
*/
private $tva;
/**
* @ORM\OneToMany(targetEntity="App\Entity\Litiges\Litige", mappedBy="client")
*/
private $litiges;
/**
* @ORM\OneToMany(targetEntity="App\Entity\Notes\Note", mappedBy="client")
*/
private $notes;
/**
* @ORM\Column(name="id_import", type="string",length=255, nullable=true)
*/
private $idImport;
/**
* @ORM\Column(name="id_import_2", type="string",length=255, nullable=true)
*/
private $idImport2;
/**
* @ORM\Column(name="id_prestashop", type="string",length=255, nullable=true)
*/
private $id_prestashop;
/**
* @ORM\OneToMany(targetEntity="App\Entity\Remises\CategorieRemiseClientClient", mappedBy="client")
*/
private $categorieRemiseClientClient;
/**
* @ORM\OneToMany(targetEntity="App\Entity\Clients\ClientCategorie", mappedBy="client")
*/
private $clientCategorie;
/**
* @ORM\Column(name="donnees_import", type="text", nullable=true)
*/
private $donnesImport;
/**
* @ORM\Column(name="logo", type="string", length=255, nullable=true)
*/
private $logo;
/**
* @ORM\OneToMany(targetEntity="App\Entity\GestionComerciale\Commande", mappedBy="client")
*/
private $commandes;
/**
* @ORM\OneToMany(targetEntity="App\Entity\Adresses\Adresse", mappedBy="client", cascade={"persist"})
*/
private $adresses;
/**
* @ORM\OneToMany(targetEntity="App\Entity\Utilisateur\Contact", mappedBy="client")
*/
private $contacts;
/**
* @ORM\ManyToOne(targetEntity="App\Entity\Traductions\Langue")
*/
private $langue;
/**
* @ORM\ManyToOne(targetEntity="App\Entity\Utilisateur\Civilite")
*/
private $civiliteObj;
/**
* @ORM\ManyToOne(targetEntity="App\Entity\Transporteurs\Transporteur")
*/
private $transporteur;
/**
* @ORM\ManyToOne(targetEntity="App\Entity\Localisation\Zone")
*/
private $pays;
/**
* @ORM\ManyToOne(targetEntity="App\Entity\Localisation\Zone")
*/
private $ville;
/**
* @ORM\ManyToOne(targetEntity="App\Entity\Localisation\Zone")
*/
private $codePostal;
/**
* @ORM\OneToMany(targetEntity="App\Entity\Vehicules\VehiculeClient", mappedBy="client")
* @ORM\OrderBy({"id" = "DESC"})
*/
private $vehiculesClient;
/**
* @ORM\ManyToOne(targetEntity="App\Entity\Utilisateur\Utilisateur", inversedBy="clients")
* @ORM\JoinColumn(nullable=true)
*/
private $utilisateur;
/**
* @ORM\Column(name="date", type="datetime")
*/
private $date;
/**
* @ORM\Column(name="date_maj", type="datetime", nullable=true)
* @Gedmo\Timestampable(on="update")
*/
private $dateMaj;
/**
* @ORM\Column(name="reference", type="string", length=255, nullable=true)
*/
private $reference;
/**
* @ORM\Column(name="numero_reference", type="integer",nullable=true)
*/
private $numeroReference;
/**
* @ORM\Column(name="code_comptable", type="string", length=255, nullable=true)
*/
private $codeComptable;
/**
* @ORM\Column(name="banque", type="string", length=255, nullable=true)
*/
private $banque;
/**
* @ORM\Column(name="guichet", type="string", length=255, nullable=true)
*/
private $guichet;
/**
* @ORM\Column(name="n_cpte_banque", type="string", length=255, nullable=true)
*/
private $n_cpte_banque;
/**
* @ORM\Column(name="cle_banque", type="string", length=255, nullable=true)
*/
private $cleBanque;
/**
* @ORM\Column(name="domiciliation_1", type="string", length=255, nullable=true)
*/
private $domiciliation1;
/**
* @ORM\Column(name="domiciliation_2", type="string", length=255, nullable=true)
*/
private $domiciliation2;
/**
* @ORM\Column(name="iban", type="string", length=255, nullable=true)
*/
private $iban;
/**
* @ORM\Column(name="bic", type="string", length=255, nullable=true)
*/
private $bic;
/**
* @ORM\Column(name="prenom", type="string", length=255, nullable=true)
*/
private $prenom;
/**
* @ORM\Column(name="nom", type="string", length=255, nullable=true)
* @Assert\NotBlank(message="Nom / Raison sociale obligatoire")
*/
private $nom;
/**
* @ORM\Column(name="civilite", type="string", length=255, nullable=true)
*/
private $civilite;
/**
* @ORM\Column(name="telephone", type="string", length=255, nullable=true)
* @Assert\NotBlank(message="Téléphone obligatoire")
*/
private $telephone;
/**
* @ORM\Column(name="telephone2", type="string", length=255, nullable=true)
*/
private $telephone2;
/**
* @ORM\Column(name="fax", type="string", length=255, nullable=true)
*/
private $fax;
/**
* @ORM\Column(name="email", type="string", length=255, nullable=true)
*/
private $email;
/**
* @ORM\Column(name="numTva", type="string", length=255, nullable=true)
*/
private $numTva;
/**
* @ORM\Column(name="siren", type="string", length=255, nullable=true)
*/
private $siren;
/**
* @ORM\Column(name="siret", type="string", length=255, nullable=true)
*/
private $siret;
/**
* @ORM\Column(name="ape", type="string", length=255, nullable=true)
*/
private $ape;
/**
* @ORM\Column(name="date_supression", type="datetime", nullable=true)
*/
private $dateSuppression;
/**
* @ORM\ManyToOne(targetEntity="App\Entity\Clients\Origine", cascade={"persist"})
*/
private $origine;
/**
* @ORM\ManyToOne(targetEntity="App\Entity\Localisation\SecteurGeographique", cascade={"persist"})
*/
private $secteurGeographique;
/**
* @ORM\ManyToOne(targetEntity="App\Entity\Clients\FormeJuridique", cascade={"persist"})
*/
private $formeJuridique;
/**
* @ORM\ManyToOne(targetEntity="App\Entity\Clients\Classification", cascade={"persist"})
*/
private $classification;
/**
* @ORM\ManyToOne(targetEntity="App\Entity\Clients\Type", cascade={"persist"},inversedBy="clients")
*/
private $typeClient;
/**
* @ORM\Column(name="commentaire", type="text", nullable=true)
*/
private $commentaire;
/**
* @ORM\Column(name="commentaire_facture", type="text", nullable=true)
*/
private $commentaireFacture;
/**
* @ORM\Column(name="commentaire_supplementaire", type="text", nullable=true)
*/
private $commentaireSupplementaire;
/**
* @ORM\OneToMany(targetEntity="App\Entity\Clients\Document", cascade={"persist"},mappedBy="client")
*/
private $documents;
/**
* @ORM\OneToMany(targetEntity="App\Entity\GestionComerciale\Devis", mappedBy="client")
*/
private $devis;
/**
* @var referenceClientObligatoire
* @ORM\Column(name="reference_client_obligatoire", type="boolean", options={"default":false}, nullable=true)
*/
protected $referenceClientObligatoire;
/**
* @ORM\ManyToOne(targetEntity="App\Entity\GestionComerciale\DelaiPaiement", cascade={"persist"})
* @ORM\JoinColumn(nullable=true)
*/
private $delaiPaiement;
/**
* @ORM\ManyToOne(targetEntity="App\Entity\GestionComerciale\ModeReglement", cascade={"persist"})
* @ORM\JoinColumn(nullable=true)
*/
private $modereglement;
/**
* @ORM\OneToMany(targetEntity="App\Entity\GestionComerciale\LCR", mappedBy="client")
*/
private $lcrs;
/**
* @ORM\OneToMany(targetEntity="App\Entity\GestionComerciale\Acompte", mappedBy="client")
*/
private $reglements;
/**
* @var boolean
* @ORM\Column(name="facturation_multi_bl", type="boolean", options={"default":false}, nullable=true)
*/
protected $facturationMultiBL;
/**
* @ORM\ManyToOne(targetEntity="App\Entity\Articles\Compta", cascade={"persist"},inversedBy="clients")
* @ORM\JoinColumn(nullable=true)
*/
private $compta;
/**
* @ORM\OneToMany(targetEntity="App\Entity\GestionComerciale\MouvementCaisse", mappedBy="client")
*/
private $mouvementsCaisse;
/**
* @ORM\Column(name="doublon", type="boolean", nullable=true)
*/
private $doublon;
/**
* @ORM\Column(name="accepte_produit_auto", type="boolean", nullable=true)
*/
private $accepteProduitAuto;
/**
* @ORM\Column(name="archive", type="boolean", nullable=true)
*/
private $archive;
/**
* @ORM\Column(name="email_facture_auto", type="boolean", nullable=true)
*/
private $emailFactureAuto;
/**
* @ORM\ManyToOne(targetEntity="App\Entity\MarketPlace\CompteMarketPlace", cascade={"persist"})
*/
private $compteMarketPlace;
/**
* @var string
*
* @ORM\Column(name="mailer_user", type="string", length=255, nullable=true)
*/
private $mailerUser;
/**
* @var string
*
* @ORM\Column(name="mailer_password", type="string", length=255, nullable=true)
*/
private $mailerPassword;
/**
* @var string
*
* @ORM\Column(name="mailer_host", type="string", length=255, nullable=true)
*/
private $mailerHost;
/**
* @var string
*
* @ORM\Column(name="mailer_port", type="string", length=255, nullable=true)
*/
private $mailerPort;
public function __construct()
{
$this->prenom = '';
$this->date = new Datetime();
$this->nom = '';
$this->facturationMultiBL = true;
$this->archive = false;
$this->emailFactureAuto = false;
$this->litiges = new ArrayCollection();
$this->prixPromo = new ArrayCollection();
$this->notes = new ArrayCollection();
$this->categorieRemiseClientClient = new ArrayCollection();
$this->clientCategorie = new ArrayCollection();
$this->commandes = new ArrayCollection();
$this->adresses = new ArrayCollection();
$this->contacts = new ArrayCollection();
$this->vehiculesClient = new ArrayCollection();
$this->documents = new ArrayCollection();
$this->devis = new ArrayCollection();
$this->lcrs = new ArrayCollection();
$this->reglements = new ArrayCollection();
$this->mouvementsCaisse = new ArrayCollection();
}
public function getId(): int
{
if(is_null($this->id)) return 0;
return $this->id;
}
public function setDate(DateTime $date): Client
{
$this->date = $date;
return $this;
}
public function getDate(): DateTime
{
return $this->date;
}
public function setPrenom(?string $prenom): Client
{
$this->prenom = $prenom;
return $this;
}
public function getPrenom(): ?string
{
return $this->prenom;
}
public function setNom(?string $nom): Client
{
$this->nom = $nom;
return $this;
}
public function getNom(): ?string
{
return $this->nom;
}
public function getNomAvecAdresse(): string
{
$libelle_adresse="";
if(count($this->getAdresses())>0) {
foreach($this->getAdresses() as $adresse) {
if($adresse->getFacturationDefaut()) {
if(is_object($adresse->getCodePostal())) {
$libelle_adresse .= " ".$adresse->getCodePostal()->getCodePostal();
}
if(is_object($adresse->getVille())) {
$libelle_adresse .= " ".$adresse->getVille()->getTitre();
}
break;
}
}
if($libelle_adresse=="") {
foreach($this->getAdresses() as $adresse) {
if(is_object($adresse->getCodePostal())) {
$libelle_adresse .= trim($adresse->getCodePostal()->getCodePostal());
}
if(is_object($adresse->getVille())) {
$libelle_adresse .= " ".trim($adresse->getVille()->getTitre());
}
break;
}
}
}
$libelle_adresse = trim("(".$this->reference." ".$libelle_adresse.")");
return trim($this->nom." ".trim($libelle_adresse));
}
public function setTelephone(?string $telephone): Client
{
$this->telephone = $telephone;
return $this;
}
public function getTelephone(): ?string
{
return $this->telephone;
}
public function setTelephone2(?string $telephone2): Client
{
$this->telephone2 = $telephone2;
return $this;
}
public function getTelephone2(): ?string
{
return $this->telephone2;
}
public function setEmail(?string $email): Client
{
$this->email = $email;
return $this;
}
public function getEmail(): ?string
{
return $this->email;
}
public function setNumTva(?string $numTva): Client
{
$this->numTva = $numTva;
return $this;
}
public function getNumTva(): ?string
{
return $this->numTva;
}
public function setDateMaj(?DateTime $dateMaj): Client
{
$this->dateMaj = $dateMaj;
return $this;
}
public function getDateMaj(): ?DateTime
{
return $this->dateMaj;
}
public function setReference(?string $reference): Client
{
$this->reference = $reference;
return $this;
}
public function getReference(): ?string
{
return $this->reference;
}
public function setDateSuppression(?DateTime $dateSuppression): Client
{
$this->dateSuppression = $dateSuppression;
return $this;
}
public function getDateSuppression(): ?DateTime
{
return $this->dateSuppression;
}
public function setCommentaire(?string $commentaire): Client
{
$this->commentaire = $commentaire;
return $this;
}
public function getCommentaire(): ?string
{
return $this->commentaire;
}
public function setUtilisateur(?Utilisateur $utilisateur): Client
{
$this->utilisateur = $utilisateur;
return $this;
}
public function getUtilisateur(): ?Utilisateur
{
return $this->utilisateur;
}
public function addVehiculesClient(VehiculeClient $vehiculesClient): Client
{
$this->vehiculesClient[] = $vehiculesClient;
return $this;
}
public function removeVehiculesClient(VehiculeClient $vehiculesClient)
{
$this->vehiculesClient->removeElement($vehiculesClient);
}
public function getVehiculesClient(): Collection
{
return $this->vehiculesClient;
}
public function setLogo(?string $logo): Client
{
$this->logo = $logo;
return $this;
}
public function getLogo(): ?string
{
return $this->logo;
}
public function getLogoDir(): string
{
return 'uploads/logos/client';
}
public function addContact(contact $contacts): Client
{
$this->contacts[] = $contacts;
return $this;
}
public function removeContact(contact $contacts)
{
$this->contacts->removeElement($contacts);
}
public function getContacts(): Collection
{
return $this->contacts;
}
public function setPays(?Zone $pays): Client
{
$this->pays = $pays;
return $this;
}
public function getPays(): ?Zone
{
return $this->pays;
}
public function setVille(?Zone $ville): Client
{
$this->ville = $ville;
return $this;
}
public function getVille(): ?Zone
{
return $this->ville;
}
public function setCodePostal(?Zone $codePostal): Client
{
$this->codePostal = $codePostal;
return $this;
}
public function getCodePostal(): ?Zone
{
return $this->codePostal;
}
public function addAdress(Adresse $adresses): Client
{
$this->adresses[] = $adresses;
$adresses->setClient($this);
return $this;
}
public function removeAdress(Adresse $adresses)
{
$this->adresses->removeElement($adresses);
}
public function getAdresses(): Collection
{
return $this->adresses;
}
public function addCommande(Commande $commandes): Client
{
$this->commandes[] = $commandes;
return $this;
}
public function removeCommande(Commande $commandes)
{
$this->commandes->removeElement($commandes);
}
public function getCommandes(): Collection
{
return $this->commandes;
}
public function __toString()
{
return $this->prenom." ".$this->nom;
}
public function addDevi(Devis $devis): Client
{
$this->devis[] = $devis;
return $this;
}
public function removeDevi(Devis $devis)
{
$this->devis->removeElement($devis);
}
public function getDevis(): Collection
{
return $this->devis;
}
public function setTypeClient(?Type $typeClient): Client
{
$this->typeClient = $typeClient;
return $this;
}
public function getTypeClient(): ?Type
{
return $this->typeClient;
}
public function setDelaiPaiement(?DelaiPaiement $delaiPaiement): Client
{
$this->delaiPaiement = $delaiPaiement;
return $this;
}
public function getDelaiPaiement(): ?DelaiPaiement
{
return $this->delaiPaiement;
}
public function setModeReglement(?ModeReglement $modereglement): Client
{
$this->modereglement = $modereglement;
return $this;
}
public function getModeReglement(): ?ModeReglement
{
return $this->modereglement;
}
public function addClientCategorie(ClientCategorie $clientCategorie): Client
{
$this->clientCategorie[] = $clientCategorie;
return $this;
}
public function removeClientCategorie(ClientCategorie $clientCategorie)
{
$this->clientCategorie->removeElement($clientCategorie);
}
public function getClientCategorie(): Collection
{
return $this->clientCategorie;
}
public function addDocument(Document $documents): Client
{
$this->documents[] = $documents;
return $this;
}
public function removeDocument(Document $documents)
{
$this->documents->removeElement($documents);
}
public function getDocuments(): Collection
{
return $this->documents;
}
public function setReferenceClientObligatoire($referenceClientObligatoire): Client
{
$this->referenceClientObligatoire = $referenceClientObligatoire;
return $this;
}
public function getReferenceClientObligatoire(): ?bool
{
return $this->referenceClientObligatoire;
}
public function setIdImport(?string $idImport): Client
{
$this->idImport = $idImport;
return $this;
}
public function getIdImport(): ?string
{
return $this->idImport;
}
public function setSiren(string $siren): Client
{
$this->siren = $siren;
return $this;
}
public function getSiren(): ?string
{
return $this->siren;
}
public function setSiret(?string $siret): Client
{
$this->siret = $siret;
return $this;
}
public function getSiret(): ?string
{
return $this->siret;
}
public function setFax(?string $fax): Client
{
$this->fax = $fax;
return $this;
}
public function getFax(): ?string
{
return $this->fax;
}
public function setDonnesImport(?string $donnesImport): Client
{
$this->donnesImport = $donnesImport;
return $this;
}
public function getDonnesImport(): ?string
{
return $this->donnesImport;
}
public function addPrixPromo(PrixPromo $prixPromo): Client
{
$this->prixPromo[] = $prixPromo;
return $this;
}
public function removePrixPromo(PrixPromo $prixPromo)
{
$this->prixPromo->removeElement($prixPromo);
}
public function getPrixPromo(): Collection
{
return $this->prixPromo;
}
public function setIban(?string $iban): Client
{
$this->iban = $iban;
return $this;
}
public function getIban(): ?string
{
return $this->iban;
}
public function setBic(?string $bic): Client
{
$this->bic = $bic;
return $this;
}
public function getBic(): ?string
{
return $this->bic;
}
public function setBanque(?string $banque): Client
{
$this->banque = $banque;
return $this;
}
public function getBanque(): ?string
{
return $this->banque;
}
public function setGuichet(?string $guichet): Client
{
$this->guichet = $guichet;
return $this;
}
public function getGuichet(): ?string
{
return $this->guichet;
}
public function setNCpteBanque(?string $nCpteBanque): Client
{
$this->n_cpte_banque = $nCpteBanque;
return $this;
}
public function getNCpteBanque(): ?string
{
return $this->n_cpte_banque;
}
public function addCategorieRemiseClientClient(CategorieRemiseClientClient $categorieRemiseClientClient): Client
{
$this->categorieRemiseClientClient[] = $categorieRemiseClientClient;
$categorieRemiseClientClient->setClient($this);
return $this;
}
public function removeCategorieRemiseClientClient(CategorieRemiseClientClient $categorieRemiseClientClient)
{
$this->categorieRemiseClientClient->removeElement($categorieRemiseClientClient);
}
public function getCategorieRemiseClientClient(): Collection
{
return $this->categorieRemiseClientClient;
}
public function setPaiementTraite(?bool $paiementTraite)
{
$this->paiementTraite = $paiementTraite;
return $this;
}
public function getPaiementTraite(): ?bool
{
return $this->paiementTraite;
}
public function setCleBanque(?string $cleBanque): Client
{
$this->cleBanque = $cleBanque;
return $this;
}
public function getCleBanque(): ?string
{
return $this->cleBanque;
}
public function setDomiciliation1(?string $domiciliation1): Client
{
$this->domiciliation1 = $domiciliation1;
return $this;
}
public function getDomiciliation1(): ?string
{
return $this->domiciliation1;
}
public function setDomiciliation2(?string $domiciliation2): Client
{
$this->domiciliation2 = $domiciliation2;
return $this;
}
public function getDomiciliation2(): ?string
{
return $this->domiciliation2;
}
public function addLcr(LCR $lcr): Client
{
$this->lcrs[] = $lcr;
return $this;
}
public function removeLcr(LCR $lcr)
{
$this->lcrs->removeElement($lcr);
}
public function getLcrs(): Collection
{
return $this->lcrs;
}
public function setCodeComptable(?string $codeComptable): Client
{
$this->codeComptable = $codeComptable;
return $this;
}
public function getCodeComptable(): ?string
{
return $this->codeComptable;
}
public function setFacturationMultiBL(?bool $facturationMultiBL): Client
{
$this->facturationMultiBL = $facturationMultiBL;
return $this;
}
public function getFacturationMultiBL(): ?bool
{
return $this->facturationMultiBL;
}
public function addReglement(Acompte $reglement): Client
{
$this->reglements[] = $reglement;
return $this;
}
public function removeReglement(Acompte $reglement)
{
$this->reglements->removeElement($reglement);
}
public function getReglements(): Collection
{
return $this->reglements;
}
public function setCompta(?Compta $compta): Client
{
$this->compta = $compta;
return $this;
}
public function getCompta(): ?Compta
{
return $this->compta;
}
public function setCommentaireSupplementaire(?string $commentaireSupplementaire): Client
{
$this->commentaireSupplementaire = $commentaireSupplementaire;
return $this;
}
public function getCommentaireSupplementaire(): ?string
{
return $this->commentaireSupplementaire;
}
public function addNote(Note $note): Client
{
$this->notes[] = $note;
return $this;
}
public function removeNote(Note $note)
{
$this->notes->removeElement($note);
}
public function getNotes(): Collection
{
return $this->notes;
}
public function setCommentaireFacture(?string $commentaireFacture): Client
{
$this->commentaireFacture = $commentaireFacture;
return $this;
}
public function getCommentaireFacture(): ?string
{
return $this->commentaireFacture;
}
public function setLangue(?Langue $langue): Client
{
$this->langue = $langue;
return $this;
}
public function getLangue(): ?Langue
{
return $this->langue;
}
public function addMouvementsCaisse(MouvementCaisse $mouvementsCaisse): Client
{
$this->mouvementsCaisse[] = $mouvementsCaisse;
return $this;
}
public function removeMouvementsCaisse(MouvementCaisse $mouvementsCaisse)
{
$this->mouvementsCaisse->removeElement($mouvementsCaisse);
}
public function getMouvementsCaisse(): Collection
{
return $this->mouvementsCaisse;
}
public function setTva(?bool $tva): Client
{
$this->tva = $tva;
return $this;
}
public function setCivilite(?string $civilite): Client
{
$this->civilite = $civilite;
return $this;
}
public function getTva(): ?bool
{
return $this->tva;
}
public function getCivilite(): ?string
{
return $this->civilite;
}
public function setTransporteur(?Transporteur $transporteur): Client
{
$this->transporteur = $transporteur;
return $this;
}
public function getTransporteur(): ?Transporteur
{
return $this->transporteur;
}
public function setIdPrestashop(?string $idPrestashop): Client
{
$this->id_prestashop = $idPrestashop;
return $this;
}
public function getIdPrestashop(): ?string
{
return $this->id_prestashop;
}
public function setDoublon(?bool $doublon): Client
{
$this->doublon = $doublon;
return $this;
}
public function getDoublon(): ?bool
{
return $this->doublon;
}
public function setCiviliteObj(?Civilite $civiliteObj): Client
{
$this->civiliteObj = $civiliteObj;
return $this;
}
public function getCiviliteObj(): ?Civilite
{
return $this->civiliteObj;
}
public function addLitige(Litige $litige): Client
{
$this->litiges[] = $litige;
return $this;
}
public function removeLitige(Litige $litige)
{
$this->litiges->removeElement($litige);
}
public function getLitiges(): Collection
{
return $this->litiges;
}
public function setClassification(?Classification $classification): Client
{
$this->classification = $classification;
return $this;
}
public function getClassification(): ?Classification
{
return $this->classification;
}
public function setAccepteProduitAuto(?bool $accepteProduitAuto): Client
{
$this->accepteProduitAuto = $accepteProduitAuto;
return $this;
}
public function getAccepteProduitAuto(): ?bool
{
return $this->accepteProduitAuto;
}
public function setJoursLivraison(?string $joursLivraison): Client
{
$this->joursLivraison = $joursLivraison;
return $this;
}
public function getJoursLivraison(): ?array
{
return is_array($this->joursLivraison) ? unserialize($this->joursLivraison) : [];
}
public function setOrigine(?Origine $origine): Client
{
$this->origine = $origine;
return $this;
}
public function getOrigine(): ?Origine
{
return $this->origine;
}
public function setFormeJuridique(?FormeJuridique $formeJuridique): Client
{
$this->formeJuridique = $formeJuridique;
return $this;
}
public function getFormeJuridique(): ?FormeJuridique
{
return $this->formeJuridique;
}
public function setSecteurGeographique(?SecteurGeographique $secteurGeographique): Client
{
$this->secteurGeographique = $secteurGeographique;
return $this;
}
public function getSecteurGeographique(): ?SecteurGeographique
{
return $this->secteurGeographique;
}
public function setArchive(?bool $archive): Client
{
$this->archive = $archive;
return $this;
}
public function getArchive(): ?bool
{
return $this->archive;
}
public function setGroupe(?bool $groupe): Client
{
$this->groupe = $groupe;
return $this;
}
public function getGroupe(): ?bool
{
return $this->groupe;
}
public function setParent(?Client $parent): Client
{
$this->parent = $parent;
return $this;
}
public function getParent(): ?Client
{
return $this->parent;
}
public function setEmailFactureAuto(?bool $emailFactureAuto): Client
{
$this->emailFactureAuto = $emailFactureAuto;
return $this;
}
public function getEmailFactureAuto(): ?bool
{
return $this->emailFactureAuto;
}
public function setIdImport2(?string $idImport2): Client
{
$this->idImport2 = $idImport2;
return $this;
}
public function getIdImport2(): ?string
{
return $this->idImport2;
}
public function setNumeroReference(?int $numeroReference): Client
{
$this->numeroReference = $numeroReference;
return $this;
}
public function getNumeroReference(): ?int
{
return $this->numeroReference;
}
public function setCompteMarketPlace(?CompteMarketPlace $compteMarketPlace): Client
{
$this->compteMarketPlace = $compteMarketPlace;
return $this;
}
public function getCompteMarketPlace(): ?CompteMarketPlace
{
return $this->compteMarketPlace;
}
public function isGroupe(): ?bool
{
return $this->groupe;
}
public function isTva(): ?bool
{
return $this->tva;
}
public function getApe(): ?string
{
return $this->ape;
}
public function setApe(?string $ape): self
{
$this->ape = $ape;
return $this;
}
public function isReferenceClientObligatoire(): ?bool
{
return $this->referenceClientObligatoire;
}
public function isFacturationMultiBL(): ?bool
{
return $this->facturationMultiBL;
}
public function isDoublon(): ?bool
{
return $this->doublon;
}
public function isAccepteProduitAuto(): ?bool
{
return $this->accepteProduitAuto;
}
public function isArchive(): ?bool
{
return $this->archive;
}
public function isEmailFactureAuto(): ?bool
{
return $this->emailFactureAuto;
}
public function getMailerUser(): ?string
{
return $this->mailerUser;
}
public function setMailerUser(?string $mailerUser): self
{
$this->mailerUser = $mailerUser;
return $this;
}
public function getMailerPassword(): ?string
{
return $this->mailerPassword;
}
public function setMailerPassword(?string $mailerPassword): self
{
$this->mailerPassword = $mailerPassword;
return $this;
}
public function getMailerHost(): ?string
{
return $this->mailerHost;
}
public function setMailerHost(?string $mailerHost): self
{
$this->mailerHost = $mailerHost;
return $this;
}
public function getMailerPort(): ?string
{
return $this->mailerPort;
}
public function setMailerPort(?string $mailerPort): self
{
$this->mailerPort = $mailerPort;
return $this;
}
}