<?php | |||||
namespace Lc\ShopBundle\Context ; | |||||
interface OrderPaymentInterface | |||||
{ | |||||
} |
<?php | |||||
namespace Lc\ShopBundle\Model; | |||||
use Doctrine\ORM\Mapping as ORM; | |||||
use Lc\ShopBundle\Context\OrderPaymentInterface; | |||||
use Lc\ShopBundle\Context\ReductionInterface; | |||||
/** | |||||
* @ORM\MappedSuperclass() | |||||
*/ | |||||
abstract class OrderPayment extends AbstractEntity | |||||
{ | |||||
/** | |||||
* @ORM\ManyToOne(targetEntity="Lc\ShopBundle\Context\OrderShopInterface", inversedBy="orderPayments") | |||||
* @ORM\JoinColumn(nullable=false) | |||||
*/ | |||||
protected $orderShop; | |||||
/** | |||||
* @ORM\Column(type="string", length=255) | |||||
*/ | |||||
protected $type; | |||||
/** | |||||
* @ORM\Column(type="text", nullable=true) | |||||
*/ | |||||
protected $reference; | |||||
/** | |||||
* @ORM\Column(type="datetime") | |||||
*/ | |||||
protected $paidAt; | |||||
/** | |||||
* @ORM\Column(type="float") | |||||
*/ | |||||
protected $amount; | |||||
/** | |||||
* @ORM\Column(type="text", nullable=true) | |||||
*/ | |||||
protected $comment; | |||||
public function __toString() | |||||
{ | |||||
return 'Par : '.$this->type.' le : '.$this->getPaidAt()->format('d-m-Y H:i'); | |||||
} | |||||
public function getOrderShop(): ?OrderShop | |||||
{ | |||||
return $this->orderShop; | |||||
} | |||||
public function setOrderShop(?OrderShop $orderShop): self | |||||
{ | |||||
$this->orderShop = $orderShop; | |||||
return $this; | |||||
} | |||||
public function setType(string $type): self | |||||
{ | |||||
$this->type = $type; | |||||
return $this; | |||||
} | |||||
public function getReference(): ?string | |||||
{ | |||||
return $this->reference; | |||||
} | |||||
public function setReference(?string $reference): self | |||||
{ | |||||
$this->reference = $reference; | |||||
return $this; | |||||
} | |||||
public function getPaidAt(): ?\DateTimeInterface | |||||
{ | |||||
return $this->paidAt; | |||||
} | |||||
public function setPaidAt(\DateTimeInterface $paidAt): self | |||||
{ | |||||
$this->paidAt = $paidAt; | |||||
return $this; | |||||
} | |||||
public function getAmount(): ?float | |||||
{ | |||||
return $this->amount; | |||||
} | |||||
public function setAmount(float $amount): self | |||||
{ | |||||
$this->amount = $amount; | |||||
return $this; | |||||
} | |||||
public function getComment(): ?string | |||||
{ | |||||
return $this->comment; | |||||
} | |||||
public function setComment(?string $comment): self | |||||
{ | |||||
$this->comment = $comment; | |||||
return $this; | |||||
} | |||||
} |
*/ | */ | ||||
protected $orderStatusHistories; | protected $orderStatusHistories; | ||||
/** | |||||
* @ORM\OneToMany(targetEntity="Lc\ShopBundle\Context\OrderPaymentInterface", mappedBy="orderShop", orphanRemoval=true) | |||||
*/ | |||||
protected $orderPayments; | |||||
/** | /** | ||||
* @ORM\OneToMany(targetEntity="Lc\ShopBundle\Context\OrderProductInterface", mappedBy="orderShop", cascade={"persist", "remove"}, orphanRemoval=true) | * @ORM\OneToMany(targetEntity="Lc\ShopBundle\Context\OrderProductInterface", mappedBy="orderShop", cascade={"persist", "remove"}, orphanRemoval=true) | ||||
*/ | */ | ||||
public function __construct() | public function __construct() | ||||
{ | { | ||||
$this->orderStatusHistories = new ArrayCollection(); | $this->orderStatusHistories = new ArrayCollection(); | ||||
$this->orderPayments = new ArrayCollection(); | |||||
$this->orderProducts = new ArrayCollection(); | $this->orderProducts = new ArrayCollection(); | ||||
$this->creditHistories = new ArrayCollection(); | $this->creditHistories = new ArrayCollection(); | ||||
$this->orderReductionCarts = new ArrayCollection(); | $this->orderReductionCarts = new ArrayCollection(); | ||||
return $this; | return $this; | ||||
} | } | ||||
/** | |||||
* @return Collection|OrderPayment[] | |||||
*/ | |||||
public function getOrderPayments(): Collection | |||||
{ | |||||
return $this->orderPayments; | |||||
} | |||||
public function addOrderPayment(OrderPayment $orderPayment): self | |||||
{ | |||||
if (!$this->orderPayments->contains($orderPayment)) { | |||||
$this->orderPayments[] = $orderPayment; | |||||
$orderPayment->setOrderShop($this); | |||||
} | |||||
return $this; | |||||
} | |||||
public function removeOrderPayment(OrderPayment $orderPayment): self | |||||
{ | |||||
if ($this->orderPayments->contains($orderPayment)) { | |||||
$this->orderPayments->removeElement($orderPayment); | |||||
// set the owning side to null (unless already changed) | |||||
if ($orderPayment->getOrderShop() === $this) { | |||||
$orderPayment->setOrderShop(null); | |||||
} | |||||
} | |||||
return $this; | |||||
} | |||||
/** | /** | ||||
* @return Collection|OrderProduct[] | * @return Collection|OrderProduct[] | ||||
*/ | */ |
<?php | |||||
namespace Lc\ShopBundle\Repository; | |||||
use Lc\ShopBundle\Context\DefaultRepositoryInterface; | |||||
use Lc\ShopBundle\Context\OrderPaymentInterface; | |||||
use Lc\ShopBundle\Context\OrderStatusInterface; | |||||
/** | |||||
* @method OrderPaymentInterface|null find($id, $lockMode = null, $lockVersion = null) | |||||
* @method OrderPaymentInterface|null findOneBy(array $criteria, array $orderBy = null) | |||||
* @method OrderPaymentInterface[] findAll() | |||||
* @method OrderPaymentInterface[] findBy(array $criteria, array $orderBy = null, $limit = null, $offset = null) | |||||
*/ | |||||
class OrderPaymentRepository extends BaseRepository implements DefaultRepositoryInterface | |||||
{ | |||||
public function getInterfaceClass() | |||||
{ | |||||
return OrderPaymentInterface::class; | |||||
} | |||||
} |