src/Entity/WorkContract.php line 12

Open in your IDE?
  1. <?php
  2. namespace App\Entity;
  3. use Doctrine\ORM\Mapping as ORM;
  4. use App\Entity\Company;
  5. /**
  6.  * Contrat client
  7.  *
  8.  * @ORM\Table()
  9.  * @ORM\Entity
  10.  */
  11. class WorkContract
  12. {
  13.     const TYPE_COIFFURE 'coiffure';
  14.     const TYPE_ESTHETIQUE 'esthetique';
  15.     const TYPE_CONTRAT_CDI 'cdi';
  16.     const TYPE_CONTRAT_CDD 'cdd';
  17.     const TYPE_CONTRAT_INTERIM 'interim';
  18.     const TYPE_CONTRAT_APPRENTISSAGE 'apprentissage';
  19.     const TYPE_CONTRAT_PROFESSIONNALISATION 'professionnalisation';
  20.     const TYPE_CONTRAT_STAGIERE 'stagiere';
  21.     const PE_DUREE_1_MOIS 0;
  22.     const PE_DUREE_1_MOIS_R =1;
  23.     const PE_DUREE_2_MOIS 2;
  24.     const PE_DUREE_2_MOIS_R 3;
  25.     const PE_DUREE_3_MOIS 4;
  26.     const PE_DUREE_3_MOIS_R 5;
  27.     const MOTIF_FIN_DEMISSION 0;
  28.     const MOTIF_FIN_RUPTURE_PE_EMPLOYEUR 1;
  29.     const MOTIF_FIN_RUPTURE_PE_SALARIE 2;
  30.     const MOTIF_FIN_RUPTURE_CO 3;
  31.     const MOTIF_FIN_LICENCIEMENT 4;
  32.     const MOTIF_FIN_FIN_CDD 5;
  33.     const TYPE_RDV_PERIODIQUE 'periodique';
  34.     const TYPE_RDV_FAMILLE 'famille';
  35.     const TYPE_RDV_RESIDENT 'resident';
  36.     const STATUS_EN_COURS 0;
  37.     const STATUS_SIGNE 1;
  38.     const STATUS_TERMINE 2;
  39.   public function __toString()
  40.   {
  41.     return (string) $this->id;;
  42.   }
  43.   /**
  44.      * @var int
  45.      *
  46.      * @ORM\Column(name="id", type="integer", nullable=false)
  47.      * @ORM\Id
  48.      * @ORM\GeneratedValue(strategy="IDENTITY")
  49.      */
  50.     private $id;
  51.     /**
  52.      * @ORM\ManyToOne(targetEntity=Company::class)
  53.      * @ORM\JoinColumn(name="company_id", referencedColumnName="id")
  54.      *
  55.      */
  56.     protected $company;
  57.     /**
  58.      * @ORM\Column(name="qualification", type="string", nullable=true)
  59.      */
  60.     private $qualification;
  61.     /**
  62.      * @ORM\Column(name="typeContrat", type="string", nullable=true)
  63.      */
  64.     private $typeContrat;
  65.     /**
  66.      * @ORM\Column(name="date_entree", type="string", nullable=true)
  67.      */
  68.     private $date_entree;
  69.     /**
  70.      * @ORM\Column(name="niveau", type="string", nullable=true)
  71.      */
  72.     private $niveau;
  73.     /**
  74.      * @ORM\Column(name="echelon", type="string", nullable=true)
  75.      */
  76.     private $echelon;
  77.     /**
  78.      * @ORM\Column(name="date_fin_periode_essai", type="string", nullable=true)
  79.      */
  80.     private $date_fin_periode_essai;
  81.     /**
  82.      * @ORM\Column(name="date_fin_contrat", type="string", nullable=true)
  83.      */
  84.     private $date_fin_contrat;
  85.     /**
  86.      * @ORM\Column(name="motif_fin", type="string", nullable=true)
  87.      */
  88.     private $motif_fin;
  89.     /**
  90.      * @ORM\Column(name="anciennete", type="string", nullable=true)
  91.      */
  92.     private $anciennete;
  93.     /**
  94.      * @ORM\Column(name="regime", type="string", nullable=true)
  95.      */
  96.     private $regime;
  97.     /**
  98.      * @ORM\Column(name="date_debut_pe", type="string", nullable=true)
  99.      */
  100.     private $date_debut_pe;
  101.     /**
  102.      * @ORM\Column(name="date_fin_pe", type="string", nullable=true)
  103.      */
  104.     private $date_fin_pe;
  105.     /**
  106.      * @ORM\Column(name="pe_duree", type="string", nullable=true)
  107.      */
  108.     private $pe_duree;
  109.     /**
  110.      * @ORM\Column(name="pe_renouveller", type="boolean", nullable=true)
  111.      */
  112.     private $pe_renouveller;
  113.     /**
  114.      * @ORM\Column(name="nb_heures_hebdo_max", type="float", nullable=true)
  115.      */
  116.     private $nb_heures_hebdo_max;
  117.     /**
  118.      * @ORM\Column(name="nb_heures_mensuelles_max", type="float", nullable=true)
  119.      */
  120.     private $nb_heures_mensuelles_max;
  121.     /**
  122.      * @ORM\Column(name="taux_horaire_brut", type="float", nullable=true)
  123.      */
  124.     private $taux_horaire_brut;
  125.     /**
  126.      * @ORM\Column(name="salaire_base", type="float", nullable=true)
  127.      */
  128.     private $salaire_base;
  129.     /**
  130.      * @ORM\Column(name="nb_heure_sup_mensuelle", type="float", nullable=true)
  131.      */
  132.     private $nb_heure_sup_mensuelle;
  133.     /**
  134.      * @ORM\Column(name="nb_heure_comp_mensuelle", type="float", nullable=true)
  135.      */
  136.     private $nb_heure_comp_mensuelle;
  137.     /**
  138.      * @ORM\Column(name="type_contrat", type="string", nullable=true)
  139.      */
  140.     private $type_contrat;
  141.     /**
  142.      * @ORM\Column(name="temps_travail", type="string", nullable=true)
  143.      */
  144.     private $temps_travail;
  145.     /**
  146.      * @ORM\Column(name="days_worked", type="array", nullable=true)
  147.      */
  148.     private $days_worked;
  149.     /**
  150.      * @ORM\Column(name="objectif", type="string", nullable=true)
  151.      */
  152.     private $objectif;
  153.     /**
  154.      * @ORM\Column(name="status", type="string", nullable=true)
  155.      */
  156.     private $status;
  157.     /**
  158.      * @ORM\Column(name="pourcentage_prime", type="float", nullable=true)
  159.      */
  160.     private $pourcentage_prime;
  161.     /**
  162.      * @ORM\Column(name="prime", type="float", nullable=true)
  163.      */
  164.     private $prime;
  165.     /**
  166.      * @ORM\Column(name="prime_respect_rdv", type="float", nullable=true)
  167.      */
  168.     private $prime_respect_rdv;
  169.     /**
  170.      * @ORM\Column(name="prime_entretien", type="float", nullable=true)
  171.      */
  172.     private $prime_entretien;
  173.     /**
  174.      * @ORM\Column(name="prime_stock", type="float", nullable=true)
  175.      */
  176.     private $prime_stock;
  177.     /**
  178.      * @ORM\Column(name="variable", type="float", nullable=true)
  179.      */
  180.     private $variable;
  181.     /**
  182.      * @ORM\Column(name="horaire_quotidien", type="text", nullable=true)
  183.      */
  184.     private $horaire_quotidien;
  185.     /**
  186.      * @var string
  187.      *
  188.      * @ORM\Column(name="zoneGeographique", type="string", nullable=true)
  189.      */
  190.     private $zoneGeographique;
  191.     /**
  192.      * @var array
  193.      *
  194.      * @ORM\Column(name="workDays", type="array", nullable=true)
  195.      */
  196.     private $workDays;
  197.     /**
  198.      * @ORM\OneToOne(targetEntity="Intervenant", inversedBy="workContract" )
  199.      */
  200.     protected $intervenant;
  201.     /**
  202.      * @var array
  203.      * 
  204.      * @ORM\Column(name="joursRepos", type="array", nullable=true)
  205.      */
  206.     private $joursRepos;
  207.     /**
  208.      * @return int
  209.      */
  210.     public function getId(): int
  211.              {
  212.                  return $this->id;
  213.              }
  214.     /**
  215.      * @param int $id
  216.      */
  217.     public function setId(int $id): void
  218.              {
  219.                  $this->id $id;
  220.              }
  221.     /**
  222.      * @return mixed
  223.      */
  224.     public function getNbHeuresHebdoMax()
  225.              {
  226.                  return $this->nb_heures_hebdo_max;
  227.              }
  228.     /**
  229.      * @param mixed $nb_heures_hebdo_max
  230.      */
  231.     public function setNbHeuresHebdoMax($nb_heures_hebdo_max): void
  232.              {
  233.                  $this->nb_heures_hebdo_max $nb_heures_hebdo_max;
  234.              }
  235.     /**
  236.      * @return mixed
  237.      */
  238.     public function getNbHeuresMensuellesMax()
  239.              {
  240.                  return $this->nb_heures_mensuelles_max;
  241.              }
  242.     /**
  243.      * @param mixed $nb_heures_mensuelles_max
  244.      */
  245.     public function setNbHeuresMensuellesMax($nb_heures_mensuelles_max): void
  246.              {
  247.                  $this->nb_heures_mensuelles_max $nb_heures_mensuelles_max;
  248.              }
  249.     /**
  250.      * @return mixed
  251.      */
  252.     public function getTauxHoraireBrut()
  253.              {
  254.                  return $this->taux_horaire_brut;
  255.              }
  256.     /**
  257.      * @param mixed $taux_horaire_brut
  258.      */
  259.     public function setTauxHoraireBrut($taux_horaire_brut): void
  260.              {
  261.                  $this->taux_horaire_brut $taux_horaire_brut;
  262.              }
  263.     /**
  264.      * @return mixed
  265.      */
  266.     public function getSalaireBase()
  267.              {
  268.                  return $this->salaire_base;
  269.              }
  270.     /**
  271.      * @param mixed $salaire_base
  272.      */
  273.     public function setSalaireBase($salaire_base): void
  274.              {
  275.                  $this->salaire_base $salaire_base;
  276.              }
  277.     /**
  278.      * @return mixed
  279.      */
  280.     public function getNbHeureSupMensuelle()
  281.              {
  282.                  return $this->nb_heure_sup_mensuelle;
  283.              }
  284.     /**
  285.      * @param mixed $nb_heure_sup_mensuelle
  286.      */
  287.     public function setNbHeureSupMensuelle($nb_heure_sup_mensuelle): void
  288.              {
  289.                  $this->nb_heure_sup_mensuelle $nb_heure_sup_mensuelle;
  290.              }
  291.     /**
  292.      * @return mixed
  293.      */
  294.     public function getNbHeureCompMensuelle()
  295.              {
  296.                  return $this->nb_heure_comp_mensuelle;
  297.              }
  298.     /**
  299.      * @param mixed $nb_heure_comp_mensuelle
  300.      */
  301.     public function setNbHeureCompMensuelle($nb_heure_comp_mensuelle): void
  302.              {
  303.                  $this->nb_heure_comp_mensuelle $nb_heure_comp_mensuelle;
  304.              }
  305.     /**
  306.      * @return mixed
  307.      */
  308.     public function getTypeContrat()
  309.              {
  310.                  return $this->type_contrat;
  311.              }
  312.     /**
  313.      * @param mixed $type_contrat
  314.      */
  315.     public function setTypeContrat($type_contrat): void
  316.              {
  317.                  $this->type_contrat $type_contrat;
  318.              }
  319.     /**
  320.      * @return mixed
  321.      */
  322.     public function getDaysWorked()
  323.              {
  324.                  return $this->days_worked;
  325.              }
  326.     /**
  327.      * @param mixed $days_worked
  328.      */
  329.     public function setDaysWorked($days_worked): void
  330.              {
  331.                  $this->days_worked $days_worked;
  332.              }
  333.     /**
  334.      * @return mixed
  335.      */
  336.     public function getObjectif()
  337.              {
  338.                  return $this->objectif;
  339.              }
  340.     /**
  341.      * @param mixed $objectif
  342.      */
  343.     public function setObjectif($objectif): void
  344.              {
  345.                  $this->objectif $objectif;
  346.              }
  347.     /**
  348.      * @return mixed
  349.      */
  350.     public function getPourcentagePrime()
  351.              {
  352.                  return $this->pourcentage_prime;
  353.              }
  354.     /**
  355.      * @param mixed $pourcentage_prime
  356.      */
  357.     public function setPourcentagePrime($pourcentage_prime): void
  358.              {
  359.                  $this->pourcentage_prime $pourcentage_prime;
  360.              }
  361.     /**
  362.      * @return mixed
  363.      */
  364.     public function getPrime()
  365.              {
  366.                  return $this->prime;
  367.              }
  368.     /**
  369.      * @param mixed $prime
  370.      */
  371.     public function setPrime($prime): void
  372.              {
  373.                  $this->prime $prime;
  374.              }
  375.     /**
  376.      * @return mixed
  377.      */
  378.     public function getHoraireQuotidien()
  379.              {
  380.                  return $this->horaire_quotidien;
  381.              }
  382.     /**
  383.      * @param mixed $horaire_quotidien
  384.      */
  385.     public function setHoraireQuotidien($horaire_quotidien): void
  386.              {
  387.                  $this->horaire_quotidien $horaire_quotidien;
  388.              }
  389.     /**
  390.      * @return Company
  391.      */
  392.     public function getEmployeur()
  393.              {
  394.                  return $this->company;
  395.              }
  396.     /**
  397.      * @param mixed $employeur
  398.      */
  399.     public function setEmployeur($employeur): void
  400.              {
  401.                  $this->company $employeur;
  402.              }
  403.     /**
  404.      * @return mixed
  405.      */
  406.     public function getDateEntree()
  407.              {
  408.                  return $this->date_entree;
  409.              }
  410.     /**
  411.      * @param mixed $date_entree
  412.      */
  413.     public function setDateEntree($date_entree): void
  414.              {
  415.                  $this->date_entree $date_entree;
  416.              }
  417.     /**
  418.      * @return mixed
  419.      */
  420.     public function getNiveau()
  421.              {
  422.                  return $this->niveau;
  423.              }
  424.     /**
  425.      * @param mixed $niveau
  426.      */
  427.     public function setNiveau($niveau): void
  428.              {
  429.                  $this->niveau $niveau;
  430.              }
  431.     /**
  432.      * @return mixed
  433.      */
  434.     public function getEchelon()
  435.              {
  436.                  return $this->echelon;
  437.              }
  438.     /**
  439.      * @param mixed $echelon
  440.      */
  441.     public function setEchelon($echelon): void
  442.              {
  443.                  $this->echelon $echelon;
  444.              }
  445.     /**
  446.      * @return mixed
  447.      */
  448.     public function getDateFinPeriodeEssai()
  449.              {
  450.                  return $this->date_fin_periode_essai;
  451.              }
  452.     /**
  453.      * @param mixed $date_fin_periode_essai
  454.      */
  455.     public function setDateFinPeriodeEssai($date_fin_periode_essai): void
  456.              {
  457.                  $this->date_fin_periode_essai $date_fin_periode_essai;
  458.              }
  459.     /**
  460.      * @return mixed
  461.      */
  462.     public function getDateFinContrat()
  463.              {
  464.                  return $this->date_fin_contrat;
  465.              }
  466.     /**
  467.      * @param mixed $date_fin_contrat
  468.      */
  469.     public function setDateFinContrat($date_fin_contrat): void
  470.              {
  471.                  $this->date_fin_contrat $date_fin_contrat;
  472.              }
  473.     /**
  474.      * @return mixed
  475.      */
  476.     public function getMotifFin()
  477.              {
  478.                  return $this->motif_fin;
  479.              }
  480.     /**
  481.      * @param mixed $motif_fin
  482.      */
  483.     public function setMotifFin($motif_fin): void
  484.              {
  485.                  $this->motif_fin $motif_fin;
  486.              }
  487.     /**
  488.      * @return mixed
  489.      */
  490.     public function getAnciennete()
  491.              {
  492.                  return $this->anciennete;
  493.              }
  494.     /**
  495.      * @param mixed $anciennete
  496.      */
  497.     public function setAnciennete($anciennete): void
  498.              {
  499.                  $this->anciennete $anciennete;
  500.              }
  501.     /**
  502.      * @return mixed
  503.      */
  504.     public function getRegime()
  505.              {
  506.                  return $this->regime;
  507.              }
  508.     /**
  509.      * @param mixed $regime
  510.      */
  511.     public function setRegime($regime): void
  512.              {
  513.                  $this->regime $regime;
  514.              }
  515.     /**
  516.      * @return mixed
  517.      */
  518.     public function getDateDebutPe()
  519.              {
  520.                  return $this->date_debut_pe;
  521.              }
  522.     /**
  523.      * @param mixed $date_debut_pe
  524.      */
  525.     public function setDateDebutPe($date_debut_pe): void
  526.              {
  527.                  $this->date_debut_pe $date_debut_pe;
  528.              }
  529.     /**
  530.      * @return mixed
  531.      */
  532.     public function getDateFinPe()
  533.              {
  534.                  return $this->date_fin_pe;
  535.              }
  536.     /**
  537.      * @param mixed $date_fin_pe
  538.      */
  539.     public function setDateFinPe($date_fin_pe): void
  540.              {
  541.                  $this->date_fin_pe $date_fin_pe;
  542.              }
  543.     /**
  544.      * @return mixed
  545.      */
  546.     public function getPeDuree()
  547.              {
  548.                  return $this->pe_duree;
  549.              }
  550.     /**
  551.      * @param mixed $pe_duree
  552.      */
  553.     public function setPeDuree($pe_duree): void
  554.              {
  555.                  $this->pe_duree $pe_duree;
  556.              }
  557.     /**
  558.      * @return mixed
  559.      */
  560.     public function getPeRenouveller()
  561.              {
  562.                  return $this->pe_renouveller;
  563.              }
  564.     /**
  565.      * @param mixed $pe_renouveller
  566.      */
  567.     public function setPeRenouveller($pe_renouveller): void
  568.              {
  569.                  $this->pe_renouveller $pe_renouveller;
  570.              }
  571.     /**
  572.      * @return mixed
  573.      */
  574.     public function getQualification()
  575.              {
  576.                  return $this->qualification;
  577.              }
  578.     /**
  579.      * @param mixed $qualification
  580.      */
  581.     public function setQualification($qualification): void
  582.              {
  583.                  $this->qualification $qualification;
  584.              }
  585.     /**
  586.      * @return mixed
  587.      */
  588.     public function getStatus()
  589.              {
  590.                  return $this->status;
  591.              }
  592.     /**
  593.      * @param mixed $status
  594.      */
  595.     public function setStatus($status): void
  596.              {
  597.                  $this->status $status;
  598.              }
  599.     /**
  600.      * @return array
  601.      */
  602.     public function getWorkDays(): ?array
  603.              {
  604.                  return $this->workDays;
  605.              }
  606.     /**
  607.      * @param array $workDays
  608.      */
  609.     public function setWorkDays(array $workDays): void
  610.              {
  611.                  $this->workDays $workDays;
  612.              }
  613.     /**
  614.      * @return mixed
  615.      */
  616.     public function getIntervenant()
  617.              {
  618.                  return $this->intervenant;
  619.              }
  620.     /**
  621.      * @param mixed $intervenant
  622.      */
  623.     public function setIntervenant($intervenant): void
  624.              {
  625.                  $this->intervenant $intervenant;
  626.              }
  627.     /**
  628.      * @return mixed
  629.      */
  630.     public function getTempsTravail()
  631.              {
  632.                  return $this->temps_travail;
  633.              }
  634.     /**
  635.      * @param mixed $temps_travail
  636.      */
  637.     public function setTempsTravail($temps_travail): void
  638.              {
  639.                  $this->temps_travail $temps_travail;
  640.              }
  641.     /**
  642.      * @return string
  643.      */
  644.     public function getZoneGeographique()
  645.              {
  646.                  return $this->zoneGeographique;
  647.              }
  648.     /**
  649.      * @param string $zoneGeographique
  650.      */
  651.     public function setZoneGeographique(string $zoneGeographique): void
  652.              {
  653.                  $this->zoneGeographique $zoneGeographique;
  654.              }
  655.     /**
  656.      * @return mixed
  657.      */
  658.     public function getVariable()
  659.              {
  660.                  return $this->variable;
  661.              }
  662.     /**
  663.      * @param mixed $variable
  664.      */
  665.     public function setVariable($variable): void
  666.              {
  667.                  $this->variable $variable;
  668.              }
  669.     /**
  670.      * @return mixed
  671.      */
  672.     public function getPrimeRespectRdv()
  673.              {
  674.                  return $this->prime_respect_rdv;
  675.              }
  676.     /**
  677.      * @param mixed $prime_respect_rdv
  678.      */
  679.     public function setPrimeRespectRdv($prime_respect_rdv): void
  680.              {
  681.                  $this->prime_respect_rdv $prime_respect_rdv;
  682.              }
  683.     /**
  684.      * @return mixed
  685.      */
  686.     public function getPrimeEntretien()
  687.              {
  688.                  return $this->prime_entretien;
  689.              }
  690.     /**
  691.      * @param mixed $prime_entretien
  692.      */
  693.     public function setPrimeEntretien($prime_entretien): void
  694.              {
  695.                  $this->prime_entretien $prime_entretien;
  696.              }
  697.     /**
  698.      * @return mixed
  699.      */
  700.     public function getPrimeStock()
  701.              {
  702.                  return $this->prime_stock;
  703.              }
  704.     /**
  705.      * @param mixed $prime_stock
  706.      */
  707.     public function setPrimeStock($prime_stock): void
  708.              {
  709.                  $this->prime_stock $prime_stock;
  710.              }
  711.     public function getJoursRepos(): ?array
  712.     {
  713.         return $this->joursRepos;
  714.     }
  715.     public function setJoursRepos(?array $joursRepos): self
  716.     {
  717.         $this->joursRepos $joursRepos;
  718.         return $this;
  719.     }
  720. }