/** * @param int $idProduct * @param \Generated\Shared\Transfer\LocaleTransfer[] $localeCollection * @param bool $searchable * * @return void */ protected function markProductSearchable($idProduct, array $localeCollection, $searchable) { foreach ($localeCollection as $code => $localeTransfer) { $searchableProduct = $this->productSearchQueryContainer->queryByProductAndLocale($idProduct, $localeTransfer->getIdLocale())->findOneOrCreate(); $searchableProduct->setIsSearchable($searchable); $searchableProduct->save(); } }
/** * @param int $idProductAttributesMetadata * * @return void */ protected function cleanProductSearchAttributeMap($idProductAttributesMetadata) { $this->productSearchQueryContainer->queryProductSearchAttributeMapByFkProductAttributesMetadata($idProductAttributesMetadata)->delete(); }
/** * @param \Spryker\Zed\Gui\Communication\Table\TableConfiguration $config * * @return \Orm\Zed\Product\Persistence\SpyProductAttributesMetadata[] */ protected function getProductAttributesMetadata(TableConfiguration $config) { $query = $this->productSearchQueryContainer->querySearchPreferencesTable(); $productAttributesMetadata = $this->runQuery($query, $config, true); return $productAttributesMetadata; }
/** * @param int $idProductAttributesMetadata * * @return array */ public function getData($idProductAttributesMetadata) { $productAttributesMetadataEntity = $this->productSearchQueryContainer->querySearchPreferencesTable()->filterByIdProductAttributesMetadata($idProductAttributesMetadata)->findOne(); return [SearchPreferencesForm::FIELD_ATTRIBUTE_NAME => $productAttributesMetadataEntity->getKey(), SearchPreferencesForm::FIELD_ATTRIBUTE_TYPE => $productAttributesMetadataEntity->getSpyProductAttributeType()->getName(), SearchPreferencesForm::FIELD_FULL_TEXT => $productAttributesMetadataEntity->getVirtualColumn(SearchPreferencesForm::FIELD_FULL_TEXT), SearchPreferencesForm::FIELD_FULL_TEXT_BOOSTED => $productAttributesMetadataEntity->getVirtualColumn(SearchPreferencesForm::FIELD_FULL_TEXT_BOOSTED), SearchPreferencesForm::FIELD_SUGGESTION_TERMS => $productAttributesMetadataEntity->getVirtualColumn(SearchPreferencesForm::FIELD_SUGGESTION_TERMS), SearchPreferencesForm::FIELD_COMPLETION_TERMS => $productAttributesMetadataEntity->getVirtualColumn(SearchPreferencesForm::FIELD_COMPLETION_TERMS)]; }
/** * @return \Orm\Zed\ProductSearch\Persistence\SpyProductSearchAttributeMap[]|\Propel\Runtime\Collection\ObjectCollection */ protected function getRawAttributeMap() { $attributeMap = $this->productSearchQueryContainer->queryProductSearchAttributeMap()->find(); return $attributeMap; }