Opencart + TecDoc

Статус
В этой теме нельзя размещать новые ответы.
Вопрос, кто нибудь использует в модуле вебсервис armtek.ru?
 
Вопрос, кто нибудь использует в модуле вебсервис armtek.ru?
тысяча извинений, перепутал с армтеком. но может кому-нибудь пригодится.
__
#EMEX
Код:
<?if(!defined("TDM_PROLOG_INCLUDED") || TDM_PROLOG_INCLUDED!==true)die();
/*
Documentation:
http://wsdoc.emex.ru/

Result array sample:
Array(
    [0] => stdClass Object(
        [GroupId] => -885
        [PriceGroup] => ReplacementNonOriginal
        [MakeLogo] => TE
        [MakeName] => TRW
        [DetailNum] => GDB976
        [DetailNameRus] => Комплект тормозных колодок, дисковый тормоз
        [PriceLogo] => MSNS
        [DestinationLogo] => AFL
        [PriceCountry] => Москва
        [LotQuantity] => 1
        [Quantity] => 1
        [DDPercent] => 96.0
        [ADDays] => 2
        [DeliverTimeGuaranteed] => 5
        [ResultPrice] => 1657.9500
    )
    ...
*/
//echo '<pre>'; print_r($arWsParts); echo '</pre>';
//echo '<pre>'; print_r($arWS); echo '</pre>';

if(extension_loaded('soap')){
    $arARTs=Array();
    $SClient = new SoapClient("http://ws.emex.ru/EmExService.asmx?WSDL",array("trace"=>1,"exception" => 0));
    foreach($arWsParts as $arPart){
        if(!in_array($arPart['ARTICLE'],$arARTs)){
            try{
                $arWSParams = array(
                    'login' => $arWS['LOGIN'],
                    'password' => $arWS['PASSW'],
                    'detailNum' => $arPart['ARTICLE'],
                    'substLevel' => 'All',                         //фильтр по заменам: OriginalOnly - без замен и аналогов; All - с заменами и аналогами
                    'substFilter' => 'FilterOriginalAndAnalogs',                     //фильтр по типу деталей: None - не фильтровать; FilterOriginalAndReplacements - только искомый номер, новый номер и замены искомого номера; FilterOriginalAndAnalogs - только искомый номер и аналоги.
                    'deliveryRegionType' => 'PRI'                //тип доставки (по умолчанию надо указывать PRI)
                );
                $rsCRes = $SClient->FindDetailAdv3($arWSParams);
            }catch(Exception $e){
                $ERROR = $e->getMessage(); break;
            }
            $arCRes = $rsCRes->FindDetailAdv3Result->Details->SoapDetailItem;
        }else{$arCRes=$arCacheData[$arPart['ARTICLE']];}
        //echo '<pre>'; print_r($arCRes); echo '</pre>';
        if(is_array($arCRes) AND count($arCRes)>0){
            if(!in_array($arPart['ARTICLE'],$arARTs)){
                $arARTs[]=$arPart['ARTICLE'];
                $arCacheData[$arPart['ARTICLE']]=$arCRes;
            }
            foreach($arCRes as $obRes){
                $BRAND = (string)$obRes->MakeName;
                $BRAND = TDMSingleKey($BRAND,true);
                    $arPrice = TDMPriceArray($arPart);
                    //Webservice data
                    $arPrice["ARTICLE"] = (string)$obRes->DetailNum;
                    $arPrice["ALT_NAME"] = (string)$obRes->DetailNameRus;
                    $arPrice["BRAND"] = $BRAND;
                    $arPrice["PRICE"] = (string)$obRes->ResultPrice;
                    $arPrice["PRICE"] = round($arPrice["PRICE"],2);
                    $arPrice["CURRENCY"] = $arWS['CURRENCY'];
                    $arPrice["AVAILABLE"] = (string)$obRes->Quantity;
                    $arPrice["STOCK"] = (string)$obRes->PriceCountry.' / '.(string)$obRes->PriceLogo.'';
                    $arPrice["DAY"] = (string)$obRes->ADDays;
                    //Price options
                    $arOps = Array();
                    $MINIMUM = (string)$obRes->LotQuantity;
                    if($MINIMUM>1){$arOps['MINIMUM']=$MINIMUM;}
                    $PERCENTGIVE = (string)$obRes->DDPercent;
                    if($PERCENTGIVE>0){$arOps['PERCENTGIVE']=$PERCENTGIVE;}
                    $arPrice["OPTIONS"] = TDMOptionsImplode($arOps,$arPrice);
                    $arPrices[] = $arPrice;
                //}
            }
        }
    }
}else{$ERROR = 'Warning! PHP extension SOAP is not loaded';}
?>
 
Последнее редактирование:
Нет товарищ izdevalkin, интересует вебсервис armtek.ru
 
