orderStatusHistories = new ArrayCollection(); $this->orderProducts = new ArrayCollection(); $this->creditHistories = new ArrayCollection(); $this->orderReductionCarts = new ArrayCollection(); $this->orderReductionCredits = new ArrayCollection(); $this->documents = new ArrayCollection(); } public function getDateCreated() { $orderStatusHistory = $this->getOrderStatusHistory('new'); if ($orderStatusHistory) { return $orderStatusHistory->getCreatedAt(); } return null; } public function getOrderStatusHistory($status) { $orderStatusHistories = $this->getOrderStatusHistories(); if (count($orderStatusHistories) > 0) { foreach ($orderStatusHistories as $orderStatusHistory) { if ($orderStatusHistory->getOrderStatus() == $status) { return $orderStatusHistory; } } } return null; } public function getMerchant(): ?Merchant { return $this->merchant; } public function setMerchant(?Merchant $merchant): self { $this->merchant = $merchant; return $this; } public function getUser(): ?User { return $this->user; } public function setUser(?User $user): self { $this->user = $user; return $this; } public function getInvoiceAddress(): ?Address { return $this->invoiceAddress; } public function setInvoiceAddress(?Address $invoiceAddress): self { $this->invoiceAddress = $invoiceAddress; return $this; } public function getComment(): ?string { return $this->comment; } public function setComment(?string $comment): self { $this->comment = $comment; return $this; } public function getAutoPayment(): ?bool { return $this->autoPayment; } public function setAutoPayment(bool $autoPayment): self { $this->autoPayment = $autoPayment; return $this; } public function getMeanPayment(): ?string { return $this->meanPayment; } public function setMeanPayment(string $meanPayment): self { $this->meanPayment = $meanPayment; return $this; } /** * @return Collection|OrderStatusHistory[] */ public function getOrderStatusHistories(): Collection { return $this->orderStatusHistories; } public function addOrderStatusHistory(OrderStatusHistory $orderStatusHistory): self { if (!$this->orderStatusHistories->contains($orderStatusHistory)) { $this->orderStatusHistories[] = $orderStatusHistory; $orderStatusHistory->setOrderShop($this); } return $this; } public function removeOrderStatusHistory(OrderStatusHistory $orderStatusHistory): self { if ($this->orderStatusHistories->contains($orderStatusHistory)) { $this->orderStatusHistories->removeElement($orderStatusHistory); // set the owning side to null (unless already changed) if ($orderStatusHistory->getOrderShop() === $this) { $orderStatusHistory->setOrderShop(null); } } return $this; } /** * @return Collection|OrderProduct[] */ public function getOrderProducts(): Collection { return $this->orderProducts; } public function addOrderProduct(OrderProduct $orderProduct): self { if (!$this->orderProducts->contains($orderProduct)) { $this->orderProducts[] = $orderProduct; $orderProduct->setOrderShop($this); } return $this; } public function removeOrderProduct(OrderProduct $orderProduct): self { if ($this->orderProducts->contains($orderProduct)) { $this->orderProducts->removeElement($orderProduct); // set the owning side to null (unless already changed) if ($orderProduct->getOrderShop() === $this) { $orderProduct->setOrderShop(null); } } return $this; } /** * @return Collection|CreditHistory[] */ public function getCreditHistories(): Collection { return $this->creditHistories; } public function addCreditHistory(CreditHistory $creditHistory): self { if (!$this->creditHistories->contains($creditHistory)) { $this->creditHistories[] = $creditHistory; $creditHistory->setOrderShop($this); } return $this; } public function removeCreditHistory(CreditHistory $creditHistory): self { if ($this->creditHistories->contains($creditHistory)) { $this->creditHistories->removeElement($creditHistory); // set the owning side to null (unless already changed) if ($creditHistory->getOrderShop() === $this) { $creditHistory->setOrderShop(null); } } return $this; } public function getVisitor(): ?Visitor { return $this->visitor; } public function setVisitor(?Visitor $visitor): self { $this->visitor = $visitor; return $this; } public function getDeliveryInfos(): ?string { return $this->deliveryInfos; } public function setDeliveryInfos(?string $deliveryInfos): self { $this->deliveryInfos = $deliveryInfos; return $this; } public function getOrderStatus(): ?OrderStatus { return $this->orderStatus; } public function setOrderStatusProtected(?OrderStatus $orderStatus): self { $this->orderStatus = $orderStatus; return $this; } /** * @return Collection|OrderReductionCart[] */ public function getOrderReductionCarts(): Collection { return $this->orderReductionCarts; } public function addOrderReductionCart(OrderReductionCart $orderReductionCart): self { if (!$this->orderReductionCarts->contains($orderReductionCart)) { $this->orderReductionCarts[] = $orderReductionCart; $orderReductionCart->setOrderShop($this); } return $this; } public function removeOrderReductionCart(OrderReductionCart $orderReductionCart): self { if ($this->orderReductionCarts->contains($orderReductionCart)) { $this->orderReductionCarts->removeElement($orderReductionCart); // set the owning side to null (unless already changed) if ($orderReductionCart->getOrderShop() === $this) { $orderReductionCart->setOrderShop(null); } } return $this; } /** * @return Collection|OrderReductionCart[] */ public function getOrderReductionCredits(): Collection { return $this->orderReductionCredits; } public function addOrderReductionCredit(OrderReductionCredit $orderReductionCredit): self { if (!$this->orderReductionCredits->contains($orderReductionCredit)) { $this->orderReductionCredits[] = $orderReductionCredit; $orderReductionCredit->setOrderShop($this); } return $this; } public function removeOrderReductionCredit(OrderReductionCredit $orderReductionCredit): self { if ($this->orderReductionCredits->contains($orderReductionCredit)) { $this->orderReductionCredits->removeElement($orderReductionCredit); // set the owning side to null (unless already changed) if ($orderReductionCredit->getOrderShop() === $this) { $orderReductionCredit->setOrderShop(null); } } return $this; } /** * @return Collection|Document[] */ public function getDocuments(): Collection { return $this->documents; } public function addDocument(Document $document): self { if (!$this->documents->contains($document)) { $this->documents[] = $document; } return $this; } public function removeDocument(Document $document): self { if ($this->documents->contains($document)) { $this->documents->removeElement($document); } return $this; } }