src/Entity/Company.php line 30

Open in your IDE?
  1. <?php
  2. namespace App\Entity;
  3. use App\Entity\Common\SoftDeletableEntityTrait;
  4. use App\Entity\Common\StatefulEntityTrait;
  5. use App\Entity\Common\TimestampedEntityTrait;
  6. use Doctrine\Common\Collections\ArrayCollection;
  7. use Doctrine\ORM\Mapping\UniqueConstraint;
  8. use DateTime;
  9. use Doctrine\ORM\Mapping as ORM;
  10. use Gedmo\Mapping\Annotation as Gedmo;
  11. use Evence\Bundle\SoftDeleteableExtensionBundle\Mapping\Annotation as Evence;
  12. /**
  13.  * Class Company
  14.  *
  15.  * @ORM\Entity(repositoryClass="App\Repository\CompanyRepository")
  16.  * @ORM\Table(indexes={
  17.  *     @ORM\Index(name="IDX_updated_at", columns={"updated_at"}),
  18.  *     @ORM\Index(name="IDX_deleted_at", columns={"deleted_at"}),
  19.  *     @ORM\Index(name="IDX_is_active", columns={"is_active"}),
  20.  *     @ORM\Index(name="IDX_password", columns={"name"})
  21.  * }
  22.  * ,uniqueConstraints={
  23.  *     @UniqueConstraint(name="UNIQ_phone", columns={"phone"}),
  24.  *     @UniqueConstraint(name="UNIQ_email", columns={"email"}),
  25.  * })
  26.  * @Gedmo\SoftDeleteable(fieldName="deletedAt")
  27.  */
  28. class Company
  29. {
  30.     use SoftDeletableEntityTraitStatefulEntityTraitTimestampedEntityTrait;
  31.     public function __construct() {
  32.         $this->companyDocuments = new ArrayCollection();
  33.     }
  34.     /**
  35.      * @var integer
  36.      *
  37.      * @ORM\Id()
  38.      * @ORM\GeneratedValue
  39.      * @ORM\Column(type="integer")
  40.      */
  41.     private $id;
  42.     /**
  43.      * @ORM\ManyToOne(targetEntity="StaCompanyType")
  44.      * @ORM\JoinColumn(name="company_type", referencedColumnName="code", onDelete="CASCADE")
  45.      */
  46.     private $companyType;
  47.     /**
  48.      * @var string
  49.      *
  50.      * @ORM\Column(length=100)
  51.      */
  52.     private $name;
  53.     /**
  54.      * @var string|null
  55.      *
  56.      * @ORM\Column(length=100,nullable=true)
  57.      */
  58.     private $companyName;
  59.     /**
  60.      * @var string
  61.      *
  62.      * @ORM\Column(length=100)
  63.      */
  64.     private $address;
  65.     /**
  66.      * @var string
  67.      *
  68.      * @ORM\Column(length=100)
  69.      */
  70.     private $email;
  71.     /**
  72.      * @var string|null
  73.      *
  74.      * @ORM\Column(length=50,nullable=true)
  75.      */
  76.     private $phone;
  77.     /**
  78.      * @var string|null
  79.      *
  80.      * @ORM\Column(length=50,nullable=true)
  81.      */
  82.     private $taxId;
  83.     /**
  84.      * @var string|null
  85.      *
  86.      * @ORM\Column(length=50,nullable=true)
  87.      */
  88.     private $taxOffice;
  89.     /**
  90.      * @var string|null
  91.      *
  92.      * @ORM\Column(length=1,nullable=true,options={"default":"C"})
  93.      */
  94.     private $paymentType="C";
  95.     /**
  96.      * @var string|null
  97.      *
  98.      * @ORM\Column(length=1,nullable=true,options={"default":"C"})
  99.      */
  100.     private $companyStatus="C";
  101.     /**
  102.      * @var float|true
  103.      *
  104.      * @ORM\Column(type="decimal", precision=13, scale=4,nullable=true)
  105.      */
  106.     private $credit;
  107.     /**
  108.      * @var StaCurrency|null
  109.      *
  110.      * @ORM\ManyToOne(targetEntity="StaCurrency")
  111.      * @ORM\JoinColumn(name="currency_code", referencedColumnName="code", onDelete="CASCADE", nullable=true)
  112.      */
  113.     private $currency;
  114.     /**
  115.      * @var string|null
  116.      *
  117.      * @ORM\Column(length=1000,nullable=true)
  118.      */
  119.     private $remarks;
  120.     /**
  121.      * @ORM\OneToMany(targetEntity="CompanyDocument", mappedBy="company")
  122.      */
  123.     private $companyDocuments;
  124.     /**
  125.      * @return int
  126.      */
  127.     public function getId(): int
  128.     {
  129.         return $this->id;
  130.     }
  131.     /**
  132.      * @param int $id
  133.      * @return Company
  134.      */
  135.     public function setId(int $id): Company
  136.     {
  137.         $this->id $id;
  138.         return $this;
  139.     }
  140.     /**
  141.      * @return mixed
  142.      */
  143.     public function getCompanyType()
  144.     {
  145.         return $this->companyType;
  146.     }
  147.     /**
  148.      * @param mixed $companyType
  149.      * @return Company
  150.      */
  151.     public function setCompanyType($companyType)
  152.     {
  153.         $this->companyType $companyType;
  154.         return $this;
  155.     }
  156.     /**
  157.      * @return string
  158.      */
  159.     public function getName(): string
  160.     {
  161.         return $this->name;
  162.     }
  163.     /**
  164.      * @param string $name
  165.      * @return Company
  166.      */
  167.     public function setName(string $name): Company
  168.     {
  169.         $this->name $name;
  170.         return $this;
  171.     }
  172.     /**
  173.      * @return string
  174.      */
  175.     public function getAddress(): string
  176.     {
  177.         return $this->address;
  178.     }
  179.     /**
  180.      * @param string $address
  181.      * @return Company
  182.      */
  183.     public function setAddress(string $address): Company
  184.     {
  185.         $this->address $address;
  186.         return $this;
  187.     }
  188.     /**
  189.      * @return string
  190.      */
  191.     public function getEmail(): string
  192.     {
  193.         return $this->email;
  194.     }
  195.     /**
  196.      * @param string $email
  197.      * @return Company
  198.      */
  199.     public function setEmail(string $email): Company
  200.     {
  201.         $this->email $email;
  202.         return $this;
  203.     }
  204.     /**
  205.      * @return string|null
  206.      */
  207.     public function getPhone(): ?string
  208.     {
  209.         return $this->phone;
  210.     }
  211.     /**
  212.      * @param string|null $phone
  213.      * @return Company
  214.      */
  215.     public function setPhone(?string $phone): Company
  216.     {
  217.         $this->phone $phone;
  218.         return $this;
  219.     }
  220.     /**
  221.      * @return string|null
  222.      */
  223.     public function getTaxId(): ?string
  224.     {
  225.         return $this->taxId;
  226.     }
  227.     /**
  228.      * @param string|null $taxId
  229.      * @return Company
  230.      */
  231.     public function setTaxId(?string $taxId): Company
  232.     {
  233.         $this->taxId $taxId;
  234.         return $this;
  235.     }
  236.     /**
  237.      * @return string|null
  238.      */
  239.     public function getTaxOffice(): ?string
  240.     {
  241.         return $this->taxOffice;
  242.     }
  243.     /**
  244.      * @param string|null $taxOffice
  245.      * @return Company
  246.      */
  247.     public function setTaxOffice(?string $taxOffice): Company
  248.     {
  249.         $this->taxOffice $taxOffice;
  250.         return $this;
  251.     }
  252.     public function getCompanyName(): ?string
  253.     {
  254.         return $this->companyName;
  255.     }
  256.     public function setCompanyName(?string $companyName): Company
  257.     {
  258.         $this->companyName $companyName;
  259.         return $this;
  260.     }
  261.     public function getPaymentType(): ?string
  262.     {
  263.         return $this->paymentType;
  264.     }
  265.     public function setPaymentType(?string $paymentType): Company
  266.     {
  267.         $this->paymentType $paymentType;
  268.         return $this;
  269.     }
  270.     /**
  271.      * @return float|true
  272.      */
  273.     public function getCredit()
  274.     {
  275.         return $this->credit;
  276.     }
  277.     /**
  278.      * @param float|true $credit
  279.      * @return Company
  280.      */
  281.     public function setCredit($credit)
  282.     {
  283.         $this->credit $credit;
  284.         return $this;
  285.     }
  286.     public function getCurrency(): ?StaCurrency
  287.     {
  288.         return $this->currency;
  289.     }
  290.     public function setCurrency(?StaCurrency $currency): Company
  291.     {
  292.         $this->currency $currency;
  293.         return $this;
  294.     }
  295.     public function getCompanyDocuments()
  296.     {
  297.         return $this->companyDocuments;
  298.     }
  299.     public function setCompanyDocuments(ArrayCollection $companyDocuments): Company
  300.     {
  301.         $this->companyDocuments $companyDocuments;
  302.         return $this;
  303.     }
  304.     public function getCompanyStatus(): ?string
  305.     {
  306.         return $this->companyStatus;
  307.     }
  308.     public function setCompanyStatus(?string $companyStatus): Company
  309.     {
  310.         $this->companyStatus $companyStatus;
  311.         return $this;
  312.     }
  313.     public function getRemarks(): ?string
  314.     {
  315.         return $this->remarks;
  316.     }
  317.     public function setRemarks(?string $remarks): Company
  318.     {
  319.         $this->remarks $remarks;
  320.         return $this;
  321.     }
  322. }