本文整理汇总了PHP中EntityRepository::findByReference方法的典型用法代码示例。如果您正苦于以下问题:PHP EntityRepository::findByReference方法的具体用法?PHP EntityRepository::findByReference怎么用?PHP EntityRepository::findByReference使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类EntityRepository
的用法示例。
在下文中一共展示了EntityRepository::findByReference方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: updateProductExport
/**
* Update product export date for the given product
* @param string $identifier
* @param JobInstance $jobInstance
*/
public function updateProductExport($identifier, JobInstance $jobInstance)
{
$now = new \DateTime('now', new \DateTimeZone('UTC'));
$product = $this->productRepository->findByReference((string) $identifier);
if (class_exists('\\PimEnterprise\\Bundle\\WorkflowBundle\\Model\\PublishedProduct')) {
if ($product instanceof \PimEnterprise\Bundle\WorkflowBundle\Model\PublishedProduct) {
/**@var \PimEnterprise\Bundle\WorkflowBundle\Model\PublishedProduct $product **/
$productId = $product->getOriginalProduct()->getId();
$product = $product->getOriginalProduct();
}
}
if (null != $product) {
$productExport = $this->productExportRepository->findOneBy(array('product' => $product, 'jobInstance' => $jobInstance));
$conn = $this->entityManager->getConnection();
$jobInstance->getId();
$product->getId();
if (null === $productExport) {
$sql = '
INSERT INTO pim_delta_product_export
(product_id, job_instance_id, date)
VALUES (:product_id, :job_instance_id, :date)
';
} else {
$sql = '
UPDATE pim_delta_product_export
SET date = :date
WHERE product_id = :product_id AND job_instance_id = :job_instance_id
';
}
$q = $conn->prepare($sql);
$date = $now->format('Y-m-d H:i:s');
$productId = $product->getId();
$jobInstanceId = $jobInstance->getId();
$q->bindParam(':date', $date, PDO::PARAM_STR);
$q->bindParam(':product_id', $productId, PDO::PARAM_INT);
$q->bindParam(':job_instance_id', $jobInstanceId, PDO::PARAM_INT);
$q->execute();
}
}