<?php
namespace App\Entity;
use Doctrine\ORM\Mapping as ORM;
use Symfony\Component\Validator\Constraints as Assert;
/**
* @ORM\Entity
*/
class CompanyInvoiceAddress extends CompanyAddress
{
/**
* @ORM\ManyToOne(
* targetEntity="Company",
* inversedBy="invoiceAddresses"
* )
* @ORM\JoinColumn(
* name="company_id",
* referencedColumnName="id",
* onDelete="cascade"
* )
* @Assert\NotNull
*
* @var Company
*/
protected Company $company;
/**
* @param Company $company
*/
public function __construct(Company $company)
{
$this->setCompany($company);
parent::__construct($company->getName());
}
/**
* @return Company
*/
public function getCompany(): Company
{
return $this->company;
}
/**
* @return string
*/
public function getType(): string
{
return 'invoice';
}
/**
* @param Company $company
*/
public function setCompany(Company $company): void
{
$this->company = $company;
$this->populate($company);
}
}