<?php
namespace Plugin\HigashiyamaForProduct\Repository;
use Eccube\Doctrine\Query\QueryCustomizer;
use Eccube\Doctrine\Query\WhereClause;
use Eccube\Repository\QueryKey;
use Doctrine\ORM\QueryBuilder;
/**
* 検索機能でショップ用メモを検索できるようにする
*/
class ProductSearchCustomizer implements QueryCustomizer
{
public function customize(QueryBuilder $builder, $params, $queryKey)
{
if ($params['name']) {
// QueryBuilderに対してショップ用メモを検索対象するように設定
$builder->orWhere("p.sub_name_up LIKE :sub_name_up");
$builder->setParameter("sub_name_up", '%' . $params['name'] . '%');
$builder->orWhere("p.sub_name_down LIKE :sub_name_down");
$builder->setParameter("sub_name_down", '%' . $params['name'] . '%');
$builder->orWhere("p.contents LIKE :contents");
$builder->setParameter("contents", '%' . $params['name'] . '%');
$builder->andWhere("p.Status = 1");
}
}
public function getQueryKey(): string
{
return QueryKey::PRODUCT_SEARCH;
}
}