Eccube\Service\ShoppingService::getNewOrderDetail PHP Метод

getNewOrderDetail() публичный Метод

受注明細情報を作成
public getNewOrderDetail ( Product $Product, Eccube\Entity\ProductClass $ProductClass, $quantity ) : OrderDetail
$Product Eccube\Entity\Product
$ProductClass Eccube\Entity\ProductClass
$quantity
Результат Eccube\Entity\OrderDetail
    public function getNewOrderDetail(Product $Product, ProductClass $ProductClass, $quantity)
    {
        $OrderDetail = new OrderDetail();
        $TaxRule = $this->app['eccube.repository.tax_rule']->getByRule($Product, $ProductClass);
        $OrderDetail->setProduct($Product)->setProductClass($ProductClass)->setProductName($Product->getName())->setProductCode($ProductClass->getCode())->setPrice($ProductClass->getPrice02())->setQuantity($quantity)->setTaxRule($TaxRule->getId())->setTaxRate($TaxRule->getTaxRate());
        $ClassCategory1 = $ProductClass->getClassCategory1();
        if (!is_null($ClassCategory1)) {
            $OrderDetail->setClasscategoryName1($ClassCategory1->getName());
            $OrderDetail->setClassName1($ClassCategory1->getClassName()->getName());
        }
        $ClassCategory2 = $ProductClass->getClassCategory2();
        if (!is_null($ClassCategory2)) {
            $OrderDetail->setClasscategoryName2($ClassCategory2->getName());
            $OrderDetail->setClassName2($ClassCategory2->getClassName()->getName());
        }
        $this->em->persist($OrderDetail);
        return $OrderDetail;
    }