categoryCollection = $categoryCollection; $this->systemConfig = $systemConfig; $this->fbeHelper = $fbeHelper; } /** * Execute function for Category Sync * * @return void */ public function execute() { $traceId = $this->fbeHelper->genUniqueTraceID(); $flowName = 'daily_categories_sync'; foreach ($this->systemConfig->getAllFBEInstalledStores() as $store) { $storeId = $store->getId(); try { if ($this->systemConfig->isCatalogSyncEnabled($storeId)) { $this->categoryCollection->pushAllCategoriesToFbCollections((int)$storeId, $flowName, $traceId); } } catch (\Throwable $e) { $this->fbeHelper->logExceptionImmediatelyToMeta( $e, [ 'store_id' => $storeId, 'event' => 'category_sync', 'event_type' => 'category_sync_cron', 'flow_name' => $flowName, 'flow_step' => 'daily_categories_sync_error', 'catalog_id' => $this->systemConfig->getCatalogId($storeId), [ 'external_trace_id' => $traceId ] ] ); } } } }