<?php
namespace Customize\Controller;
use Eccube\Controller\AbstractController;
use Eccube\Entity\BaseInfo;
use Eccube\Entity\Master\ProductStatus;
use Eccube\Entity\Product;
use Eccube\Event\EccubeEvents;
use Eccube\Event\EventArgs;
use Eccube\Form\Type\AddCartType;
use Eccube\Form\Type\Master\ProductListMaxType;
use Eccube\Form\Type\Master\ProductListOrderByType;
use Eccube\Form\Type\SearchProductType;
use Eccube\Repository\BaseInfoRepository;
use Eccube\Repository\CustomerFavoriteProductRepository;
use Eccube\Repository\Master\ProductListMaxRepository;
use Eccube\Repository\ProductRepository;
use Eccube\Service\CartService;
use Eccube\Service\PurchaseFlow\PurchaseContext;
use Eccube\Service\PurchaseFlow\PurchaseFlow;
use Knp\Bundle\PaginatorBundle\Pagination\SlidingPagination;
use Knp\Component\Pager\Paginator;
use Sensio\Bundle\FrameworkExtraBundle\Configuration\ParamConverter;
use Sensio\Bundle\FrameworkExtraBundle\Configuration\Template;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
use Symfony\Component\Routing\Annotation\Route;
use Symfony\Component\Routing\Generator\UrlGeneratorInterface;
use Symfony\Component\Security\Http\Authentication\AuthenticationUtils;
use Symfony\Component\DependencyInjection\ParameterBag\ParameterBagInterface;
class AnerosPageController extends AbstractController
{
/**
* @var PurchaseFlow
*/
protected $purchaseFlow;
/**
* @var CustomerFavoriteProductRepository
*/
protected $customerFavoriteProductRepository;
/**
* @var CartService
*/
protected $cartService;
/**
* @var ProductRepository
*/
protected $productRepository;
/**
* @var BaseInfo
*/
protected $BaseInfo;
/**
* @var AuthenticationUtils
*/
protected $helper;
/**
* @var ProductListMaxRepository
*/
protected $productListMaxRepository;
private $title = '';
/**
* ProductController constructor.
*
* @param PurchaseFlow $cartPurchaseFlow
* @param CustomerFavoriteProductRepository $customerFavoriteProductRepository
* @param CartService $cartService
* @param ProductRepository $productRepository
* @param BaseInfoRepository $baseInfoRepository
* @param AuthenticationUtils $helper
* @param ProductListMaxRepository $productListMaxRepository
*/
public function __construct(
PurchaseFlow $cartPurchaseFlow,
CustomerFavoriteProductRepository $customerFavoriteProductRepository,
CartService $cartService,
ProductRepository $productRepository,
BaseInfoRepository $baseInfoRepository,
AuthenticationUtils $helper,
ProductListMaxRepository $productListMaxRepository,
ParameterBagInterface $params
) {
$this->purchaseFlow = $cartPurchaseFlow;
$this->customerFavoriteProductRepository = $customerFavoriteProductRepository;
$this->cartService = $cartService;
$this->productRepository = $productRepository;
$this->BaseInfo = $baseInfoRepository->get();
$this->helper = $helper;
$this->productListMaxRepository = $productListMaxRepository;
$this->params = $params;
}
/**
* 商品詳細画面.
*
* @Route("/sample", name="sample", methods={"GET"})
* @Template("Category/prostate-massagers.twig")
*
* @param Request $request
*
* @return array
*/
public function detail(Request $request)
{
$Product = $this->productRepository->findWithSortedClassCategories(43);
if (!$this->checkVisibility($Product)) {
throw new NotFoundHttpException();
}
$builder = $this->formFactory->createNamedBuilder(
'',
AddCartType::class,
null,
[
'product' => $Product,
'id_add_product_id' => false,
]
);
$event = new EventArgs(
[
'builder' => $builder,
'Product' => $Product,
],
$request
);
$this->eventDispatcher->dispatch(EccubeEvents::FRONT_PRODUCT_DETAIL_INITIALIZE, $event);
$is_favorite = false;
if ($this->isGranted('ROLE_USER')) {
$Customer = $this->getUser();
$is_favorite = $this->customerFavoriteProductRepository->isFavorite($Customer, $Product);
}
return [
'title' => $this->title,
'subtitle' => $Product->getName(),
'form' => $builder->getForm()->createView(),
'Product' => $Product,
'is_favorite' => $is_favorite,
];
}
/**
* @Route("/forcelogin", name="forcelogin")
*/
public function redirectToCartAndForceLogin()
{
$params = array('utm_source' => 'dc-mail', 'utm_medium' => 'email', 'utm_campaign' => 'dc-1', 'utm_content' => 'cart-check');
if ($this->isGranted('ROLE_USER')) {
// すでにログインしているときはカートページにリダイレクト
return $this->redirectToRoute('cart', $params);
} else {
// ログインされていないときは、ログイン後にカートへリダイレクト
$this->setLoginTargetPath($this->generateUrl('cart', [], UrlGeneratorInterface::ABSOLUTE_URL));
return $this->redirectToRoute('mypage_login', $params);
}
}
/**
* @Route("/forcelogin-2", name="forcelogin-2")
*/
public function redirectToCartAndForceLogin2()
{
$params = array('utm_source' => 'dc-mail', 'utm_medium' => 'email', 'utm_campaign' => 'dc-1', 'utm_content' => 'cart-check-end');
if ($this->isGranted('ROLE_USER')) {
// すでにログインしているときはカートページにリダイレクト
return $this->redirectToRoute('cart', $params);
} else {
// ログインされていないときは、ログイン後にカートへリダイレクト
$this->setLoginTargetPath($this->generateUrl('cart', [], UrlGeneratorInterface::ABSOLUTE_URL));
return $this->redirectToRoute('mypage_login', $params);
}
}
/**
* 前立腺マッサージ器.
*
* @Route("/prostate-massagers", name="prostate-massagers", methods={"GET"})
* @Template("Category/prostate-massagers.twig")
*
* @param Request $request
*
* @return array
*/
public function prostateMassagers(Request $request)
{
return [];
}
/**
* アネロスアクセサリー.
*
* @Route("/accessories", name="accessories", methods={"GET"})
* @Template("Category/accessories.twig")
*
* @param Request $request
*
* @return array
*/
public function accessories(Request $request)
{
return [];
}
/**
* 男性用商品.
*
* @Route("/sex-toys-for-men", name="sex-toys-for-men", methods={"GET"})
* @Template("Category/sex-toys-for-men.twig")
*
* @param Request $request
*
* @return array
*/
public function sextoysformen(Request $request)
{
return [];
}
/**
* 女性用商品.
*
* @Route("/sex-toys-for-women", name="sex-toys-for-women", methods={"GET"})
* @Template("Category/sex-toys-for-women.twig")
*
* @param Request $request
*
* @return array
*/
public function sextoysforwomen(Request $request)
{
return [];
}
/**
* カップル用商品.
*
* @Route("/sex-toys-for-couples", name="sex-toys-for-couples", methods={"GET"})
* @Template("Category/sex-toys-for-couples.twig")
*
* @param Request $request
*
* @return array
*/
public function sextoysforcouples(Request $request)
{
return [];
}
/**
* ローション.
*
* @Route("/lubricants", name="lubricants", methods={"GET"})
* @Template("Category/lubricants.twig")
*
* @param Request $request
*
* @return array
*/
public function lubricants(Request $request)
{
return [];
}
/**
* マスターベーション.
*
* @Route("/masturbators", name="masturbators", methods={"GET"})
* @Template("Category/masturbators.twig")
*
* @param Request $request
*
* @return array
*/
public function masturbators(Request $request)
{
return [];
}
/**
* お買い得セット.
*
* @Route("/special-offers", name="special-offers", methods={"GET"})
* @Template("Category/special-offers.twig")
*
* @param Request $request
*
* @return array
*/
public function specialoffers(Request $request)
{
return [];
}
/**
* アネロス トライデント シリーズ.
*
* @Route("/trident-series", name="trident-series", methods={"GET"})
* @Template("Category/trident-series.twig")
*
* @param Request $request
*
* @return array
*/
public function tridentseries(Request $request)
{
return [];
}
/**
* プロガスムシリーズ.
*
* @Route("/progasm-products", name="progasm-products", methods={"GET"})
* @Template("Category/progasm-products.twig")
*
* @param Request $request
*
* @return array
*/
public function progasmproducts(Request $request)
{
return [];
}
/**
* セッションズ.
*
* @Route("/sessions", name="sessions", methods={"GET"})
* @Template("Category/sessions.twig")
*
* @param Request $request
*
* @return array
*/
public function sessions(Request $request)
{
return [];
}
/**
* アネロス講座.
*
* @Route("/learning-center", name="learning-center", methods={"GET"})
* @Template("learning-center/index.twig")
*
* @param Request $request
*
* @return array
*/
public function learningcenter(Request $request)
{
return [];
}
/**
* アネロス講座-メンズ(複数URL).
*
* @Route("/learning-center/men/{rt}", name="learning-center-men", methods={"GET"})
* @Template("learning-center/men/index.twig")
*
* @param Request $request
*
* @return array
*/
public function learningcentermen(Request $request, $rt)
{
//$tmpl_path = $this->container->getParameter('eccube_theme_front_dir');
$tmpl_path = $this->params->get('eccube_theme_front_dir');
$r = file_exists($tmpl_path.'/learning-center/men/'.$rt.'.twig');
if($r){
$builder = $this->formFactory->createBuilder();
$form = $builder->getForm();
$form->handleRequest($request);
return $this->render('learning-center/men/'.$rt.'.twig', [
'form' => $form->createView(),
]);
}
return $this->redirectToRoute('error404');
// throw new NotFoundHttpException();
}
/**
* アネロス講座-レディース.
*
* @Route("/learning-center/women/pelvic-floor-training", name="learning-center-women", methods={"GET"})
* @Template("learning-center/women/pelvic-floor-training.twig")
*
* @param Request $request
*
* @return array
*/
public function learningcenterwomen(Request $request)
{
return [];
}
/**
* アネロス講座-ユニセックス.
*
* @Route("/learning-center/unisex/unisex-anal-stimulation", name="learning-center-unisex", methods={"GET"})
* @Template("learning-center/unisex/unisex-anal-stimulation.twig")
*
* @param Request $request
*
* @return array
*/
public function learningcenterunisex(Request $request)
{
return [];
}
/**
* ドクターズボイス.
*
* @Route("/dr-voice", name="dr-voice", methods={"GET"})
* @Template("other/dr-voice.twig")
*
* @param Request $request
*
* @return array
*/
public function drvoice(Request $request)
{
return [];
}
/**
* ご挨拶.
*
* @Route("/greeting", name="greeting", methods={"GET"})
* @Template("other/greeting.twig")
*
* @param Request $request
*
* @return array
*/
public function greeting(Request $request)
{
return [];
}
/**
* 会社概要.
*
* @Route("/company", name="company", methods={"GET"})
* @Template("other/company.twig")
*
* @param Request $request
*
* @return array
*/
public function company(Request $request)
{
return [];
}
/**
* 特許.
*
* @Route("/patent", name="patent", methods={"GET"})
* @Template("other/patent.twig")
*
* @param Request $request
*
* @return array
*/
public function patent(Request $request)
{
return [];
}
/**
* 免責事項.
*
* @Route("/disclaimer", name="disclaimer", methods={"GET"})
* @Template("other/disclaimer.twig")
*
* @param Request $request
*
* @return array
*/
public function disclaimer(Request $request)
{
return [];
}
/**
* プライバシーポリシー.
*
* @Route("/privacy", name="privacy", methods={"GET"})
* @Template("other/privacy.twig")
*
* @param Request $request
*
* @return array
*/
public function privacy(Request $request)
{
return [];
}
/**
* ご利用条件.
*
* @Route("/terms", name="terms", methods={"GET"})
* @Template("other/terms.twig")
*
* @param Request $request
*
* @return array
*/
public function terms(Request $request)
{
return [];
}
/**
* 返金保証.
*
* @Route("/refund-policy", name="refund-policy", methods={"GET"})
* @Template("other/refund-policy.twig")
*
* @param Request $request
*
* @return array
*/
public function refundpolicy(Request $request)
{
return [];
}
/**
* 保証.
*
* @Route("/warranty-policy", name="warranty-policy", methods={"GET"})
* @Template("other/warranty-policy.twig")
*
* @param Request $request
*
* @return array
*/
public function warrantypolicy(Request $request)
{
return [];
}
/**
* お支払方法.
*
* @Route("/payment", name="payment", methods={"GET"})
* @Template("other/payment.twig")
*
* @param Request $request
*
* @return array
*/
public function payment(Request $request)
{
return [];
}
/**
* 発送方法・配達状況.
*
* @Route("/shipping", name="shipping", methods={"GET"})
* @Template("other/shipping.twig")
*
* @param Request $request
*
* @return array
*/
public function shipping(Request $request)
{
return [];
}
/**
* よくある質問.
*
* @Route("/faqs", name="faqs", methods={"GET"})
* @Template("other/faqs.twig")
*
* @param Request $request
*
* @return array
*/
public function faqs(Request $request)
{
return [];
}
/**
* アネロス 購入ガイド.
*
* @Route("/buyers-guide", name="buyers-guide", methods={"GET"})
* @Template("other/buyers-guide.twig")
*
* @param Request $request
*
* @return array
*/
public function buyersguide(Request $request)
{
return [];
}
/**
* 【アネロス】取扱店.
*
* @Route("/shop-list", name="shop-list", methods={"GET"})
* @Template("other/shop-list.twig")
*
* @param Request $request
*
* @return array
*/
public function shoplist(Request $request)
{
return [];
}
/**
* 404.
*
* @Route("/404", name="error404", methods={"GET"})
* @Template("other/error404.twig")
*
* @param Request $request
*
* @return array
*/
public function error404(Request $request)
{
return [];
}
/**
* 【アネロス】取扱店.
*
* @Route("/aneros-members", name="aneros-members", methods={"GET"})
* @Template("other/aneros-members.twig")
*
* @param Request $request
*
* @return array
*/
public function anerosmembers(Request $request)
{
return [];
}
/**
* 通知メール購読解除完了.
*
* @Route("/remind-unsubscribe", name="remind-unsubscribe", methods={"GET"})
* @Template("other/remind-unsubscribe.twig")
*
* @param Request $request
*
* @return array
*/
public function remindunsubscribe(Request $request)
{
return [];
}
/**
* ANEROSタイムセール2024
*
* @Route("/timesale2024", name="timesale2024", methods={"GET"})
* @Template("Category/timesale2024.twig")
*
* @param Request $request
*
* @return array
*/
public function timesale2024(Request $request)
{
return [];
}
/**
* ANEROSクリスマスセール2024
*
* @Route("/2024-xmas-sale", name="2024-xmas-sale", methods={"GET"})
* @Template("Category/2024-xmas-sale.twig")
*
* @param Request $request
*
* @return array
*/
public function xmassale2024(Request $request)
{
return [];
}
/**
* アネロスバレンタインセール2025
*
* @Route("/2025-vday-sale", name="2025-vday-sale", methods={"GET"})
* @Template("Category/2025-vday-sale.twig")
*
* @param Request $request
*
* @return array
*/
public function vdaysale2025(Request $request)
{
return [];
}
/**
* ANEROSステップアップセール2025
*
* @Route("/2025-gw-sale", name="2025-gw-sale", methods={"GET"})
* @Template("Category/2025-gw-sale.twig")
*
* @param Request $request
*
* @return array
*/
public function gwsale2025(Request $request)
{
return [];
}
/**
* ANEROS SUMMER SALE 2025
*
* @Route("/2025-summer-sale", name="2025-summer-sale", methods={"GET"})
* @Template("Category/2025-summer-sale.twig")
*
* @param Request $request
*
* @return array
*/
public function summersale2025(Request $request)
{
return [];
}
/**
* アネロスタイムセール2025
*
* @Route("/2025-time-sale", name="2025-time-sale", methods={"GET"})
* @Template("Category/2025-time-sale.twig")
*
* @param Request $request
*
* @return array
*/
public function timesale2025(Request $request)
{
return [];
}
/**
* アネロスブラックフライデー2025
*
* @Route("/2025-black-friday-sale", name="2025-black-friday-sale", methods={"GET"})
* @Template("Category/2025-black-friday-sale.twig")
*
* @param Request $request
*
* @return array
*/
public function bf2025(Request $request)
{
return [];
}
/**
* アネロスクリスマスセール2025
*
* @Route("/2025-xmas-sale", name="2025-xmas-sale", methods={"GET"})
* @Template("Category/2025-xmas-sale.twig")
*
* @param Request $request
*
* @return array
*/
public function xmas2025(Request $request)
{
return [];
}
/**
* 前立腺健康LP
*
* @Route("/lp/prostate-care", name="prostate-care", methods={"GET"})
* @Template("lp/prostate-care.twig")
*
* @param Request $request
*
* @return array
*/
public function prostatecare(Request $request)
{
return [];
}
/**
* @Route("/{rt}", name="aneros_product", requirements={"rt": "^(?=([0-9a-zA-Z_\-]+\/?)+(?<!\/))(?!logout|products/add_cart|plugin|product_review|review|auth0|cart/clear|%eccube_admin_route%|install|mypage|token|api|api/oauth|shopping|gmo_payment_gateway|paidy|paidy_confirm|paidy_back|paidy_complete|paidy_cancel|introduce_friend|auth0|block|StripePaymentGateway|AmazonPayV2_42|AmazonPayV2_42/Resource/key|amazon_checkout_review|amazon_instant_payment_notifications|cart_force_login|plg_AmazonPaymentsV2_ipn_receiver.php|mail_magazine).*$"})
*/
public function AnerosPageRouteMethod($rt)
{
switch ($rt) {
case 'tenga-egg':
return $this->redirectToRoute('product_detail', array('id' => 35));
break;
case 'tenga-soft-tube-cup':
return $this->redirectToRoute('product_detail', array('id' => 34));
break;
case 'tenga-deep-throat':
return $this->redirectToRoute('product_detail', array('id' => 33));
break;
case 'peridise-complete-set':
return $this->redirectToRoute('product_detail', array('id' => 51));
break;
case 'peridise':
return $this->redirectToRoute('product_detail', array('id' => 50));
break;
case 'tempo':
return $this->redirectToRoute('product_detail', array('id' => 45));
break;
case 'syn-couples-set':
return $this->redirectToRoute('product_detail', array('id' => 52));
break;
case 'muze':
return $this->redirectToRoute('product_detail', array('id' => 47));
break;
case 'evi-starter-set':
return $this->redirectToRoute('product_detail', array('id' => 49));
break;
case 'evi':
return $this->redirectToRoute('product_detail', array('id' => 5));
break;
case 'luna-beads':
return $this->redirectToRoute('product_detail', array('id' => 32));
break;
case 'jo-lotion-135ml':
return $this->redirectToRoute('product_detail', array('id' => 28));
break;
case 'jo-lotion-75ml':
return $this->redirectToRoute('product_detail', array('id' => 27));
break;
case 'lotion-applicator':
return $this->redirectToRoute('product_detail', array('id' => 26));
break;
case 'id-moments-130ml':
return $this->redirectToRoute('product_detail', array('id' => 25));
break;
case 'id-lotion-250ml':
return $this->redirectToRoute('product_detail', array('id' => 24));
break;
case 'id-lotion-130ml':
return $this->redirectToRoute('product_detail', array('id' => 22));
break;
case 'id-lotion-60ml':
return $this->redirectToRoute('product_detail', array('id' => 21));
break;
case 'id-lotion-30ml':
return $this->redirectToRoute('product_detail', array('id' => 20));
break;
case 'sessions-255ml':
return $this->redirectToRoute('product_detail', array('id' => 19));
break;
case 'sessions-125ml':
return $this->redirectToRoute('product_detail', array('id' => 17));
break;
case 'sessions-3-set':
return $this->redirectToRoute('product_detail', array('id' => 15));
break;
case 'marksman':
return $this->redirectToRoute('product_detail', array('id' => 14));
break;
case 'aneros-marksman-6pk':
return $this->redirectToRoute('product_detail', array('id' => 14));
break;
case 'syn-select-set':
return $this->redirectToRoute('product_detail', array('id' => 48));
break;
case 'syn-lotion-set':
return $this->redirectToRoute('product_detail', array('id' => 31));
break;
case 'syn-starter-set':
return $this->redirectToRoute('product_detail', array('id' => 63));
break;
case 'starter-set':
return $this->redirectToRoute('product_detail', array('id' => 29));
break;
case 'okamoto-003':
return $this->redirectToRoute('product_detail', array('id' => 13));
break;
case 'mini-syringe':
return $this->redirectToRoute('product_detail', array('id' => 12));
break;
case 'aneros-official-t-shirt':
return $this->redirectToRoute('product_detail', array('id' => 11));
break;
case 'antibacterial-cleaner':
return $this->redirectToRoute('product_detail', array('id' => 10));
break;
case 'higginson-syringe':
return $this->redirectToRoute('product_detail', array('id' => 9));
break;
case 'aneros-gift-bag':
return $this->redirectToRoute('product_detail', array('id' => 8));
break;
case 'device':
return $this->redirectToRoute('product_detail', array('id' => 23));
break;
case 'vice':
return $this->redirectToRoute('product_detail', array('id' => 4));
break;
case 'sgx-classic':
return $this->redirectToRoute('product_detail', array('id' => 39));
break;
case 'progasm-jr':
return $this->redirectToRoute('product_detail', array('id' => 43));
break;
case 'progasm-classic':
return $this->redirectToRoute('product_detail', array('id' => 42));
break;
case 'progasm-ice':
return $this->redirectToRoute('product_detail', array('id' => 41));
break;
case 'progasm-black-ice':
return $this->redirectToRoute('product_detail', array('id' => 40));
break;
case 'mgx-classic':
return $this->redirectToRoute('product_detail', array('id' => 39));
break;
case 'maximus-classic':
return $this->redirectToRoute('product_detail', array('id' => 38));
break;
case 'helix-syn':
return $this->redirectToRoute('product_detail', array('id' => 3));
break;
case 'helix-classic':
return $this->redirectToRoute('product_detail', array('id' => 37));
break;
case 'eupho-syn':
return $this->redirectToRoute('product_detail', array('id' => 36));
break;
case 'eupho-classic':
return $this->redirectToRoute('product_detail', array('id' => 18));
break;
case 'progasm-red-ice':
return $this->redirectToRoute('product_detail', array('id' => 54));
break;
case 'progasm-red':
return $this->redirectToRoute('product_detail', array('id' => 53));
break;
case 'aneros-wipes':
return $this->redirectToRoute('product_detail', array('id' => 59));
break;
case 'pouch':
return $this->redirectToRoute('product_detail', array('id' => 60));
break;
case 'sessions-wipes-set':
return $this->redirectToRoute('product_detail', array('id' => 64));
break;
case 'helix-trident':
return $this->redirectToRoute('product_detail', array('id' => 66));
break;
case 'maximus-trident':
return $this->redirectToRoute('product_detail', array('id' => 67));
break;
case 'eupho-trident':
return $this->redirectToRoute('product_detail', array('id' => 68));
break;
case 'mgx-trident':
return $this->redirectToRoute('product_detail', array('id' => 69));
break;
case 'helix-syn-trident':
return $this->redirectToRoute('product_detail', array('id' => 70));
break;
case 'vivi':
return $this->redirectToRoute('product_detail', array('id' => 71));
break;
case 'vice-2':
return $this->redirectToRoute('product_detail', array('id' => 72));
break;
case 'mgx-syn-trident':
return $this->redirectToRoute('product_detail', array('id' => 73));
break;
case 'eupho-syn-trident':
return $this->redirectToRoute('product_detail', array('id' => 74));
break;
}
return $this->redirectToRoute('error404');
// throw new NotFoundHttpException();
}
/**
* ページタイトルの設定
*
* @param null|array $searchData
*
* @return str
*/
protected function getPageTitle($searchData)
{
if (isset($searchData['name']) && !empty($searchData['name'])) {
return trans('front.product.search_result');
} elseif (isset($searchData['category_id']) && $searchData['category_id']) {
return $searchData['category_id']->getName();
} else {
return trans('front.product.all_products');
}
}
/**
* 閲覧可能な商品かどうかを判定
*
* @param Product $Product
*
* @return boolean 閲覧可能な場合はtrue
*/
protected function checkVisibility(Product $Product)
{
$is_admin = $this->session->has('_security_admin');
// 管理ユーザの場合はステータスやオプションにかかわらず閲覧可能.
if (!$is_admin) {
// 在庫なし商品の非表示オプションが有効な場合.
// if ($this->BaseInfo->isOptionNostockHidden()) {
// if (!$Product->getStockFind()) {
// return false;
// }
// }
// 公開ステータスでない商品は表示しない.
if ($Product->getStatus()->getId() !== ProductStatus::DISPLAY_SHOW) {
return false;
}
}
return true;
}
}