src/Entity/Docteur.php line 39

Open in your IDE?
  1. <?php
  2. namespace App\Entity;
  3. use Doctrine\Common\Collections\Collection;
  4. use Doctrine\DBAL\Types\Types;
  5. use Doctrine\ORM\Mapping as ORM;
  6. use Doctrine\Common\Collections\ArrayCollection;
  7. use ApiPlatform\Core\Annotation\ApiResource;
  8. use App\Entity\User;
  9. use App\Entity\Planning;
  10. use App\Entity\SpecialiteDocteur;
  11. use App\Entity\Disponibilite;
  12. use Symfony\Component\Validator\Constraints as Assert;
  13. use Symfony\Component\Serializer\Annotation\Groups;
  14. use Symfony\Component\HttpFoundation\File\File;
  15. use Vich\UploaderBundle\Mapping\Annotation as Vich;
  16. use App\Entity\Media;
  17. use App\Repository\DocteurRepository;
  18. use ApiPlatform\Core\Annotation\ApiFilter;
  19. use ApiPlatform\Core\Bridge\Doctrine\Orm\Filter\BooleanFilter;
  20. /**
  21.  * @author maxime GASTALDO <maxime.gastaldo@gmail.com>
  22.  * @ORM\Table()
  23.  * @Vich\Uploadable
  24.  * @ORM\Entity(repositoryClass=DocteurRepository::class)
  25.  * @ApiResource(
  26.  *     attributes={
  27.  *       "pagination_client_items_per_page"=true,
  28.  *       "filters"={"docteur.order", "docteur.search", "docteur.boolean", "docteur.numeric", "docteur.date"},
  29.  *       "force_eager"=false,
  30.  *       "normalization_context"={"groups"={"read", "user", "media"}},
  31.  *       "denormalization_context"={"groups"={"read", "user", "media"}}
  32.  *     }
  33.  * )
  34.  *  @ApiFilter(BooleanFilter::class, properties={"actif", "working", "urgence", "abonne", "specialite.urgentiste"})
  35.  */
  36. class Docteur
  37. {
  38.     /**
  39.      *
  40.      * @ORM\Id
  41.      * @ORM\Column(type="integer")
  42.      * @ORM\GeneratedValue(strategy="AUTO")
  43.      *
  44.      * @Groups({"read"})
  45.      */
  46.     private $id;
  47.     /**
  48.      * @var text
  49.      *
  50.      * @ORM\Column(name="adresse", type="string", length=255)
  51.      * @Assert\NotBlank()
  52.      * @Groups({"read"})
  53.      */
  54.     private $adresse;
  55.     /**
  56.      *
  57.      * @ORM\Column(name="complement", type="text", nullable=true)
  58.      *
  59.      * @Groups({"read"})
  60.      */
  61.     private $complement;
  62.     /**
  63.      *
  64.      * @ORM\Column(name="identifiant", type="string", length=25, nullable=true)
  65.      * @Groups({"read"})
  66.      */
  67.     private $identifiant;
  68.     /**
  69.      *
  70.      * @ORM\Column(name="siret", type="string", nullable=true)
  71.      * @Groups({"read"})
  72.      */
  73.     private $siret;
  74.     /**
  75.      *
  76.      * @ORM\Column(name="city", type="string", nullable=true)
  77.      * @Groups({"read"})
  78.      */
  79.     private $city;
  80.     /**
  81.      *
  82.      * @ORM\Column(name="nom_remplacant", type="string", nullable=true)
  83.      * @Groups({"read"})
  84.      */
  85.     private $nomRemplacant;
  86.     /**
  87.      *
  88.      * @ORM\Column(name="prenom_remplacant", type="string", nullable=true)
  89.      * @Groups({"read"})
  90.      */
  91.     private $prenomRemplacant;
  92.     /**
  93.      *
  94.      * @ORM\Column(name="adresse_remplacant", type="string", nullable=true)
  95.      * @Groups({"read"})
  96.      */
  97.     private $adresseRemplacant;
  98.     /**
  99.      *
  100.      * @ORM\Column(name="code_postal_remplacant", type="string", nullable=true)
  101.      * @Assert\Length(
  102.      *      min = 5,
  103.      *      max = 5
  104.      * )
  105.      * @Groups({"read"})
  106.      */
  107.     private $codePostalRemplacant;
  108.     /**
  109.      *
  110.      * @ORM\Column(name="ville_remplacant", type="string", nullable=true)
  111.      * @Groups({"read"})
  112.      */
  113.     private $villeRemplacant;
  114.     /**
  115.      *
  116.      * @ORM\Column(name="rpps_remplacant", type="string", nullable=true)
  117.      * @Groups({"read"})
  118.      */
  119.     private $rppsRemplacant;
  120.     /**
  121.      *
  122.      * @ORM\Column(name="adeli_remplacant", type="string", nullable=true)
  123.      * @Groups({"read"})
  124.      */
  125.     private $adeliRemplacant;
  126.     /**
  127.      *
  128.      * @ORM\Column(name="codePostal", type="string", length=5, nullable=true)
  129.      * @Assert\Length(
  130.      *      min = 5,
  131.      *      max = 5
  132.      * )
  133.      * @Groups({"read"})
  134.      */
  135.     private $codePostal;
  136.    /**
  137.     *
  138.     * @ORM\OneToOne(targetEntity=Media::class)
  139.     */
  140.    private $photo;
  141.    /**
  142.     *
  143.     * @ORM\OneToOne(targetEntity=Media::class)
  144.     */
  145.    private $identite;
  146.    /**
  147.     *
  148.     * @ORM\OneToOne(targetEntity=Media::class)
  149.     */
  150.    private $rib;
  151.     /**
  152.      *
  153.      * @var User
  154.      * @ORM\OneToOne(
  155.      *   targetEntity="App\Entity\User",
  156.      *   cascade={"persist", "remove"},
  157.      *   mappedBy="docteur"
  158.      * )
  159.      * @Groups({"read"})
  160.      */
  161.     private $user;
  162.     /**
  163.      *
  164.      * @ORM\Column(name="honoraire", type="text", nullable=true)
  165.      *
  166.      * @Groups({"read"})
  167.      */
  168.     private $honoraire;
  169.     /**
  170.      *
  171.      * @ORM\Column(name="disponibilite", type="json", nullable=true)
  172.      *
  173.      * @Groups({"read"})
  174.      */
  175.     private $disponiblite;
  176.     /**
  177.      *
  178.      * @ORM\Column(name="deletedDisponiblite", type="json", nullable=true)
  179.      *
  180.      * @Groups({"read"})
  181.      */
  182.     private $deletedDisponiblite;
  183.     /**
  184.      * @var string
  185.      *
  186.      * @ORM\Column(name="startWork", type="string", nullable=true)
  187.      *
  188.      * @Groups({"read"})
  189.      */
  190.     private $startWork;
  191.     /**
  192.      * @var string
  193.      *
  194.      * @ORM\Column(name="endWork", type="string", nullable=true)
  195.      *
  196.      * @Groups({"read"})
  197.      */
  198.     private $endWork;
  199.     /**
  200.      * @var string
  201.      *
  202.      * @ORM\Column(name="startPause", type="string", nullable=true)
  203.      *
  204.      * @Groups({"read"})
  205.      */
  206.     private $startPause;
  207.     /**
  208.      * @var string
  209.      *
  210.      * @ORM\Column(name="endPause", type="string", nullable=true)
  211.      *
  212.      * @Groups({"read"})
  213.      */
  214.     private $endPause;
  215.     /**
  216.      *
  217.      * @ORM\Column(name="presentation", type="text", nullable=true)
  218.      *
  219.      * @Groups({"read"})
  220.      */
  221.     private $presentation;
  222.     /**
  223.      * @var string
  224.      *
  225.      * @ORM\Column(name="formation", type="text", nullable=true)
  226.      *
  227.      * @Groups({"read"})
  228.      */
  229.     private $formation;
  230.     /**
  231.      * @var int
  232.      *
  233.      * @ORM\Column(name="noteSite", type="integer", nullable=true)
  234.      *
  235.      * @Groups({"read"})
  236.      */
  237.     private $noteSite;
  238.     /**
  239.      * @var int
  240.      *
  241.      * @ORM\Column(name="gainAttente", type="integer", nullable=true)
  242.      *
  243.      * @Groups({"read"})
  244.      */
  245.     private $gainAttente;
  246.     /**
  247.      * @var int
  248.      *
  249.      * @ORM\Column(name="commission", type="integer", nullable=true)
  250.      *
  251.      * @Groups({"read"})
  252.      */
  253.     private $commission;
  254.     /**
  255.      * @deprecated
  256.      *
  257.      * @ORM\Column(name="urlVisio", type="string", length=255, nullable=true)
  258.      * @Groups({"read"})
  259.      */
  260.     private $urlVisio;
  261.     /**
  262.      *
  263.      * @ORM\Column(name="urlClientVisio", type="string", length=255, nullable=true)
  264.      * @Groups({"read"})
  265.      */
  266.     private $urlClientVisio;
  267.     /**
  268.      *
  269.      * @ORM\Column(name="urlDocteurVisio", type="string", length=255, nullable=true)
  270.      * @Groups({"read"})
  271.      */
  272.     private $urlDocteurVisio;
  273.     /**
  274.      * @var SpecialiteDocteur
  275.      *
  276.      * @ORM\ManyToOne(targetEntity=SpecialiteDocteur::class)
  277.      * @ORM\JoinColumn(onDelete="SET NULL")
  278.      * @Groups({"read"})
  279.      */
  280.     private $specialite;
  281.     /**
  282.      * @var ArrayCollection
  283.      *
  284.      * @ORM\ManyToMany(targetEntity="App\Entity\Planning", cascade={"persist"}, orphanRemoval=true)
  285.      * @Groups({"read"})
  286.      */
  287.     private $planning;
  288.     /**
  289.      * @var float
  290.      *
  291.      * @ORM\Column(type="string", length=50, nullable=true)
  292.      * @Groups({"read"})
  293.      */
  294.     private $latitude;
  295.     /**
  296.      * @var float
  297.      *
  298.      * @ORM\Column(type="string", length=50, nullable=true)
  299.      * @Groups({"read"})
  300.      */
  301.     private $longitude;
  302.     /**
  303.      * @var bool
  304.      *
  305.      * @ORM\Column(type="boolean", nullable=true)
  306.      * @Groups({"read"})
  307.      */
  308.     private $working true;
  309.     /**
  310.      * @var bool
  311.      *
  312.      * @ORM\Column(type="boolean", nullable=true)
  313.      * @Groups({"read"})
  314.      */
  315.     private $abonne;
  316.     /**
  317.      * @var bool
  318.      * FONT DE LA CONSULTATIONS DOMICILE
  319.      * @ORM\Column(type="boolean", nullable=true)
  320.      * @Groups({"read"})
  321.      */
  322.     private $urgence false;
  323.     /**
  324.      * @var bool
  325.      *
  326.      * @ORM\Column(type="boolean", nullable=true)
  327.      * @Groups({"read"})
  328.      */
  329.     private $visio;
  330.     /**
  331.      * @var bool
  332.      *
  333.      * @ORM\Column(type="boolean", nullable=true, options={"default":false})
  334.      * @Groups({"read"})
  335.      */
  336.     private $activationPlateforme false;
  337.     /**
  338.      * @var datetime
  339.      *
  340.      * @ORM\Column(name="dateInfo", type="date", nullable=true)
  341.      *
  342.      */
  343.     private $dateInfo;
  344.     /**
  345.      * @var bool
  346.      *
  347.      * @ORM\Column(name="actif", type="boolean")
  348.      * @Groups({"read"})
  349.      */
  350.     private $actif;
  351.     /**
  352.      * @var bool
  353.      *
  354.      * @ORM\Column(type="boolean" , options={"default":true})
  355.      * @Groups({"read"})
  356.      */
  357.     private $emailNotification false;
  358.     /**
  359.      * @var string
  360.      *
  361.      * @ORM\Column(type="string", nullable=true)
  362.      */
  363.     private $stripeConnectAccount;
  364.     /**
  365.      * @ORM\OneToMany(targetEntity=Disponibilite::class, mappedBy="docteur")
  366.      */
  367.     private $disponibilites;
  368.     /**
  369.      * @ORM\Column(type="text", nullable=true)
  370.      * @var string
  371.      */
  372.     private $signatureBase64;
  373.     /**
  374.      * @Vich\UploadableField(mapping="docteur_signatures", fileNameProperty="signature")
  375.      * @var File
  376.      */
  377.     private $signatureFile;
  378.     /**
  379.      * @var bool
  380.      *
  381.      * @ORM\Column(type="boolean", nullable=true)
  382.      * @Groups({"read"})
  383.      */
  384.     private $medecinRemplacant false;
  385.     /**
  386.      * @var float
  387.      *
  388.      * @ORM\Column(type="string", length=50, nullable=true, options={"default":0})
  389.      * @Groups({"read"})
  390.      */
  391.     private $marge;
  392.     /**
  393.      * Constructor of Docteur Entity
  394.      */
  395.     public function __construct()
  396.     {
  397.         $this->noteSite 5;
  398.         $this->gainAttente 0;
  399.         $this->commission 0;
  400.         $this->planning = new ArrayCollection();
  401.         $this->disponibilites = new ArrayCollection();
  402.         $this->working false;
  403.         $this->abonne true;
  404.         $this->urgence false;
  405.         $this->visio false;
  406.         $this->actif true;
  407.         $this->dateInfo = new \DateTime;
  408.     }
  409.     public function __toString()
  410.     {
  411.         return ($this->getUser()) ? $this->getUser()->getUsername() : 'Unknown';
  412.     }
  413.     /**
  414.      * Get id
  415.      *
  416.      * @return integer
  417.      */
  418.     public function getId()
  419.     {
  420.         return $this->id;
  421.     }
  422.     /**
  423.      * Get adresse
  424.      *
  425.      * @return text
  426.      */
  427.     public function getAdresse()
  428.     {
  429.         return $this->adresse;
  430.     }
  431.     /**
  432.      * Set adresse
  433.      *
  434.      * @param text $adresse
  435.      *
  436.      * @return Docteur
  437.      */
  438.     public function setAdresse($adresse)
  439.     {
  440.         $this->adresse $adresse;
  441.         return $this;
  442.     }
  443.     /**
  444.      * Get complement
  445.      *
  446.      * @return text
  447.      */
  448.     public function getComplement()
  449.     {
  450.         return $this->complement;
  451.     }
  452.     /**
  453.      * Set adresse
  454.      *
  455.      * @param text $complement
  456.      *
  457.      * @return Docteur
  458.      */
  459.     public function setComplement($complement)
  460.     {
  461.         $this->complement $complement;
  462.         return $this;
  463.     }
  464.     /**
  465.      * Get identifiant
  466.      *
  467.      * @return text
  468.      */
  469.     public function getIdentifiant()
  470.     {
  471.         return $this->identifiant;
  472.     }
  473.     /**
  474.      * Set adresse
  475.      *
  476.      * @param text $identifiant
  477.      *
  478.      * @return Docteur
  479.      */
  480.     public function setIdentifiant($identifiant)
  481.     {
  482.         $this->identifiant $identifiant;
  483.         return $this;
  484.     }
  485.     /**
  486.      * Get codePostal
  487.      *
  488.      * @return text
  489.      */
  490.     public function getCodePostal()
  491.     {
  492.         return $this->codePostal;
  493.     }
  494.     /**
  495.      * Set codePostal
  496.      *
  497.      * @param text $codePostal
  498.      *
  499.      * @return Docteur
  500.      */
  501.     public function setCodePostal($codePostal)
  502.     {
  503.         $this->codePostal $codePostal;
  504.         return $this;
  505.     }
  506.     /**
  507.      * Get photo
  508.      *
  509.      * @return ArrayCollection
  510.      */
  511.     public function getPhoto()
  512.     {
  513.         return $this->photo;
  514.     }
  515.     /**
  516.      * Set photo
  517.      *
  518.      * @param Media $photo
  519.      *
  520.      * @return Docteur
  521.      */
  522.     public function setPhoto($photo)
  523.     {
  524.         $this->photo $photo;
  525.         return $this;
  526.     }
  527.     /**
  528.      * Get identite
  529.      *
  530.      * @return ArrayCollection
  531.      */
  532.     public function getIdentite()
  533.     {
  534.         return $this->identite;
  535.     }
  536.     /**
  537.      * Set identite
  538.      *
  539.      * @param Media $identite
  540.      *
  541.      * @return Docteur
  542.      */
  543.     public function setIdentite($identite)
  544.     {
  545.         $this->identite $identite;
  546.         return $this;
  547.     }
  548.     /**
  549.      * Get rib
  550.      *
  551.      * @return ArrayCollection
  552.      */
  553.     public function getRib()
  554.     {
  555.         return $this->rib;
  556.     }
  557.     /**
  558.      * Set rib
  559.      *
  560.      * @param Media $rib
  561.      *
  562.      * @return Docteur
  563.      */
  564.     public function setRib($rib)
  565.     {
  566.         $this->rib $rib;
  567.         return $this;
  568.     }
  569.     /**
  570.      * Get honoraire
  571.      *
  572.      * @return text
  573.      */
  574.     public function getHonoraire()
  575.     {
  576.         return $this->honoraire;
  577.     }
  578.     /**
  579.      * Set honoraire
  580.      *
  581.      * @param text $honoraire
  582.      *
  583.      * @return Docteur
  584.      */
  585.     public function setHonoraire($honoraire)
  586.     {
  587.         $this->honoraire $honoraire;
  588.         return $this;
  589.     }
  590.     /**
  591.      * Get presentation
  592.      *
  593.      * @return text
  594.      */
  595.     public function getPresentation()
  596.     {
  597.         return $this->presentation;
  598.     }
  599.     /**
  600.      * Set presentation
  601.      *
  602.      * @param text $presentation
  603.      *
  604.      * @return Docteur
  605.      */
  606.     public function setPresentation($presentation)
  607.     {
  608.         $this->presentation $presentation;
  609.         return $this;
  610.     }
  611.     /**
  612.      * Get formation
  613.      *
  614.      * @return text
  615.      */
  616.     public function getFormation()
  617.     {
  618.         return $this->formation;
  619.     }
  620.     /**
  621.      * Set formation
  622.      *
  623.      * @param text $formation
  624.      *
  625.      * @return Docteur
  626.      */
  627.     public function setFormation($formation)
  628.     {
  629.         $this->formation $formation;
  630.         return $this;
  631.     }
  632.     /**
  633.      * Get noteSite
  634.      *
  635.      * @return integer
  636.      */
  637.     public function getNoteSite()
  638.     {
  639.         return $this->noteSite;
  640.     }
  641.     /**
  642.      * Set noteSite
  643.      *
  644.      * @param int $noteSite
  645.      *
  646.      * @return Docteur
  647.      */
  648.     public function setNoteSite($noteSite)
  649.     {
  650.         $this->noteSite $noteSite;
  651.         return $this;
  652.     }
  653.     /**
  654.      * Get gainAttente
  655.      *
  656.      * @return integer
  657.      */
  658.     public function getGainAttente()
  659.     {
  660.         return $this->gainAttente;
  661.     }
  662.     /**
  663.      * Set gainAttente
  664.      *
  665.      * @param int $gainAttente
  666.      *
  667.      * @return Docteur
  668.      */
  669.     public function setGainAttente($gainAttente)
  670.     {
  671.         $this->gainAttente $gainAttente;
  672.         return $this;
  673.     }
  674.     /**
  675.      * Get commission
  676.      *
  677.      * @return integer
  678.      */
  679.     public function getCommission()
  680.     {
  681.         return $this->commission;
  682.     }
  683.     /**
  684.      * Set commission
  685.      *
  686.      * @param int $commission
  687.      *
  688.      * @return Docteur
  689.      */
  690.     public function setCommission($commission)
  691.     {
  692.         $this->commission $commission;
  693.         return $this;
  694.     }
  695.     /**
  696.      * Get urlVisio
  697.      *
  698.      * @return integer
  699.      */
  700.     public function getUrlVisio()
  701.     {
  702.         return $this->urlVisio;
  703.     }
  704.     /**
  705.      * Set urlVisio
  706.      *
  707.      * @param int $urlVisio
  708.      *
  709.      * @return Docteur
  710.      */
  711.     public function setUrlVisio($urlVisio)
  712.     {
  713.         $this->urlVisio $urlVisio;
  714.         return $this;
  715.     }
  716.     /**
  717.      * Get urlClientVisio
  718.      *
  719.      * @return string
  720.      */
  721.     public function getUrlClientVisio()
  722.     {
  723.         return $this->urlClientVisio;
  724.     }
  725.     /**
  726.      * Set urlClientVisio
  727.      *
  728.      * @param int $urlClientVisio
  729.      *
  730.      * @return Docteur
  731.      */
  732.     public function setUrlClientVisio($urlClientVisio)
  733.     {
  734.         $this->urlClientVisio $urlClientVisio;
  735.         return $this;
  736.     }
  737.     /**
  738.      * Get urlDocteurVisio
  739.      *
  740.      * @return string
  741.      */
  742.     public function getUrlDocteurVisio()
  743.     {
  744.         return $this->urlDocteurVisio;
  745.     }
  746.     /**
  747.      * Set urlDocteurVisio
  748.      *
  749.      * @param int $urlDocteurVisio
  750.      *
  751.      * @return Docteur
  752.      */
  753.     public function setUrlDocteurVisio($urlDocteurVisio)
  754.     {
  755.         $this->urlDocteurVisio $urlDocteurVisio;
  756.         return $this;
  757.     }
  758.     /**
  759.      * Get specialite
  760.      *
  761.      * @return SpecialiteDocteur
  762.      */
  763.     public function getSpecialite()
  764.     {
  765.         return $this->specialite;
  766.     }
  767.     /**
  768.      * Set specialite
  769.      *
  770.      * @param SpecialiteDocteur $specialite
  771.      *
  772.      * @return Docteur
  773.      */
  774.     public function setSpecialite($specialite)
  775.     {
  776.         $this->specialite $specialite;
  777.         return $this;
  778.     }
  779.     /**
  780.      * Get user
  781.      *
  782.      * @return User
  783.      */
  784.     public function getUser()
  785.     {
  786.         return $this->user;
  787.     }
  788.     /**
  789.      * Set user
  790.      *
  791.      * @param User $user
  792.      *
  793.      * @return Docteur
  794.      */
  795.     public function setUser(?User $user): self
  796.     {
  797.         $this->user $user;
  798.         return $this;
  799.     }
  800.     /**
  801.      * Get planning
  802.      *
  803.      * @return \Doctrine\Common\Collections\Collection
  804.      */
  805.     public function getPlanning()
  806.     {
  807.         return $this->planning;
  808.     }
  809.     /**
  810.      * Set planning
  811.      *
  812.      * @param Planning $planning
  813.      *
  814.      * @return Docteur
  815.      */
  816.     public function addPlanning($planning)
  817.     {
  818.         $this->planning[] = $planning;
  819.         return $this;
  820.     }
  821.     /**
  822.      * Set planning
  823.      *
  824.      * @param Planning $planning
  825.      *
  826.      * @return Docteur
  827.      */
  828.     public function removePlanning($planning)
  829.     {
  830.         $this->planning->removeElement($planning);
  831.     }
  832.     /**
  833.      * Set latitude
  834.      *
  835.      * @param float $latitude
  836.      * @return Magasin
  837.      */
  838.     public function setLatitude($latitude)
  839.     {
  840.         $this->latitude $latitude;
  841.         return $this;
  842.     }
  843.     /**
  844.      * Get latitude
  845.      *
  846.      * @return string
  847.      */
  848.     public function getLatitude()
  849.     {
  850.         return $this->latitude;
  851.     }
  852.     /**
  853.      * Get latitude
  854.      * @Groups({"read"})
  855.      *
  856.      * @return float
  857.      */
  858.     public function getLatitudeVal()
  859.     {
  860.         $data str_replace(',','.',$this->latitude);
  861.         return floatval($data);
  862.     }
  863.     /**
  864.      * Set longitude
  865.      *
  866.      * @param float $longitude
  867.      * @return Magasin
  868.      */
  869.     public function setLongitude($longitude)
  870.     {
  871.         $this->longitude $longitude;
  872.         return $this;
  873.     }
  874.     /**
  875.      * Get longitude
  876.      *
  877.      * @return float
  878.      */
  879.     public function getLongitude()
  880.     {
  881.         return $this->longitude;
  882.     }
  883.     /**
  884.      * Get longitude
  885.      * @Groups({"read"})
  886.      *
  887.      * @return string
  888.      */
  889.     public function getLongitudeVal()
  890.     {
  891.         $data str_replace(',','.',$this->longitude);
  892.         return floatval($data);
  893.     }
  894.     /**
  895.      * Get working
  896.      *
  897.      * @return boolean
  898.      */
  899.     public function getWorking()
  900.     {
  901.         return $this->working;
  902.     }
  903.     /**
  904.      * Set working
  905.      *
  906.      * @param bool $working
  907.      *
  908.      * @return Docteur
  909.      */
  910.     public function setWorking($working)
  911.     {
  912.         $this->working $working;
  913.         return $this;
  914.     }
  915.     /**
  916.      * Get abonne
  917.      *
  918.      * @return boolean
  919.      */
  920.     public function getAbonne()
  921.     {
  922.         return $this->abonne;
  923.     }
  924.     /**
  925.      * Set abonne
  926.      *
  927.      * @param bool $abonne
  928.      *
  929.      * @return Docteur
  930.      */
  931.     public function setAbonne($abonne)
  932.     {
  933.         $this->abonne $abonne;
  934.         return $this;
  935.     }
  936.     /**
  937.      * Get urgence
  938.      *
  939.      * @return boolean
  940.      */
  941.     public function getUrgence()
  942.     {
  943.         return $this->urgence;
  944.     }
  945.     /**
  946.      * Set urgence
  947.      *
  948.      * @param bool $urgence
  949.      *
  950.      * @return Docteur
  951.      */
  952.     public function setUrgence($urgence)
  953.     {
  954.         $this->urgence $urgence;
  955.         return $this;
  956.     }
  957.     /**
  958.      * Get visio
  959.      *
  960.      * @return boolean
  961.      */
  962.     public function getVisio()
  963.     {
  964.         return $this->visio;
  965.     }
  966.     /**
  967.      * Set visio
  968.      *
  969.      * @param bool $visio
  970.      *
  971.      * @return Docteur
  972.      */
  973.     public function setVisio($visio)
  974.     {
  975.         $this->visio $visio;
  976.         return $this;
  977.     }
  978.     /**
  979.      * Get dateInfo
  980.      *
  981.      * @return datetime
  982.      */
  983.     public function getDateInfo()
  984.     {
  985.         return $this->dateInfo;
  986.     }
  987.     /**
  988.      * Set dateInfo
  989.      *
  990.      * @param datetime $dateInfo
  991.      *
  992.      * @return Intervention
  993.      */
  994.     public function setDateInfo($dateInfo)
  995.     {
  996.         $this->dateInfo $dateInfo;
  997.         return $this;
  998.     }
  999.     /**
  1000.      * Get getDateInfoInfoString
  1001.      *
  1002.      * @return \DateTime|null
  1003.      * @Groups({"read"})
  1004.      */
  1005.     public function getDateInfoInfoString()
  1006.     {
  1007.         if ($this->dateInfo !== null) {
  1008.             return $this->dateInfo->format('Y-m-d');
  1009.         }
  1010.         return null;
  1011.     }
  1012.     /**
  1013.      * Get actif
  1014.      *
  1015.      * @return boolean
  1016.      */
  1017.     public function getActif()
  1018.     {
  1019.         return $this->actif;
  1020.     }
  1021.     /**
  1022.      * Set actif
  1023.      *
  1024.      * @param bool $actif
  1025.      *
  1026.      * @return Actualite
  1027.      */
  1028.     public function setActif($actif)
  1029.     {
  1030.         $this->actif $actif;
  1031.         return $this;
  1032.     }
  1033.     /**
  1034.      * @return bool
  1035.      */
  1036.     public function isEmailNotification()
  1037.                                {
  1038.                                    return $this->emailNotification;
  1039.                                }
  1040.     /**
  1041.      * @param bool $emailNotification
  1042.      */
  1043.     public function setEmailNotification($emailNotification)
  1044.     {
  1045.         $this->emailNotification $emailNotification;
  1046.     }
  1047.     /**
  1048.      * @return string
  1049.      */
  1050.     public function getStripeConnectAccount()
  1051.     {
  1052.         return $this->stripeConnectAccount;
  1053.     }
  1054.     /**
  1055.      * @param string $stripeConnectAccount
  1056.      */
  1057.     public function setStripeConnectAccount($stripeConnectAccount)
  1058.     {
  1059.         $this->stripeConnectAccount $stripeConnectAccount;
  1060.     }
  1061.     /**
  1062.      * @return mixed
  1063.      */
  1064.     public function getDisponiblite()
  1065.     {
  1066.         return $this->disponiblite;
  1067.     }
  1068.     /**
  1069.      * @param mixed $disponiblite
  1070.      */
  1071.     public function setDisponiblite($disponiblite)
  1072.     {
  1073.         $this->disponiblite $disponiblite;
  1074.     }
  1075.     /**
  1076.      * @return mixed
  1077.      */
  1078.     public function getDeletedDisponiblite()
  1079.     {
  1080.         return $this->deletedDisponiblite;
  1081.     }
  1082.     /**
  1083.      * @param mixed $deletedDisponiblite
  1084.      */
  1085.     public function setDeletedDisponiblite($deletedDisponiblite)
  1086.     {
  1087.         $this->deletedDisponiblite $deletedDisponiblite;
  1088.     }
  1089.     /**
  1090.      * @return Disponibilite[]
  1091.      */
  1092.     public function getDisponibilites()
  1093.     {
  1094.         return $this->disponibilites;
  1095.     }
  1096.     /**
  1097.      * @param mixed $disponibilites
  1098.      */
  1099.     public function setDisponibilites($disponibilites)
  1100.     {
  1101.         $this->disponibilites $disponibilites;
  1102.     }
  1103.     /**
  1104.      * @return mixed
  1105.      */
  1106.     public function getSiret()
  1107.     {
  1108.         return $this->siret;
  1109.     }
  1110.     /**
  1111.      * @param mixed $siret
  1112.      */
  1113.     public function setSiret($siret)
  1114.     {
  1115.         $this->siret $siret;
  1116.     }
  1117.     /**
  1118.      * @return mixed
  1119.      */
  1120.     public function getCity()
  1121.     {
  1122.         return $this->city;
  1123.     }
  1124.     /**
  1125.      * @param mixed $city
  1126.      */
  1127.     public function setCity($city)
  1128.                                {
  1129.                                    $this->city $city;
  1130.                                }
  1131.     /**
  1132.      * @return File
  1133.      */
  1134.     public function getSignatureFile()
  1135.     {
  1136.         return $this->signatureFile;
  1137.     }
  1138.     /**
  1139.      * @param File $signatureFile
  1140.      */
  1141.     public function setSignatureFile($signatureFile)
  1142.     {
  1143.         $this->signatureFile $signatureFile;
  1144.     }
  1145.     /**
  1146.      * @return bool
  1147.      */
  1148.     public function isMedecinRemplacant()
  1149.     {
  1150.         return $this->medecinRemplacant;
  1151.     }
  1152.     /**
  1153.      * @param bool $medecinRemplacant
  1154.      */
  1155.     public function setMedecinRemplacant($medecinRemplacant)
  1156.     {
  1157.         $this->medecinRemplacant $medecinRemplacant;
  1158.     }
  1159.     /**
  1160.      * @return mixed
  1161.      */
  1162.     public function getNomRemplacant()
  1163.     {
  1164.         return $this->nomRemplacant;
  1165.     }
  1166.     /**
  1167.      * @param mixed $nomRemplacant
  1168.      */
  1169.     public function setNomRemplacant($nomRemplacant)
  1170.     {
  1171.         $this->nomRemplacant $nomRemplacant;
  1172.     }
  1173.     /**
  1174.      * @return mixed
  1175.      */
  1176.     public function getPrenomRemplacant()
  1177.     {
  1178.         return $this->prenomRemplacant;
  1179.     }
  1180.     /**
  1181.      * @param mixed $prenomRemplacant
  1182.      */
  1183.     public function setPrenomRemplacant($prenomRemplacant)
  1184.     {
  1185.         $this->prenomRemplacant $prenomRemplacant;
  1186.     }
  1187.     /**
  1188.      * @return mixed
  1189.      */
  1190.     public function getAdresseRemplacant()
  1191.     {
  1192.         return $this->adresseRemplacant;
  1193.     }
  1194.     /**
  1195.      * @param mixed $adresseRemplacant
  1196.      */
  1197.     public function setAdresseRemplacant($adresseRemplacant)
  1198.     {
  1199.         $this->adresseRemplacant $adresseRemplacant;
  1200.     }
  1201.     /**
  1202.      * @return mixed
  1203.      */
  1204.     public function getCodePostalRemplacant()
  1205.     {
  1206.         return $this->codePostalRemplacant;
  1207.     }
  1208.     /**
  1209.      * @param mixed $codePostalRemplacant
  1210.      */
  1211.     public function setCodePostalRemplacant($codePostalRemplacant)
  1212.     {
  1213.         $this->codePostalRemplacant $codePostalRemplacant;
  1214.     }
  1215.     /**
  1216.      * @return mixed
  1217.      */
  1218.     public function getVilleRemplacant()
  1219.     {
  1220.         return $this->villeRemplacant;
  1221.     }
  1222.     /**
  1223.      * @param mixed $villeRemplacant
  1224.      */
  1225.     public function setVilleRemplacant($villeRemplacant)
  1226.     {
  1227.         $this->villeRemplacant $villeRemplacant;
  1228.     }
  1229.     /**
  1230.      * @return mixed
  1231.      */
  1232.     public function getRppsRemplacant()
  1233.     {
  1234.         return $this->rppsRemplacant;
  1235.     }
  1236.     /**
  1237.      * @param mixed $rppsRemplacant
  1238.      */
  1239.     public function setRppsRemplacant($rppsRemplacant)
  1240.     {
  1241.         $this->rppsRemplacant $rppsRemplacant;
  1242.     }
  1243.     /**
  1244.      * @return string
  1245.      */
  1246.     public function getSignatureBase64()
  1247.     {
  1248.         return $this->signatureBase64;
  1249.     }
  1250.     /**
  1251.      * @param string $signatureBase64
  1252.      */
  1253.     public function setSignatureBase64($signatureBase64)
  1254.     {
  1255.         $this->signatureBase64 $signatureBase64;
  1256.     }
  1257.     /**
  1258.      * @return string
  1259.      */
  1260.     public function getStartWork()
  1261.     {
  1262.         return $this->startWork;
  1263.     }
  1264.     /**
  1265.      * @param string $startWork
  1266.      */
  1267.     public function setStartWork($startWork)
  1268.     {
  1269.         $this->startWork $startWork;
  1270.     }
  1271.     /**
  1272.      * @return string
  1273.      */
  1274.     public function getEndWork()
  1275.     {
  1276.         return $this->endWork;
  1277.     }
  1278.     /**
  1279.      * @param string $endWork
  1280.      */
  1281.     public function setEndWork($endWork)
  1282.     {
  1283.         $this->endWork $endWork;
  1284.     }
  1285.     /**
  1286.      * @return string
  1287.      */
  1288.     public function getStartPause()
  1289.     {
  1290.         return $this->startPause;
  1291.     }
  1292.     /**
  1293.      * @param string $startPause
  1294.      */
  1295.     public function setStartPause($startPause)
  1296.     {
  1297.         $this->startPause $startPause;
  1298.     }
  1299.     /**
  1300.      * @return string
  1301.      */
  1302.     public function getEndPause()
  1303.     {
  1304.         return $this->endPause;
  1305.     }
  1306.     /**
  1307.      * @param string $endPause
  1308.      */
  1309.     public function setEndPause($endPause)
  1310.     {
  1311.         $this->endPause $endPause;
  1312.     }
  1313.     /**
  1314.      * @return mixed
  1315.      */
  1316.     public function getAdeliRemplacant()
  1317.     {
  1318.         return $this->adeliRemplacant;
  1319.     }
  1320.     /**
  1321.      * @param mixed $adeliRemplacant
  1322.      */
  1323.     public function setAdeliRemplacant($adeliRemplacant)
  1324.     {
  1325.         $this->adeliRemplacant $adeliRemplacant;
  1326.     }
  1327.     /**
  1328.      * Set marge
  1329.      *
  1330.      * @param string $marge
  1331.      * @return mixed
  1332.      */
  1333.     public function setMarge($marge)
  1334.     {
  1335.         $this->marge $marge;
  1336.         return $this;
  1337.     }
  1338.     /**
  1339.      * Get marge
  1340.      *
  1341.      * @return ?float
  1342.      */
  1343.     public function getMarge()
  1344.     {
  1345.         return $this->marge;
  1346.     }
  1347.     /**
  1348.      * Get activationPlateforme
  1349.      *
  1350.      * @return boolean
  1351.      */
  1352.     public function getActivationPlateforme()
  1353.     {
  1354.         return $this->activationPlateforme;
  1355.     }
  1356.     /**
  1357.      * Set activationPlateforme
  1358.      *
  1359.      * @param bool $activationPlateforme
  1360.      *
  1361.      * @return Docteur
  1362.      */
  1363.     public function setActivationPlateforme($activationPlateforme)
  1364.     {
  1365.         $this->activationPlateforme $activationPlateforme;
  1366.         return $this;
  1367.     }
  1368. }