src/Entity/Client/BillingInfos.php line 17

Open in your IDE?
  1. <?php
  2. namespace App\Entity\Client;
  3. use App\Entity\Company;
  4. use Doctrine\Common\Collections\ArrayCollection;
  5. use Doctrine\ORM\Mapping as ORM;
  6. use App\Entity\ContractProduct;
  7. use PhpOffice\PhpSpreadsheet\Shared\Date;
  8. /**
  9.  * Contrat client
  10.  *
  11.  * @ORM\Table(name="billing_infos")
  12.  * @ORM\Entity
  13.  */
  14. class BillingInfos
  15. {
  16.     const BILLING_MODE_TTC 'ttc';
  17.     const BILLING_MODE_HT 'ht';
  18.     const SEND_MODE_EMAIL 'email';
  19.     const SEND_MODE_COURRIER 'courrier';
  20.     const PAY_MODE_SEPA 'sepa';
  21.     const PAY_MODE_CB 'cb';
  22.     const PAY_MODE_VIREMENT 'virement';
  23.     const PAY_MODE_CHEQUES 'cheques';
  24.     /**
  25.      * @var int
  26.      *
  27.      * @ORM\Column(name="id", type="integer", nullable=false)
  28.      * @ORM\Id
  29.      * @ORM\GeneratedValue(strategy="IDENTITY")
  30.      */
  31.     private $id;
  32.     /**
  33.      * @var Company
  34.      *
  35.      * @ORM\ManyToOne(targetEntity=Company::class)
  36.      * @ORM\JoinColumn(name="company_id", referencedColumnName="id")
  37.      */
  38.     private $company;
  39.     /**
  40.      * @var string
  41.      *
  42.      * @ORM\Column(name="billing_mode", type="string", length=255, nullable=true)
  43.      */
  44.     private $billingMode;
  45.     /**
  46.      * @var string
  47.      *
  48.      * @ORM\Column(type="datetime", nullable=true)
  49.      */
  50.     private $dateSignatureMandat;
  51.     /**
  52.      * @var string
  53.      *
  54.      * @ORM\Column(name="email", type="string", nullable=true)
  55.      */
  56.     private $email;
  57.     /**
  58.      * @var string
  59.      *
  60.      * @ORM\Column(name="phone", type="string", nullable=true)
  61.      */
  62.     private $phone;
  63.     /**
  64.      * @var string
  65.      *
  66.      * @ORM\Column(name="discount", type="float", nullable=true)
  67.      */
  68.     private $discount 0;
  69.     /**
  70.      * @var string
  71.      *
  72.      * @ORM\Column(name="send_mode", type="string", nullable=true)
  73.      */
  74.     private $sendMode =  self::SEND_MODE_COURRIER;
  75.     /**
  76.      * @var string
  77.      *
  78.      * @ORM\Column(name="pay_mode", type="string", nullable=true)
  79.      */
  80.     private $payMode;
  81.     /**
  82.      * @var string
  83.      *
  84.      * @ORM\Column(name="esthetique", type="boolean", nullable=true)
  85.      */
  86.     private $esthetique false;
  87.     /**
  88.      * @var string
  89.      *
  90.      * @ORM\Column(name="account", type="string", nullable=true)
  91.      */
  92.     private $account;
  93.     /**
  94.      * @var string
  95.      *
  96.      * @ORM\Column(name="bankName", type="string", nullable=true)
  97.      */
  98.     private $bankName;
  99.     /**
  100.      * @var string
  101.      *
  102.      * @ORM\Column(name="iban", type="string", nullable=true)
  103.      */
  104.     private $iban;
  105.     /**
  106.      * @var string
  107.      *
  108.      * @ORM\Column(name="bic", type="string", nullable=true)
  109.      */
  110.     private $bic;
  111.     /**
  112.      * @var string
  113.      *
  114.      * @ORM\Column(name="rum", type="string", nullable=true)
  115.      */
  116.     private $rum;
  117.     public function __toString()
  118.     {
  119.         return (string) $this->email;
  120.     }
  121.     /**
  122.      * @return int
  123.      */
  124.     public function getId(): int
  125.     {
  126.         return $this->id;
  127.     }
  128.     /**
  129.      * @param int $id
  130.      */
  131.     public function setId(int $id): void
  132.     {
  133.         $this->id $id;
  134.     }
  135.     /**
  136.      * @return Company
  137.      */
  138.     public function getCompany(): ?Company
  139.     {
  140.         return $this->company;
  141.     }
  142.     /**
  143.      * @param Company $company
  144.      */
  145.     public function setCompany(Company $company): void
  146.     {
  147.         $this->company $company;
  148.     }
  149.     /**
  150.      * @return string
  151.      */
  152.     public function getBillingMode(): ?string
  153.     {
  154.         return $this->billingMode;
  155.     }
  156.     /**
  157.      * @param string $billingMode
  158.      */
  159.     public function setBillingMode($billingMode): void
  160.     {
  161.         $this->billingMode $billingMode;
  162.     }
  163.     /**
  164.      * @return string
  165.      */
  166.     public function getEmail(): ?string
  167.     {
  168.         return $this->email;
  169.     }
  170.     /**
  171.      * @param string $email
  172.      */
  173.     public function setEmail(string $email): void
  174.     {
  175.         $this->email $email;
  176.     }
  177.     /**
  178.      * @return string
  179.      */
  180.     public function getPhone(): ?string
  181.     {
  182.         return $this->phone;
  183.     }
  184.     /**
  185.      * @param string $phone
  186.      */
  187.     public function setPhone($phone): void
  188.     {
  189.         $this->phone $phone;
  190.     }
  191.     /**
  192.      * @return string
  193.      */
  194.     public function getDiscount()
  195.     {
  196.         return $this->discount ?? 0;
  197.     }
  198.     /**
  199.      * @param string $discount
  200.      */
  201.     public function setDiscount($discount): void
  202.     {
  203.         $this->discount $discount;
  204.     }
  205.     /**
  206.      * @return string
  207.      */
  208.     public function getSendMode(): ?string
  209.     {
  210.         return $this->sendMode;
  211.     }
  212.     /**
  213.      * @param string $sendMode
  214.      */
  215.     public function setSendMode(?string $sendMode): void
  216.     {
  217.         $this->sendMode $sendMode;
  218.     }
  219.     /**
  220.      * @return string
  221.      */
  222.     public function getPayMode(): ?string
  223.     {
  224.         return $this->payMode;
  225.     }
  226.     /**
  227.      * @param string $payMode
  228.      */
  229.     public function setPayMode(?string $payMode): void
  230.     {
  231.         $this->payMode $payMode;
  232.     }
  233.     /**
  234.      * @return string
  235.      */
  236.     public function getAccount(): ?string
  237.     {
  238.         return $this->account;
  239.     }
  240.     /**
  241.      * @param string $account
  242.      */
  243.     public function setAccount(string $account): void
  244.     {
  245.         $this->account $account;
  246.     }
  247.     /**
  248.      * @return string
  249.      */
  250.     public function getBankName(): ?string
  251.     {
  252.         return $this->bankName;
  253.     }
  254.     /**
  255.      * @param string $bankName
  256.      */
  257.     public function setBankName(string $bankName): void
  258.     {
  259.         $this->bankName $bankName;
  260.     }
  261.     /**
  262.      * @return string
  263.      */
  264.     public function getIban(): ?string
  265.     {
  266.         return $this->iban;
  267.     }
  268.     /**
  269.      * @param string $iban
  270.      */
  271.     public function setIban(string $iban): void
  272.     {
  273.         $this->iban $iban;
  274.     }
  275.     /**
  276.      * @return string
  277.      */
  278.     public function getBic(): ?string
  279.     {
  280.         return $this->bic;
  281.     }
  282.     /**
  283.      * @param string $bic
  284.      */
  285.     public function setBic(string $bic): void
  286.     {
  287.         $this->bic $bic;
  288.     }
  289.     /**
  290.      * @return string
  291.      */
  292.     public function getRum(): ?string
  293.     {
  294.         return $this->rum;
  295.     }
  296.     /**
  297.      * @param string $rum
  298.      */
  299.     public function setRum(?string $rum): void
  300.     {
  301.         $this->rum $rum;
  302.     }
  303.     /**
  304.      * @return string
  305.      */
  306.     public function getPayModeString(): ?string
  307.     {
  308.         switch ($this->payMode) {
  309.             case self::PAY_MODE_SEPA:
  310.                 return 'Sepa';
  311.             case self::PAY_MODE_VIREMENT:
  312.                 return 'Virement';
  313.             case self::PAY_MODE_CB:
  314.                 return 'Carte bancaire';
  315.             case self::PAY_MODE_CHEQUES:
  316.                 return 'Chèques';
  317.         }
  318.         return null;
  319.     }
  320.     /**
  321.      * @return string
  322.      */
  323.     public function getEsthetique(): ?string
  324.     {
  325.         return $this->esthetique;
  326.     }
  327.     /**
  328.      * @param string $esthetique
  329.      */
  330.     public function setEsthetique(string $esthetique): void
  331.     {
  332.         $this->esthetique $esthetique;
  333.     }
  334.     /**
  335.      * @return string
  336.      */
  337.     public function getDateSignatureMandat()
  338.     {
  339.         return $this->dateSignatureMandat;
  340.     }
  341.     /**
  342.      * @param \DateTime $dateSignatureMandat
  343.      */
  344.     public function setDateSignatureMandat($dateSignatureMandat): void
  345.     {
  346.         $this->dateSignatureMandat $dateSignatureMandat;
  347.     }
  348. }