<?php namespace Lc\CaracoleBundle\Factory\Order; use App\Entity\Order\OrderPayment; use Lc\CaracoleBundle\Model\Order\OrderPaymentInterface; use Lc\CaracoleBundle\Model\Order\OrderShopInterface; use Lc\SovBundle\Factory\AbstractFactory; class OrderPaymentFactory extends AbstractFactory { public function create(OrderShopInterface $orderShop, string $meanPayment, float $amount): OrderPaymentInterface { $orderPayment = $this->createBase($orderShop); $orderPayment->setMeanPayment($meanPayment); $orderPayment->setAmount($amount); $orderPayment->setPaidAt(new \DateTime()); $orderPayment->setEditable(false); return $orderPayment; } public function createBase($orderShop){ $orderPayment = new OrderPayment(); $orderPayment->setOrderShop($orderShop); return $orderPayment; } }