Может кто сталкивался с такой проблемой ? есть ли решения ? seo pro отключаешь работает нормально,
index.php?route=common/tecdoc_module&com=manufacturers&last=
делал запрос , тоже не помогло
INSERT INTO oc_url_alias (query, keyword) VALUES ('common/tecdoc_module', 'autoparts');

ocstore 2.1
 
Последнее редактирование:
Интересует веб сервис поставщика armtek.ru для модуля, может кто работает с таким?
 
подскажите как исправить кодировку на текдок 3. и может ли кто то поделится более свежей версией модуля?
Для просмотра ссылки Войди или Зарегистрируйся

я установил ионкуб! если бы не установил ты не выбило бы ошибку 500
удалил и переименовал потому, что где_php это уже расшифрованный файл
установлена! даже в настройках стоит опенкарт
модуль скачал в просторах интернета
заливай через filezilla файлы и ставь режим передачи Двоичный и все заработает. нет случайно ссылки текдок 3.0.15
 
Последнее редактирование модератором:
Интересует веб сервис поставщика armtek.ru для модуля, может кто работает с таким?

создать файл armtek.php в tdmcore\webservices.
плюсом у тебя есть документация по запросам Для просмотра ссылки Войди или Зарегистрируйся
сам пример и примеры других поставщиков.
ты вот так пробовал?
Код:
<?if(!defined("TDM_PROLOG_INCLUDED") || TDM_PROLOG_INCLUDED!==true)die();


if(extension_loaded('soap')){
    $arARTs=Array();
    $SClient = new SoapClient("http://ws.armtek.ru/api/ws_search/search?WSDL",array("trace"=>1,"exception" => 0));
    foreach($arWsParts as $arPart){
        if(!in_array($arPart['ARTICLE'],$arARTs)){
            try{
                $arWSParams = array(
                    'login' => $arWS['LOGIN'],
                    'password' => $arWS['PASSW'],
                    'detailNum' => $arPart['ARTICLE'],
                    'substLevel' => 'All',                         //фильтр по заменам: OriginalOnly - без замен и аналогов; All - с заменами и аналогами
                    'substFilter' => 'FilterOriginalAndAnalogs',                     //фильтр по типу деталей: None - не фильтровать; FilterOriginalAndReplacements - только искомый номер, новый номер и замены искомого номера; FilterOriginalAndAnalogs - только искомый номер и аналоги.
                    'deliveryRegionType' => 'PRI'                //тип доставки (по умолчанию надо указывать PRI)
                );
                $rsCRes = $SClient->FindDetailAdv3($arWSParams);
            }catch(Exception $e){
                $ERROR = $e->getMessage(); break;
            }
            $arCRes = $rsCRes->FindDetailAdv3Result->Details->SoapDetailItem;
        }else{$arCRes=$arCacheData[$arPart['ARTICLE']];}
        //echo '<pre>'; print_r($arCRes); echo '</pre>';
        if(is_array($arCRes) AND count($arCRes)>0){
            if(!in_array($arPart['ARTICLE'],$arARTs)){
                $arARTs[]=$arPart['ARTICLE'];
                $arCacheData[$arPart['ARTICLE']]=$arCRes;
            }
            foreach($arCRes as $obRes){
                $BRAND = (string)$obRes->MakeName;
                $BRAND = TDMSingleKey($BRAND,true);
                    $arPrice = TDMPriceArray($arPart);
                    //Webservice data
                    $arPrice["ARTICLE"] = (string)$obRes->DetailNum;
                    $arPrice["ALT_NAME"] = (string)$obRes->DetailNameRus;
                    $arPrice["BRAND"] = $BRAND;
                    $arPrice["PRICE"] = (string)$obRes->ResultPrice;
                    $arPrice["PRICE"] = round($arPrice["PRICE"],2);
                    $arPrice["CURRENCY"] = $arWS['CURRENCY'];
                    $arPrice["AVAILABLE"] = (string)$obRes->Quantity;
                    $arPrice["STOCK"] = (string)$obRes->PriceCountry.' / '.(string)$obRes->PriceLogo.'';
                    $arPrice["DAY"] = (string)$obRes->ADDays;
                    //Price options
                    $arOps = Array();
                    $MINIMUM = (string)$obRes->LotQuantity;
                    if($MINIMUM>1){$arOps['MINIMUM']=$MINIMUM;}
                    $PERCENTGIVE = (string)$obRes->DDPercent;
                    if($PERCENTGIVE>0){$arOps['PERCENTGIVE']=$PERCENTGIVE;}
                    $arPrice["OPTIONS"] = TDMOptionsImplode($arOps,$arPrice);
                    $arPrices[] = $arPrice;
                //}
            }
        }
    }
}else{$ERROR = 'Warning! PHP extension SOAP is not loaded';}
?>

проверять через debug в mysql.
включить debug в конфиге
Код:
general-log=1
 
проверял, не работает
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху