private static function createCategories($category, $parentId = null) { if (!$category->is_active) { return; } try { $categoryEssence = MagentoConnector::$ws->catalogCategoryInfo(MagentoConnector::getActiveSession(), $category->category_id, null, null); } catch (SoapFault $e) { Logger::alert('Erro ao recuperar informacao da categoria.', $e, MagentoConnector::$ws->__getLastRequest()); } $categoryData = new Category($categoryEssence, $parentId); //If category exists, update instead of creating a new one. // if($currentCategory = self::existsByName($categoryData)) // $categoryData->Id = $currentCategory->CategoryGetByNameResult->Id; if (self::$categoryCounter) { $categoryData->Id = 1; self::$categoryCounter = 0; } try { $result = VtexConnector::$ws->CategoryInsertUpdate($categoryData->toVtex()); Logger::info("Categoria criada/atualizada: " . $result->CategoryInsertUpdateResult->Id . " - " . $result->CategoryInsertUpdateResult->Name); } catch (SoapFault $e) { Logger::alert('Erro ao inserir/atualizar categoria.', $e, VtexConnector::$ws->__getLastRequest()); } if (count($category->children) > 0) { foreach ($category->children as $subCategory) { self::createCategories($subCategory, $result->CategoryInsertUpdateResult->Id); } } }
public static function connect() { try { MagentoConnector::$ws = new SoapClient('http://' . StoreConfigManager::getUrl() . '/api/v2_soap/?wsdl', array('trace' => 1, 'exception' => 0)); } catch (SoapFault $e) { Logger::error('Falha ao recuperar WSDL do Webservice.', $e, null); } try { MagentoConnector::$sessions[StoreConfigManager::getName()] = MagentoConnector::$ws->login(StoreConfigManager::getMagentoUser(), StoreConfigManager::getMagentoPass()); } catch (SoapFault $e) { Logger::error('Falha ao autenticar no Webservice.', $e, MagentoConnector::$ws->__getLastRequest()); } }
private static function getProductStock($productId) { try { $productStock = MagentoConnector::$ws->catalogInventoryStockItemList(MagentoConnector::getActiveSession(), array($productId)); return $productStock[0]->qty; } catch (Exception $e) { Logger::alert('Falha ao recuperar estoque de produto.', $e, MagentoConnector::$ws->__getLastRequest()); } }
public static function setCurrentCustomer($customer) { self::$currentCustomer = $customer; MagentoConnector::connect(); VtexConnector::connect(); }