| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475 |
- <?php
- declare(strict_types=1);
- namespace App\Entity\Billing;
- use ApiPlatform\Metadata\ApiResource;
- use App\Entity\Access\Access;
- // use DH\Auditor\Provider\Doctrine\Auditing\Annotation\Auditable;
- use App\Repository\Billing\AccessIntangibleRepository;
- use Doctrine\Common\Collections\ArrayCollection;
- use Doctrine\Common\Collections\Collection;
- use Doctrine\ORM\Mapping as ORM;
- /**
- * Enregistrement d'un produit à facturer par un Access.
- */
- #[ApiResource(operations: [])]
- // #[Auditable]
- #[ORM\Entity(repositoryClass: AccessIntangibleRepository::class)]
- class AccessIntangible extends AbstractBillingIntangible
- {
- #[ORM\ManyToOne(inversedBy: 'accessIntangibles')]
- private ?Access $access = null;
- #[ORM\OneToMany(mappedBy: 'accessIntangible', targetEntity: BillingIntangibleExcludeDate::class, cascade: ['persist'], orphanRemoval: true)]
- private Collection $billingIntangibleExcludeDates;
- public function __construct()
- {
- $this->billingIntangibleExcludeDates = new ArrayCollection();
- }
- public function setAccess(?Access $access): self
- {
- $this->access = $access;
- return $this;
- }
- public function getAccess(): ?Access
- {
- return $this->access;
- }
- /**
- * @return Collection<int, BillingIntangibleExcludeDate>
- */
- public function getBillingIntangibleExcludeDates(): Collection
- {
- return $this->billingIntangibleExcludeDates;
- }
- public function addBillingIntangibleExcludeDate(BillingIntangibleExcludeDate $billingIntangibleExcludeDate): self
- {
- if (!$this->billingIntangibleExcludeDates->contains($billingIntangibleExcludeDate)) {
- $this->billingIntangibleExcludeDates[] = $billingIntangibleExcludeDate;
- $billingIntangibleExcludeDate->setAccessIntangible($this);
- }
- return $this;
- }
- public function removeBillingIntangibleExcludeDate(BillingIntangibleExcludeDate $billingIntangibleExcludeDate): self
- {
- if ($this->billingIntangibleExcludeDates->removeElement($billingIntangibleExcludeDate)) {
- // set the owning side to null (unless already changed)
- if ($billingIntangibleExcludeDate->getAccessIntangible() === $this) {
- $billingIntangibleExcludeDate->setAccessIntangible(null);
- }
- }
- return $this;
- }
- }
|