<?php namespace Lc\CaracoleBundle\Factory\Order; use App\Entity\Order\OrderStatusHistory; use Lc\CaracoleBundle\Model\Order\OrderShopInterface; use Lc\CaracoleBundle\Model\Order\OrderStatusHistoryInterface; use Lc\CaracoleBundle\Model\Order\OrderStatusHistoryModel; use Lc\CaracoleBundle\Model\Order\OrderStatusInterface; use Lc\SovBundle\Factory\AbstractFactory; class OrderStatusHistoryFactory extends AbstractFactory { public function create(OrderShopInterface $orderShop, OrderStatusInterface $status, string $origin = OrderStatusHistoryModel::ORIGIN_USER): OrderStatusHistoryInterface { $orderStatusHistory = new OrderStatusHistory(); $orderStatusHistory->setOrderShop($orderShop); $orderStatusHistory->setOrderStatus($status); $orderStatusHistory->setOrigin($origin); $orderStatusHistory->setCreatedAt(new \DateTime()); return $orderStatusHistory; } }