src/Entity/Client.php line 22

Open in your IDE?
  1. <?php
  2. namespace App\Entity;
  3. use Doctrine\Common\Collections\ArrayCollection;
  4. use Doctrine\Common\Collections\Collection;
  5. use Doctrine\ORM\Mapping as ORM;
  6. use Gedmo\Timestampable\Traits\Timestampable;
  7. use Gedmo\Timestampable\Traits\TimestampableEntity;
  8. use Symfony\Component\Serializer\Annotation\Groups;
  9. use App\Entity\Client\BillingInfos;
  10. use App\Entity\Client\FamilyMember;
  11. use Gedmo\Mapping\Annotation as Gedmo;
  12. /**
  13.  * Client
  14.  *
  15.  * @ORM\Table(name="client")
  16.  * @ORM\Entity
  17.  */
  18. class Client
  19. {
  20.     const STATUS_PROSPECT 'Prospect';
  21.     const STATUS_ACTIF 'Actif';
  22.     const STATUS_INACTIF 'Inactif';
  23.     const STATUS_PARTI 'Parti';
  24.     const STATUS_DECES 'Décès';
  25.     const TYPE_TUTEUR_TUTEUR 'tuteur';
  26.     const TYPE_TUTEUR_LEGAL 'legal';
  27.     /**
  28.      * @var int
  29.      *
  30.      * @ORM\Column(name="id", type="integer", nullable=false)
  31.      * @ORM\Id
  32.      * @ORM\GeneratedValue(strategy="IDENTITY")
  33.      */
  34.     private $id;
  35.     /**
  36.      * @var Site
  37.      *
  38.      * @ORM\ManyToOne(targetEntity="Site")
  39.      * @ORM\JoinColumn(name="site_id", referencedColumnName="id")
  40.      */
  41.     private $site;
  42.     /**
  43.      * @var string
  44.      *
  45.      * @ORM\Column(name="identifier", type="string", length=500, nullable=true)
  46.      */
  47.     private $identifier;
  48.     /**
  49.      * @Groups("rdv")
  50.      * @var string
  51.      *
  52.      * @ORM\Column(name="firstname", type="string", length=500, nullable=true)
  53.      */
  54.     private $firstname;
  55.     /**
  56.      * @Groups("rdv")
  57.      * @var string
  58.      *
  59.      * @ORM\Column(name="numeroClient", type="string", length=500, nullable=true)
  60.      */
  61.     private $numClient;
  62.     /**
  63.      * @var string
  64.      *
  65.      * @ORM\Column(name="civilite", type="string", nullable=true)
  66.      */
  67.     private $civilite;
  68.     /**
  69.      * @Groups("rdv")
  70.      * @var string
  71.      *
  72.      * @ORM\Column(name="lastname", type="string", length=500, nullable=true)
  73.      */
  74.     private $lastname;
  75.     /**
  76.      * @var string|null
  77.      *
  78.      * @ORM\Column(name="birthday", type="string", nullable=true)
  79.      */
  80.     private $birthday;
  81.     /**
  82.      * @var string|null
  83.      *
  84.      * @ORM\Column(name="deathday", type="string", nullable=true)
  85.      */
  86.     private $deathday;
  87.     /**
  88.      * @var string|null
  89.      *
  90.      * @ORM\Column(name="gender", type="string", length=255, nullable=true)
  91.      */
  92.     private $gender;
  93.     /**
  94.      * @var string|null
  95.      *
  96.      * @ORM\Column(name="email", type="string", length=255, nullable=true)
  97.      */
  98.     private $email;
  99.     /**
  100.      * @var string|null
  101.      *
  102.      * @ORM\Column(name="phone", type="string", length=255, nullable=true)
  103.      */
  104.     private $phone;
  105.     /**
  106.      * @var string|null
  107.      *
  108.      * @ORM\Column(name="comments", type="text", length=0, nullable=true)
  109.      */
  110.     private $comments;
  111.     /**
  112.      * @var string|null
  113.      *
  114.      * @ORM\Column(name="suivi_client", type="text", length=0, nullable=true)
  115.      */
  116.     private $suiviClient;
  117.     /**
  118.      * @var string|null
  119.      * @Groups("rdv")
  120.      * @ORM\Column(name="room_number", type="string", length=255, nullable=true)
  121.      */
  122.     private $roomNumber;
  123.     /**
  124.      * @var string|null
  125.      *
  126.      * @ORM\Column(name="building_room", type="string", length=255, nullable=true)
  127.      */
  128.     private $buildingRoom;
  129.     /**
  130.      * @var string|null
  131.      *
  132.      * @ORM\Column(name="stairs", type="string", length=255, nullable=true)
  133.      */
  134.     private $stairs;
  135.     /**
  136.      * @var string|null
  137.      *
  138.      * @ORM\Column(name="nom_tuteur", type="string", nullable=true)
  139.      */
  140.     private $nomTuteur;
  141.     /**
  142.      * @var string|null
  143.      *
  144.      * @ORM\Column(name="civilite_tuteur", type="string", nullable=true)
  145.      */
  146.     private $civiliteTuteur;
  147.     /**
  148.      * @var string|null
  149.      *
  150.      * @ORM\Column(name="prenom_tuteur", type="string", nullable=true)
  151.      */
  152.     private $prenomTuteur;
  153.     /**
  154.      * @var string|null
  155.      *
  156.      * @ORM\Column(name="email_tuteur", type="string", nullable=true)
  157.      */
  158.     private $emailTuteur;
  159.     /**
  160.      * @var string|null
  161.      *
  162.      * @ORM\Column(name="email_notaire", type="string", nullable=true)
  163.      */
  164.     private $emailNotaire;
  165.     /**
  166.      * @var string|null
  167.      *
  168.      * @ORM\Column(name="num_tuteur", type="string", nullable=true)
  169.      */
  170.     private $numeroTuteur;
  171.     /**
  172.      * @var string|null
  173.      *
  174.      * @ORM\Column(name="type_tuteur", type="string", nullable=true)
  175.      */
  176.     private $typeTuteur;
  177.     /**
  178.      * @ORM\Column(type="simple_array", nullable=true)
  179.      */
  180.     private $daysOfWeek = [];
  181.     /**
  182.      * @var string|null
  183.      *
  184.      * @ORM\Column(name="comment_tuteur", type="string", nullable=true)
  185.      */
  186.     private $commentTuteur;
  187.     /**
  188.      * @var string|null
  189.      *
  190.      * @ORM\Column(name="consignes_client", type="string", nullable=true)
  191.      */
  192.     private $consignesClient;
  193.     /**
  194.      * @var string|null
  195.      *
  196.      * @ORM\Column(name="status_prospect", type="string", nullable=true)
  197.      */
  198.     private $statusProspect;
  199.     /**
  200.      * @var string|null
  201.      *
  202.      * @ORM\Column(name="profil_client", type="string", nullable=true)
  203.      */
  204.     private $profilClient;
  205.     /**
  206.      * @var string|null
  207.      *
  208.      * @ORM\Column(name="address_tuteur", type="string", nullable=true)
  209.      */
  210.     private $addressTuteur;
  211.     /**
  212.      * @var string|null
  213.      *
  214.      * @ORM\Column(name="address_tuteur2", type="string", nullable=true)
  215.      */
  216.     private $addressTuteur2;
  217.     /**
  218.      * @var string|null
  219.      *
  220.      * @ORM\Column(name="city_tuteur", type="string", nullable=true)
  221.      */
  222.     private $city;
  223.     /**
  224.      * @var string|null
  225.      *
  226.      * @ORM\Column(name="zipcode", type="string", nullable=true)
  227.      */
  228.     private $zipcode;
  229.     /**
  230.      * @var Contract
  231.      *
  232.      * @ORM\OneToMany(targetEntity="Contract", mappedBy="client", cascade={"persist"})
  233.      */
  234.     private $contract;
  235.     /**
  236.      * @var Contract
  237.      *
  238.      * @ORM\OneToMany(targetEntity=FamilyMember::class, mappedBy="client", cascade={"persist"})
  239.      */
  240.     private $familyMembers;
  241.     /**
  242.      * @var Contact
  243.      *
  244.      * @ORM\ManyToOne(targetEntity="Contact", cascade={"persist"})
  245.      * @ORM\JoinColumn(name="contact_id", referencedColumnName="id")
  246.      */
  247.     private $contact;
  248.     /**
  249.      * @var BillingInfos
  250.      *
  251.      * @ORM\ManyToOne(targetEntity=BillingInfos::class, cascade={"persist"})
  252.      * @ORM\JoinColumn(name="billing_infos_id", referencedColumnName="id")
  253.      */
  254.     private $billingInfos;
  255.     /**
  256.      * @ORM\ManyToOne(targetEntity=User::class, cascade={"persist"})
  257.      * @ORM\JoinColumn(name="creator_id", referencedColumnName="id")
  258.      */
  259.     protected $creator;
  260.     /**
  261.      * @ORM\ManyToOne(targetEntity=User::class, cascade={"persist"})
  262.      * @ORM\JoinColumn(name="maj_id", referencedColumnName="id")
  263.      */
  264.     protected $maj;
  265.     /**
  266.      * @ORM\OneToMany(targetEntity="App\Entity\Reglement", mappedBy="client")
  267.      */
  268.     private $reglements;
  269.     /**
  270.      * @ORM\OneToMany(targetEntity="App\Entity\Billing", mappedBy="client")
  271.      */
  272.     private $billings;
  273.     /**
  274.      * @var \DateTime $created
  275.      *
  276.      * @Gedmo\Timestampable(on="create")
  277.      * @ORM\Column(type="datetime", options={"default"="CURRENT_TIMESTAMP"})
  278.      */
  279.     private $created;
  280.     /**
  281.      * @var \DateTime $updated
  282.      *
  283.      * @Gedmo\Timestampable(on="update")
  284.      * @ORM\Column(type="datetime", options={"default"="CURRENT_TIMESTAMP"})
  285.      */
  286.     private $updated;
  287.     /**
  288.      * @ORM\Column(type="boolean", nullable=true)
  289.      */
  290.     private $privacyPolicyAccepted false;
  291.     /**
  292.      * @ORM\Column(type="boolean", nullable=true)
  293.      */
  294.     private $emailAgreement false;
  295.     /**
  296.      * @ORM\Column(type="boolean", nullable=true)
  297.      */
  298.     private $cgvAccepted false;
  299.     /**
  300.      * @ORM\Column(type="boolean", nullable=true)
  301.      */
  302.     private $hasSignedEasyCollect false;
  303.     /**
  304.      * @ORM\OneToMany(targetEntity=Recurrence::class, mappedBy="client")
  305.      */
  306.     private $recurrences;
  307.     /**
  308.      * @ORM\Column(type="string", length=255, nullable=true)
  309.      */
  310.     private $addressFacturation;
  311.     /**
  312.      * @ORM\Column(type="string", length=255, nullable=true)
  313.      */
  314.     private $ComplementAdresseFacturation;
  315.     /**
  316.      * @ORM\Column(type="string", length=255, nullable=true)
  317.      */
  318.     private $codePostalFacturation;
  319.     /**
  320.      * @ORM\Column(type="string", length=255, nullable=true)
  321.      */
  322.     private $villeFacturation;
  323.     /**
  324.      * @ORM\Column(type="string", length=255, nullable=true)
  325.      */
  326.     private $nomFacturation;
  327.     /**
  328.      * @ORM\Column(type="string", length=255, nullable=true)
  329.      */
  330.     private $prenomFacturation;
  331.     /**
  332.      * @ORM\Column(type="string", length=255, nullable=true)
  333.      */
  334.     private $civiliteFacturation;
  335.     public function __toString()
  336.                                                                                   {
  337.                                                                                       return strtoupper($this->getLastname()) . " " ucfirst($this->getFirstname());
  338.                                                                                   }
  339.     public function __construct()
  340.                                                                                   {
  341.                                                                                       $this->contract = new ArrayCollection();
  342.                                                                                       $this->familyMembers = new ArrayCollection();
  343.                                                                                       $this->reglements = new ArrayCollection();
  344.                                                                                       $this->billings = new ArrayCollection();
  345.                                                                                 $this->recurrences = new ArrayCollection();
  346.                                                                                   }
  347.     public function getId(): ?int
  348.                                                                                   {
  349.                                                                                       return $this->id;
  350.                                                                                   }
  351.     public function getFirstname(): ?string
  352.                                                                                   {
  353.                                                                                       return $this->firstname;
  354.                                                                                   }
  355.     public function setFirstname(?string $firstname): self
  356.                                                                                   {
  357.                                                                                       $this->firstname $firstname;
  358.                                                                                       return $this;
  359.                                                                                   }
  360.     public function getLastname(): ?string
  361.                                                                                   {
  362.                                                                                       return $this->lastname;
  363.                                                                                   }
  364.     public function setLastname(?string $lastname): self
  365.                                                                                   {
  366.                                                                                       $this->lastname $lastname;
  367.                                                                                       return $this;
  368.                                                                                   }
  369.     public function getBirthday(): ?string
  370.                                                                                   {
  371.                                                                                       return $this->birthday;
  372.                                                                                   }
  373.     public function setBirthday(?string $birthday): self
  374.                                                                                   {
  375.                                                                                       $this->birthday $birthday;
  376.                                                                                       return $this;
  377.                                                                                   }
  378.     public function getDeathday(): ?string
  379.                                                                                   {
  380.                                                                                       return $this->deathday;
  381.                                                                                   }
  382.     public function setDeathday(?string $deathday): self
  383.                                                                                   {
  384.                                                                                       $this->deathday $deathday;
  385.                                                                                       return $this;
  386.                                                                                   }
  387.     public function getGender(): ?string
  388.                                                                                   {
  389.                                                                                       return $this->gender;
  390.                                                                                   }
  391.     public function setGender(?string $gender): self
  392.                                                                                   {
  393.                                                                                       $this->gender $gender;
  394.                                                                                       return $this;
  395.                                                                                   }
  396.     public function getEmail(): ?string
  397.                                                                                   {
  398.                                                                                       return $this->email;
  399.                                                                                   }
  400.     public function setEmail(?string $email): self
  401.                                                                                   {
  402.                                                                                       $this->email $email;
  403.                                                                                       return $this;
  404.                                                                                   }
  405.     public function getPhone(): ?string
  406.                                                                                   {
  407.                                                                                       return $this->phone;
  408.                                                                                   }
  409.     public function setPhone($phone): self
  410.                                                                                   {
  411.                                                                                       $this->phone $phone;
  412.                                                                                       return $this;
  413.                                                                                   }
  414.     public function getComments(): ?string
  415.                                                                                   {
  416.                                                                                       return $this->comments;
  417.                                                                                   }
  418.     public function setComments(?string $comments): self
  419.                                                                                   {
  420.                                                                                       $this->comments $comments;
  421.                                                                                       return $this;
  422.                                                                                   }
  423.     public function getRoomNumber(): ?string
  424.                                                                                   {
  425.                                                                                       return $this->roomNumber;
  426.                                                                                   }
  427.     public function setRoomNumber(?string $roomNumber): self
  428.                                                                                   {
  429.                                                                                       $this->roomNumber $roomNumber;
  430.                                                                                       return $this;
  431.                                                                                   }
  432.     public function getBuildingRoom(): ?string
  433.                                                                                   {
  434.                                                                                       return $this->buildingRoom;
  435.                                                                                   }
  436.     public function setBuildingRoom(?string $buildingRoom): self
  437.                                                                                   {
  438.                                                                                       $this->buildingRoom $buildingRoom;
  439.                                                                                       return $this;
  440.                                                                                   }
  441.     public function getStairs(): ?string
  442.                                                                                   {
  443.                                                                                       return $this->stairs;
  444.                                                                                   }
  445.     public function setStairs(?string $stairs): self
  446.                                                                                   {
  447.                                                                                       $this->stairs $stairs;
  448.                                                                                       return $this;
  449.                                                                                   }
  450.     public function getContact(): ?Contact
  451.                                                                                   {
  452.                                                                                       return $this->contact;
  453.                                                                                   }
  454.     public function setContact(?Contact $contact): self
  455.                                                                                   {
  456.                                                                                       $this->contact $contact;
  457.                                                                                       return $this;
  458.                                                                                   }
  459.     /**
  460.      * @return string
  461.      */
  462.     public function getCivilite(): ?string
  463.                                                                                   {
  464.                                                                                       return $this->civilite;
  465.                                                                                   }
  466.     /**
  467.      * @param string $civilite
  468.      */
  469.     public function setCivilite($civilite): void
  470.                                                                                   {
  471.                                                                                       $this->civilite $civilite;
  472.                                                                                   }
  473.     /**
  474.      * @return string|null
  475.      */
  476.     public function getNomTuteur(): ?string
  477.                                                                                   {
  478.                                                                                       return $this->nomTuteur;
  479.                                                                                   }
  480.     /**
  481.      * @param string|null $nomTuteur
  482.      */
  483.     public function setNomTuteur(?string $nomTuteur): void
  484.                                                                                   {
  485.                                                                                       $this->nomTuteur $nomTuteur;
  486.                                                                                   }
  487.     /**
  488.      * @return string|null
  489.      */
  490.     public function getPrenomTuteur(): ?string
  491.                                                                                   {
  492.                                                                                       return $this->prenomTuteur;
  493.                                                                                   }
  494.     /**
  495.      * @param string|null $prenomTuteur
  496.      */
  497.     public function setPrenomTuteur(?string $prenomTuteur): void
  498.                                                                                   {
  499.                                                                                       $this->prenomTuteur $prenomTuteur;
  500.                                                                                   }
  501.     /**
  502.      * @return string|null
  503.      */
  504.     public function getEmailTuteur(): ?string
  505.                                                                                   {
  506.                                                                                       return $this->emailTuteur;
  507.                                                                                   }
  508.     /**
  509.      * @param string|null $emailTuteur
  510.      */
  511.     public function setEmailTuteur(?string $emailTuteur): void
  512.                                                                                   {
  513.                                                                                       $this->emailTuteur $emailTuteur;
  514.                                                                                   }
  515.     /**
  516.      * @return string|null
  517.      */
  518.     public function getEmailNotaire(): ?string
  519.                                                                                   {
  520.                                                                                       return $this->emailNotaire;
  521.                                                                                   }
  522.     /**
  523.      * @param string|null $emailNotaire
  524.      */
  525.     public function setEmailNotaire(?string $emailNotaire): void
  526.                                                                                   {
  527.                                                                                       $this->emailNotaire $emailNotaire;
  528.                                                                                   }
  529.     /**
  530.      * @return string|null
  531.      */
  532.     public function getNumeroTuteur(): ?string
  533.                                                                                   {
  534.                                                                                       return $this->numeroTuteur;
  535.                                                                                   }
  536.     /**
  537.      * @param string|null $numeroTuteur
  538.      */
  539.     public function setNumeroTuteur(?string $numeroTuteur): void
  540.                                                                                   {
  541.                                                                                       $this->numeroTuteur $numeroTuteur;
  542.                                                                                   }
  543.     /**
  544.      * @return string|null
  545.      */
  546.     public function getTypeTuteur(): ?string
  547.                                                                                   {
  548.                                                                                       return $this->typeTuteur;
  549.                                                                                   }
  550.     /**
  551.      * @param string|null $typeTuteur
  552.      */
  553.     public function setTypeTuteur(?string $typeTuteur): void
  554.                                                                                   {
  555.                                                                                       $this->typeTuteur $typeTuteur;
  556.                                                                                   }
  557.     /**
  558.      * @return string|null
  559.      */
  560.     public function getCommentTuteur(): ?string
  561.                                                                                   {
  562.                                                                                       return $this->commentTuteur;
  563.                                                                                   }
  564.     /**
  565.      * @param string|null $commentTuteur
  566.      */
  567.     public function setCommentTuteur(?string $commentTuteur): void
  568.                                                                                   {
  569.                                                                                       $this->commentTuteur $commentTuteur;
  570.                                                                                   }
  571.     /**
  572.      * @return Contract
  573.      */
  574.     public function getContract(): Collection
  575.                                                                                   {
  576.                                                                                       return $this->contract;
  577.                                                                                   }
  578.     /**
  579.      * @param Contact $contract
  580.      */
  581.     public function setContract($contract): void
  582.                                                                                   {
  583.                                                                                       $this->contract $contract;
  584.                                                                                   }
  585.     /**
  586.      * @return Site
  587.      */
  588.     public function getSite(): ?Site
  589.                                                                                   {
  590.                                                                                       return $this->site;
  591.                                                                                   }
  592.     /**
  593.      * @param Contact $site
  594.      */
  595.     public function setSite(?Site $site): void
  596.                                                                                   {
  597.                                                                                       $this->site $site;
  598.                                                                                   }
  599.     /*********/
  600.     /*  ADD */
  601.     /********/
  602.     public function addContract(Contract $item)
  603.                                                                                   {
  604.                                                                                       $this->contract->add($item);
  605.                                                                                       $item->setClient($this);
  606.                                                                                   }
  607.     public function addFamilyMember(FamilyMember $item)
  608.                                                                                   {
  609.                                                                                       $this->familyMembers->add($item);
  610.                                                                                       $item->setClient($this);
  611.                                                                                   }
  612.     /*********/
  613.     /*  REMVOVE */
  614.     /********/
  615.     public function removeFamilyMember(FamilyMember $item)
  616.                                                                                   {
  617.                                                                                       $this->familyMembers->removeElement($item);
  618.                                                                                   }
  619.     /**
  620.      * @return BillingInfos|null
  621.      */
  622.     public function getBillingInfos(): ?BillingInfos
  623.                                                                                   {
  624.                                                                                       return $this->billingInfos;
  625.                                                                                   }
  626.     /**
  627.      * @param Contact $billingInfos
  628.      */
  629.     public function setBillingInfos(BillingInfos $billingInfos): void
  630.                                                                                   {
  631.                                                                                       $this->billingInfos $billingInfos;
  632.                                                                                   }
  633.     /**
  634.      * @return string
  635.      */
  636.     public function getNumClient(): ?string
  637.                                                                                   {
  638.                                                                                       return $this->numClient;
  639.                                                                                   }
  640.     /**
  641.      * @param string $numClient
  642.      */
  643.     public function setNumClient(string $numClient): void
  644.                                                                                   {
  645.                                                                                       $this->numClient $numClient;
  646.                                                                                   }
  647.     /**
  648.      * @return string
  649.      */
  650.     public function getIdentifier(): ?string
  651.                                                                                   {
  652.                                                                                       return $this->identifier;
  653.                                                                                   }
  654.     /**
  655.      * @param string $identifier
  656.      */
  657.     public function setIdentifier(string $identifier): void
  658.                                                                                   {
  659.                                                                                       $this->identifier $identifier;
  660.                                                                                   }
  661.     /**
  662.      * @return string|null
  663.      */
  664.     public function getAddressTuteur(): ?string
  665.                                                                                   {
  666.                                                                                       return $this->addressTuteur;
  667.                                                                                   }
  668.     /**
  669.      * @param string|null $addressTuteur
  670.      */
  671.     public function setAddressTuteur(?string $addressTuteur): void
  672.                                                                                   {
  673.                                                                                       $this->addressTuteur $addressTuteur;
  674.                                                                                   }
  675.     /**
  676.      * @return ArrayCollection
  677.      */
  678.     public function getFamilyMembers()
  679.                                                                                   {
  680.                                                                                       return $this->familyMembers;
  681.                                                                                   }
  682.     /**
  683.      * @param Contract $familyMembers
  684.      */
  685.     public function setFamilyMembers($familyMembers): void
  686.                                                                                   {
  687.                                                                                       $this->familyMembers $familyMembers;
  688.                                                                                   }
  689.     /**
  690.      * @return string|null
  691.      */
  692.     public function getAddressTuteur2(): ?string
  693.                                                                                   {
  694.                                                                                       return $this->addressTuteur2;
  695.                                                                                   }
  696.     /**
  697.      * @param string|null $addressTuteur2
  698.      */
  699.     public function setAddressTuteur2(?string $addressTuteur2): void
  700.                                                                                   {
  701.                                                                                       $this->addressTuteur2 $addressTuteur2;
  702.                                                                                   }
  703.     /**
  704.      * @return string|null
  705.      */
  706.     public function getCity(): ?string
  707.                                                                                   {
  708.                                                                                       return $this->city;
  709.                                                                                   }
  710.     /**
  711.      * @param string|null $city
  712.      */
  713.     public function setCity(?string $city): void
  714.                                                                                   {
  715.                                                                                       $this->city $city;
  716.                                                                                   }
  717.     /**
  718.      * @return string|null
  719.      */
  720.     public function getZipcode(): ?string
  721.                                                                                   {
  722.                                                                                       return $this->zipcode;
  723.                                                                                   }
  724.     /**
  725.      * @param string|null $zipcode
  726.      */
  727.     public function setZipcode(?string $zipcode): void
  728.                                                                                   {
  729.                                                                                       $this->zipcode $zipcode;
  730.                                                                                   }
  731.     /**
  732.      * @return mixed
  733.      */
  734.     public function getCreator()
  735.                                                                                   {
  736.                                                                                       return $this->creator;
  737.                                                                                   }
  738.     /**
  739.      * @param mixed $creator
  740.      */
  741.     public function setCreator($creator): void
  742.                                                                                   {
  743.                                                                                       $this->creator $creator;
  744.                                                                                   }
  745.     /**
  746.      * @return mixed
  747.      */
  748.     public function getMaj()
  749.                                                                                   {
  750.                                                                                       return $this->maj;
  751.                                                                                   }
  752.     /**
  753.      * @param mixed $maj
  754.      */
  755.     public function setMaj($maj): void
  756.                                                                                   {
  757.                                                                                       $this->maj $maj;
  758.                                                                                   }
  759.     /**
  760.      * @return Collection|Reglement[]
  761.      */
  762.     public function getReglements(): Collection
  763.                                                                                   {
  764.                                                                                       return $this->reglements;
  765.                                                                                   }
  766.     public function addReglement(Reglement $reglement): self
  767.                                                                                   {
  768.                                                                                       if (!$this->reglements->contains($reglement)) {
  769.                                                                                           $this->reglements[] = $reglement;
  770.                                                                                           $reglement->setClient($this);
  771.                                                                                       }
  772.                                                                                       return $this;
  773.                                                                                   }
  774.     public function removeReglement(Reglement $reglement): self
  775.                                                                                   {
  776.                                                                                       if ($this->reglements->contains($reglement)) {
  777.                                                                                           $this->reglements->removeElement($reglement);
  778.                                                                                           // set the owning side to null (unless already changed)
  779.                                                                                           if ($reglement->getClient() === $this) {
  780.                                                                                               $reglement->setClient(null);
  781.                                                                                           }
  782.                                                                                       }
  783.                                                                                       return $this;
  784.                                                                                   }
  785.     /**
  786.      * @return mixed
  787.      */
  788.     public function getBillings()
  789.                                                                                   {
  790.                                                                                       return $this->billings;
  791.                                                                                   }
  792.     /**
  793.      * @param mixed $billings
  794.      */
  795.     public function setBillings($billings): void
  796.                                                                                   {
  797.                                                                                       $this->billings $billings;
  798.                                                                                   }
  799.     /**
  800.      * @return \DateTime
  801.      */
  802.     public function getCreated(): \DateTime
  803.                                                                                   {
  804.                                                                                       return $this->created;
  805.                                                                                   }
  806.     /**
  807.      * @param \DateTime $created
  808.      */
  809.     public function setCreated(\DateTime $created): void
  810.                                                                                   {
  811.                                                                                       $this->created $created;
  812.                                                                                   }
  813.     /**
  814.      * @return \DateTime
  815.      */
  816.     public function getUpdated()
  817.                                                                                   {
  818.                                                                                       return $this->updated;
  819.                                                                                   }
  820.     /**
  821.      * @param \DateTime $updated
  822.      */
  823.     public function setUpdated(\DateTime $updated): void
  824.                                                                                   {
  825.                                                                                       $this->updated $updated;
  826.                                                                                   }
  827.     /**
  828.      * @return string|null
  829.      */
  830.     public function getStatusProspect(): ?string
  831.                                                                                   {
  832.                                                                                       return $this->statusProspect;
  833.                                                                                   }
  834.     /**
  835.      * @param string|null $statusProspect
  836.      */
  837.     public function setStatusProspect(?string $statusProspect): void
  838.                                                                                   {
  839.                                                                                       $this->statusProspect $statusProspect;
  840.                                                                                   }
  841.     /**
  842.      * @return string|null
  843.      */
  844.     public function getSuiviClient(): ?string
  845.                                                                                   {
  846.                                                                                       return $this->suiviClient;
  847.                                                                                   }
  848.     /**
  849.      * @param string|null $suiviClient
  850.      */
  851.     public function setSuiviClient(?string $suiviClient): void
  852.                                                                                   {
  853.                                                                                       $this->suiviClient $suiviClient;
  854.                                                                                   }
  855.     /**
  856.      * @return string|null
  857.      */
  858.     public function getCiviliteTuteur(): ?string
  859.                                                                                   {
  860.                                                                                       return $this->civiliteTuteur;
  861.                                                                                   }
  862.     /**
  863.      * @param string|null $civiliteTuteur
  864.      */
  865.     public function setCiviliteTuteur(?string $civiliteTuteur): void
  866.                                                                                   {
  867.                                                                                       $this->civiliteTuteur $civiliteTuteur;
  868.                                                                                   }
  869.     /**
  870.      * @return string|null
  871.      */
  872.     public function getProfilClient(): ?string
  873.                                                                                   {
  874.                                                                                       return $this->profilClient;
  875.                                                                                   }
  876.     /**
  877.      * @param string|null $profilClient
  878.      */
  879.     public function setProfilClient(?string $profilClient): void
  880.                                                                                   {
  881.                                                                                       $this->profilClient $profilClient;
  882.                                                                                   }
  883.     /**
  884.      * @return string|null
  885.      */
  886.     public function getSolde(): ?string
  887.                                                                                   {
  888.                                                                                       $total 0;
  889.                                                                                       /** @var Billing $billing */
  890.                                                                                       foreach ($this->getBillings() as $billing) {
  891.                                                                                           $total +=  $billing->getSolde();
  892.                                                                                       }
  893.                                                                                       return $total;
  894.                                                                                   }
  895.     public function isPrivacyPolicyAccepted(): ?bool
  896.                                                                                   {
  897.                                                                                       return $this->privacyPolicyAccepted;
  898.                                                                                   }
  899.     public function setPrivacyPolicyAccepted(?bool $privacyPolicyAccepted): self
  900.                                                                                   {
  901.                                                                                       $this->privacyPolicyAccepted $privacyPolicyAccepted;
  902.                                                                                       return $this;
  903.                                                                                   }
  904.     public function isEmailAgreement(): ?bool
  905.                                                                                   {
  906.                                                                                       return $this->emailAgreement;
  907.                                                                                   }
  908.     public function setEmailAgreement(?bool $emailAgreement): self
  909.                                                                                   {
  910.                                                                                       $this->emailAgreement $emailAgreement;
  911.                                                                                       return $this;
  912.                                                                                   }
  913.     public function isCgvAccepted(): ?bool
  914.                                                                                   {
  915.                                                                                       return $this->cgvAccepted;
  916.                                                                                   }
  917.     public function setCgvAccepted(?bool $cgvAccepted): self
  918.                                                                                   {
  919.                                                                                       $this->cgvAccepted $cgvAccepted;
  920.                                                                                       return $this;
  921.                                                                                   }
  922.     /**
  923.      * @return string|null
  924.      */
  925.     public function getConsignesClient(): ?string
  926.                                                                                   {
  927.                                                                                       return $this->consignesClient;
  928.                                                                                   }
  929.     /**
  930.      * @param string|null $consignesClient
  931.      */
  932.     public function setConsignesClient(?string $consignesClient): void
  933.                                                                                   {
  934.                                                                                       $this->consignesClient $consignesClient;
  935.                                                                                   }
  936.     /**
  937.      * @return Collection<int, Recurrence>
  938.      */
  939.     public function getRecurrences(): Collection
  940.     {
  941.         return $this->recurrences;
  942.     }
  943.     public function addRecurrence(Recurrence $recurrence): self
  944.     {
  945.         if (!$this->recurrences->contains($recurrence)) {
  946.             $this->recurrences[] = $recurrence;
  947.             $recurrence->setClient($this);
  948.         }
  949.         return $this;
  950.     }
  951.     public function removeRecurrence(Recurrence $recurrence): self
  952.     {
  953.         if ($this->recurrences->removeElement($recurrence)) {
  954.             // set the owning side to null (unless already changed)
  955.             if ($recurrence->getClient() === $this) {
  956.                 $recurrence->setClient(null);
  957.             }
  958.         }
  959.         return $this;
  960.     }
  961.     /**
  962.      * @return bool
  963.      */
  964.     public function isHasSignedEasyCollect(): ?bool
  965.                                                                    {
  966.                                                                        return $this->hasSignedEasyCollect;
  967.                                                                    }
  968.     /**
  969.      * @param bool $hasSignedEasyCollect
  970.      */
  971.     public function setHasSignedEasyCollect(bool $hasSignedEasyCollect): void
  972.                                                                    {
  973.                                                                        $this->hasSignedEasyCollect $hasSignedEasyCollect;
  974.                                                                    }
  975.     public function getDaysOfWeek(): ?array
  976.                                                                    {
  977.                                                                        return $this->daysOfWeek;
  978.                                                                    }
  979.     public function setDaysOfWeek(array $daysOfWeek): self
  980.                                                                    {
  981.                                                                        $this->daysOfWeek $daysOfWeek;
  982.                                                                        return $this;
  983.                                                                    }
  984.     public function getAddressFacturation(): ?string
  985.     {
  986.         if($this->getAddressTuteur() && $this->addressFacturation === null){
  987.             return $this->addressTuteur;
  988.         }
  989.         return $this->addressFacturation;
  990.     }
  991.     public function setAddressFacturation(?string $addressFacturation): self
  992.     {
  993.         $this->addressFacturation $addressFacturation;
  994.         return $this;
  995.     }
  996.     public function getComplementAdresseFacturation(): ?string
  997.     {
  998.         if($this->getAddressTuteur2() && $this->ComplementAdresseFacturation === null){
  999.             return $this->addressTuteur2;
  1000.         }
  1001.         return $this->ComplementAdresseFacturation;
  1002.     }
  1003.     public function setComplementAdresseFacturation(?string $ComplementAdresseFacturation): self
  1004.     {
  1005.         $this->ComplementAdresseFacturation $ComplementAdresseFacturation;
  1006.         return $this;
  1007.     }
  1008.     public function getCodePostalFacturation(): ?string
  1009.     {
  1010.         if($this->getZipcode() && $this->codePostalFacturation === null){
  1011.             return $this->zipcode;
  1012.         }
  1013.         return $this->codePostalFacturation;
  1014.     }
  1015.     public function setCodePostalFacturation(?string $codePostalFacturation): self
  1016.     {
  1017.         $this->codePostalFacturation $codePostalFacturation;
  1018.         return $this;
  1019.     }
  1020.     public function getVilleFacturation(): ?string
  1021.     {
  1022.         if($this->getCity() && $this->villeFacturation === null){
  1023.             return $this->city;
  1024.         }
  1025.         return $this->villeFacturation;
  1026.     }
  1027.     public function setVilleFacturation(?string $villeFacturation): self
  1028.     {
  1029.         $this->villeFacturation $villeFacturation;
  1030.         return $this;
  1031.     }
  1032.     public function getNomFacturation(): ?string
  1033.     {
  1034.         if($this->getNomTuteur() && $this->nomFacturation === null){
  1035.             return $this->nomTuteur;
  1036.         }
  1037.         return $this->nomFacturation;
  1038.     }
  1039.     public function setNomFacturation(?string $nomFacturation): self
  1040.     {
  1041.         $this->nomFacturation $nomFacturation;
  1042.         return $this;
  1043.     }
  1044.     public function getPrenomFacturation(): ?string
  1045.     {
  1046.         if($this->getPrenomTuteur() && $this->prenomFacturation === null){
  1047.             return $this->prenomTuteur;
  1048.         }
  1049.         return $this->prenomFacturation;
  1050.     }
  1051.     public function setPrenomFacturation(?string $prenomFacturation): self
  1052.     {
  1053.         $this->prenomFacturation $prenomFacturation;
  1054.         return $this;
  1055.     }
  1056.     public function getCiviliteFacturation(): ?string
  1057.     {
  1058.         if($this->getCivilite() && $this->civiliteFacturation === null){
  1059.             return $this->civilite;
  1060.         }
  1061.         return $this->civiliteFacturation;
  1062.     }
  1063.     public function setCiviliteFacturation(?string $civiliteFacturation): self
  1064.     {
  1065.         $this->civiliteFacturation $civiliteFacturation;
  1066.         return $this;
  1067.     }
  1068. }