src/Entity/PurchaseRequestHistories.php line 14

Open in your IDE?
  1. <?php
  2. namespace App\Entity;
  3. use App\Repository\PurchaseRequestHistoriesRepository;
  4. use Doctrine\Common\Collections\ArrayCollection;
  5. use Doctrine\Common\Collections\Collection;
  6. use Doctrine\ORM\Mapping as ORM;
  7. use Symfony\Component\Serializer\Annotation\Groups;
  8. /**
  9.  * @ORM\Entity(repositoryClass=PurchaseRequestHistoriesRepository::class)
  10.  */
  11. class PurchaseRequestHistories
  12. {
  13.     /**
  14.      * @ORM\Id
  15.      * @ORM\GeneratedValue
  16.      * @ORM\Column(type="integer")
  17.      * @Groups({
  18.      *     "purchase_request_history:core",
  19.      *
  20.      *     "purchase_request_history@core"
  21.      * })
  22.      */
  23.     private $id;
  24.     /**
  25.      * @ORM\ManyToOne(targetEntity=PurchaseRequest::class, inversedBy="purchase_request_histories")
  26.      * @ORM\JoinColumn(nullable=false, onDelete="CASCADE")
  27.      */
  28.     private $purchase_request;
  29.     /**
  30.      * @ORM\ManyToOne(targetEntity=PurchaseRequestStatus::class, inversedBy="purchase_request_histories")
  31.      * @Groups({
  32.      *     "purchase_request_history:status",
  33.      *
  34.      *     "purchase_request_history@status",
  35.      * })
  36.      */
  37.     private $status;
  38.     /**
  39.      * @ORM\Column(type="string", length=255, nullable=true)
  40.      * @Groups({
  41.      *      "purchase_request_history:core",
  42.      *
  43.      *      "purchase_request_history@core"
  44.      *  })
  45.      */
  46.     private $reason;
  47.     /**
  48.      * @ORM\Column(type="datetime_immutable")
  49.      * @Groups({
  50.      *      "purchase_request_history:core",
  51.      *
  52.      *      "purchase_request_history@core"
  53.      *  })
  54.      */
  55.     private $created_at;
  56.     /**
  57.      * @ORM\OneToMany(targetEntity=PurchaseRequestHistoryRead::class, mappedBy="purchase_request_history", cascade={"persist", "remove"})
  58.      * @Groups({
  59.      *     "purchase_request_history:reads",
  60.      *
  61.      *     "purchase_request_history@reads"
  62.      * })
  63.      */
  64.     private $purchase_request_history_reads;
  65.     /**
  66.      * @ORM\ManyToOne(targetEntity=User::class, inversedBy="purchaseRequestHistories")
  67.      * @ORM\JoinColumn(nullable=false)
  68.      * @Groups({
  69.      *     "purchase_request_history:owner",
  70.      *
  71.      *     "purchase_request_history@owner"
  72.      * })
  73.      */
  74.     private $owner;
  75.     /**
  76.      * @ORM\Column(type="purchase_request_view_mode_type", nullable=true)
  77.      * @Groups({
  78.      *       "purchase_request_history:core",
  79.      *
  80.      *       "purchase_request_history@core"
  81.      *   })
  82.      */
  83.     private $sender_mode;
  84.     public function __construct()
  85.     {
  86.         $this->purchase_request_history_reads = new ArrayCollection();
  87.     }
  88.     public function getId(): ?int
  89.     {
  90.         return $this->id;
  91.     }
  92.     public function getPurchaseRequest(): ?PurchaseRequest
  93.     {
  94.         return $this->purchase_request;
  95.     }
  96.     public function setPurchaseRequest(?PurchaseRequest $purchase_request): self
  97.     {
  98.         #dd($purchase_request);
  99.         $this->purchase_request $purchase_request;
  100.         return $this;
  101.     }
  102.     public function getStatus(): ?PurchaseRequestStatus
  103.     {
  104.         return $this->status;
  105.     }
  106.     public function setStatus(?PurchaseRequestStatus $status): self
  107.     {
  108.         $this->status $status;
  109.         return $this;
  110.     }
  111.     public function getReason(): ?string
  112.     {
  113.         return $this->reason;
  114.     }
  115.     public function setReason(?string $reason): self
  116.     {
  117.         $this->reason $reason;
  118.         return $this;
  119.     }
  120.     public function getCreatedAt(): ?\DateTimeImmutable
  121.     {
  122.         return $this->created_at;
  123.     }
  124.     public function setCreatedAt(\DateTimeImmutable $created_at): self
  125.     {
  126.         $this->created_at $created_at;
  127.         return $this;
  128.     }
  129.     /**
  130.      * @return Collection<int, PurchaseRequestHistoryRead>
  131.      */
  132.     public function getPurchaseRequestHistoryReads(): Collection
  133.     {
  134.         return $this->purchase_request_history_reads;
  135.     }
  136.     public function addPurchaseRequestHistoryRead(PurchaseRequestHistoryRead $purchaseRequestHistoryRead): self
  137.     {
  138.         if (!$this->purchase_request_history_reads->contains($purchaseRequestHistoryRead)) {
  139.             $this->purchase_request_history_reads[] = $purchaseRequestHistoryRead;
  140.             $purchaseRequestHistoryRead->setPurchaseRequestHistory($this);
  141.         }
  142.         return $this;
  143.     }
  144.     public function removePurchaseRequestHistoryRead(PurchaseRequestHistoryRead $purchaseRequestHistoryRead): self
  145.     {
  146.         if ($this->purchase_request_history_reads->removeElement($purchaseRequestHistoryRead)) {
  147.             // set the owning side to null (unless already changed)
  148.             if ($purchaseRequestHistoryRead->getPurchaseRequestHistory() === $this) {
  149.                 $purchaseRequestHistoryRead->setPurchaseRequestHistory(null);
  150.             }
  151.         }
  152.         return $this;
  153.     }
  154.     public function getOwner(): ?User
  155.     {
  156.         return $this->owner;
  157.     }
  158.     public function setOwner(?User $owner): self
  159.     {
  160.         $this->owner $owner;
  161.         return $this;
  162.     }
  163.     public function getSenderMode()
  164.     {
  165.         return $this->sender_mode;
  166.     }
  167.     public function setSenderMode($sender_mode): self
  168.     {
  169.         $this->sender_mode $sender_mode;
  170.         return $this;
  171.     }
  172. }